Notice! This document is currently in
Archived
status.
The content of this document may be incorrect or outdated.
The content of this document may be incorrect or outdated.
Print this article Edit this article
HP-UX 10.x: Interoperability With HP-UX 9.x
- Obsolete Commands, Options and Routines
- New Commands, Options and Routines
- Using Only Common Parts of Standards
- HP-UX 10.x Additions for SVID3
- HP-UX 10.x Additions for POSIX 1003.4.
- HP-UX 10.x Additions for XPG4.
- Obosolete Features
- New Features
- Diskless Programming Differences
- Miscellaneous 9.x/10.x Differences
Obsolete Commands, Options and Routines
The following commands, options, and routines found on HP-UX 9.x were
removed in 10.x. For more details, see the Release Notes for HP-UX 10.0
version B.10.10 and the HP-UX 9.x and 10.x manpages for the listed
functionality.
Obsolete Commands and Options.
Don't use these obsolete HP-UX 9.x commands and options if you want
scripts and programs to work on HP-UX 10.x systems.
Commands obsoleted in HP-UX 10.x include:
bifchgrp(1) bifchmod(1) bifchown(1) bifcp(1)
biffind(1) bifls(1) bifmkdir(1) bifrm(1)
bifrmdir(1) bifdf(1M) biffsck(1M) biffsdb(1M)
bifmkfs(1M) cdb(1) chksnmpd(1) fdb(1)
instlang(1) nlsinfo(1) pdb(1) read_cct
rmchg(1) vueconvert(1X) vuefp2to3(1X)
These command options do not exist on HP-UX 10.x:
sort -l cc -J +Obb +Os +OE +Om1
ioscan -l join -a (without a number)
Obsolete Routines.
Applications designed to be run on both HP-UX 9.x and 10.x systems should
not use library routines which are obsolete on HP-UX 10.x. These
include:
* Internationalization:
* HP proprietary NLS functions and macros:
ICONV langinfo nl_isalnum nl_sprintf
ICONV1 langinit nl_isalpha nl_sscanf
ICONV2 langtoid nl_iscntrl nl_strcmp
_errlocale ld_nl_ctype nl_isdigit nl_strncmp
catgetmsg nl_asctime nl_isgraph nl_strtod
catread nl_ascxtime nl_islower nl_tolower
currlangid nl_atof nl_isprint nl_toupper
fprintmsg nl_catopen nl_ispunct printmsg
getmsg nl_ctime nl_isspace sprintmsg
iconvclose nl_cxtime nl_isupper strcmp16
iconvlock nl_fprintf nl_isxdigit strcmp8
iconvopen nl_fscanf nl_msg strncmp16
iconvsize nl_gcvt nl_printf strncmp8
idtolang nl_init nl_scanf nlsinfo
For applications linked shared that call these interfaces,
forward object code compatibility is supported through
versioning of /usr/shlib/libc.sl. Applications that are
recompiled or re-linked on HP-UX 10.x cannot call these
obsolete interfaces.
* The getlocale MODIFIER_STATUS and ERROR_STATUS types are no
longer supported in HP-UX 10.x. LOCALE_STATUS is
supported, with the exception of LC_ALL_D element in the
locale_data structure. This element is obsoleted because
LC_ALL does not exist any more as a separate category.
* HP-UX locales have been renamed in HP-UX 10.x to conform to
ISO standards. The mapping between old HP-UX 9.x locale
names and the standard ISO names can be found in
/usr/lib/nls/config. Links can be created from directories
containing local translations with the new HP-UX 10.x
locale names to the old HP-UX 9.x locale names to ensure
that products and scripts continue to operate.
* The -d flag of localedef will no longer be provided. If
compatibility with the HP specific HP-UX 9.x locale is
desired, the HP-UX 9.x /usr/old/usr/bin/localedef can be
used to dump the HP-UX 9.x locale. These changes can then
be applied to the sources of the HP-UX 10.x locales.
* These other libc functions have been obsoleted in HP-UX 10.x:
byte_status c_colwidth fgetspwent firstof2
putspwent secof2
New Commands, Options and Routines
The following commands, options, and routines were added in HP-UX 10.x.
For section 1M functionality, see Chapter 3. For more details, see the
Release Notes for HP-UX 10.0 version B.10.10, and the HP-UX 9.x and 10.x
manpages for the listed functionality.
New Commands and Options.
Don't use these new HP-UX 10.x commands and options if you want scripts
and programs to work on HP-UX 9.x systems.
* The fuser command was extended to NFS file systems for HP-UX 10.x.
* These new commands were added to HP-UX 10.x:
dcnodes(1M) dmpxlt(1) genxlt(1)
model(1) sccs(1)
* These new options were added to commands in HP-UX 10.x:
* cat: -b, -n, and -r options.
* /bin/cc: -V, -O4, many +O options.
* chgrp, chgrp: -h option.
* compress: -z option.
* cp, cpio, ftio, ls, mv, tar: -e option.
* gencat: - option.
* mesg: -g option.
* nfsstat: -m option.
* nljust: -i and -d options.
* nroff: -P option.
* passwd: -m, -x, -w, -F, options.
* pax: -k, -X, -pm, -po, -t, and -f archive options.
* ps (if HP PRM is configured): -P and -R options.
* rpcgen: -D, -I, -K, -L, -T, and -t options.
* sar: -S option.
* sort: -A option.
* tput: -S option.
* Changes in behavior for commands that may affect interoperability
are:
* cat: -e and -t options.
* echo: Recognizes two additional special characters.
* help: Name changed to sccshelp.
* iostat: Changes in output format.
* locale: -a, -c, and -k options.
* mm: No longer supports compiled macro files.
* passwd: -f option on HP-UX 9.x is the -F option on HP-UX
10.x. The HP-UX 9.x functionality can be accessed on HP-UX
10.x by adding /usr/old/bin to the $PATH environment
variable /bin.
* rm: -f, -i, -r and -R options.
* rmdir: -f and -i options.
* sort: -f and -t options.
* uniq: -s option may produce different results on HP-UX
10.x than HP-UX 9.x.
New Routines.
These new routines and new functionality in existing routines were added
in HP-UX 10.x:
* New requests to ptrace:
PT_SET_EVENT_MASK PT_GET_EVENT_MASK
PT_GET_PROCESS_STATE PT_GET_PROCESS_PATHNAME
* madvise now recognizes the MADV_RANDOM and MADV_SEQUENTIAL
options.
* Multi-threaded application support was added to libc.
* openlog and closelog have been changed to be COSE XPG4.2
(SPEC1170) compliant, and now return void rather than int.
* The decrypt capability of the encrypt function is now available.
* These new libc functions were added:
authdes_create getfsgid key_decryptsession setspent
authdes_getucred getfsgnam key_encryptsession sigsend
basename getfsguser key_gendes sigsendset
clearenv getnetname key_setsecret strfmon
clnt_create_vers getspent netname2host strptime
dirname getspnam netname2user tcgetsid
endfsgent host2netname putws unlockpt
endspent iconv re_comp user2netname
grantpt iconv_close re_exec yp_update
getfsgdef iconv_open setfsgent
getfsgent isastream setfsgfil
serialize
* New formatting directives for strftime.
* select system call behavior more closely follows System V select
behavior for STREAMS.
Using Only Common Parts of Standards
If your applications must work on both HP-UX 9.x and 10.x, don't use the
parts of the new standards HP-UX 10.x conforms to but which HP-UX 9.x
does not. Details about those items added to HP-UX 10.x for standards
compliance are given in the following sections.
HP-UX 10.x Additions for SVID3.
The following items were added to HP-UX 10.x for SVID3 compliance. For
more details, see the Release Notes for HP-UX 10.0 version B.10.10 and
the appropriate HP-UX 10.x manpages.
* STREAMS-based pipes capability:
fattach(3c) fdetach(3c) detach(1M) isastream(3c)
* New whodo options -h and -l.
* New system calls, commands, and routines:
addsev(3C) fmtmsg(3C) fstatvfs(2) getsid(2)
gettxt(3C) lchown(2) listuser(1) logins(1M)
mkmsgs(1) pfmt(3c) setcat(3C) setlabel(3C)
sigsend(2) sigsendset(2) statvfs(2) statvfsdev(2)
tcgetsid(2) vpfmt(3C)
The following items were modified in HP-UX 10.x for SVID3 compliance.
For more details, see the Release Notes for HP-UX 10.0 version B.10.10
and the appropriate HP-UX 10.x manpages.
* readlink was changed to take an int for its third argument, not a
size_t, and to return an int, not an ssize_t.
* wait and waitpid were enhanced to allow the options parameter to
have the macro WNOWAIT.
* getrlimit and setrlimit were enhanced to support these new
resources:
RLIMIT_DATA RLIMIT_STACK RLIMIT_NOFILE RLIMIT_CORE
RLIMIT_FSIZE
* In HP-UX 10.x, getpgid behaves as getpgrp. In HP-UX 9.x, it was
undocumented and behaved as getpgrp.
* mkfs, mount, umount, and ncheck modifications.
* Changes to "TERMIO" interface:
These termio ioctls were added:
TCGETS TCSETS TCSETSW TCSETSF
TIOCGSID TIOCMBIS TIOCMBIC TIOCMGET
TIOCMSET
These special characters are now processed:
WERASE REPRINT EOL2 DISCARD
LNEXT
These input and local mode features are supported:
IMAXBEL ECHOCTL ECHOPRT ECHOKE
FLUSHO PENDIN
The stty command can report and activate the new special
characters handling and the new input and local modes features.
stty also allows for the system-wide setting of the special
character defaults used when a port is opened.
HP-UX 10.x Additions for POSIX 1003.4.
The following features were added to HP-UX 10.x for Posix 1003.4:
* A Real-time deterministic scheduler providing different execution
scheduling policies. This scheduler co-exists with the existing
HP-UX execution scheduling policies (timeshare, rtprio, and
fair-share).
* A standard set of interfaces to the existing clocks in HP-UX, a
standard set of interfaces for creating and manipulating interval
timers based on those clocks, and a high-resolution "sleep"
function independent of interval timers and signals.
* Two new flags for Synchronized I/O, O_DSYNC and O_RSYNC, were
added to open/fcntl. The new system call fdatasync was also
added.
HP-UX 10.x Additions for XPG4.
XPG4 Base Profile Branding was also provided in the following prior
releases: HP-UX 9.0 (XPG4 PCO), HP-UX 9.03, and HP-UX 9.04.
Only the XPG4 Internationalized System Interfaces and Headers component
required any change to conform to the XPG4 Base Profile, as the other
components conformed in prior releases.
The new features and significant bug fixes for HP-UX 10.x affect XPG4
Branding and Compliance are listed next. Affected header files were also
changed.
Changes to libc:
catopen New NL_CAT_LOCALE processing.
iconv* New iconv, iconv_open, iconv_close functions.
nl_langinfo New ALT_DIGITS, ERA, ERA_D_T_FMT, ERA_T_FMT
processing.
printf New grouping specifier functionality (') to printf
family of functions.
strfmon New strfmon function, and new header file
monetary.h.
strftime Modified some formatting directives.
strptime New strptime function.
Changes to libM:
y0/y1/yn Bug fix: y0(0.0), y1(0.0), yn(3.0,0.0) now return
HUGE_VAL.
log/log10 Bug fix: log(0.0), log10(0.0) now return ERANGE.
Changes to commands:
iconv Enhancements.
localedef Major redesign. Old implementation under
/usr/old/usr/bin (it will only dump a locale).
make Enhancements.
more New options, new subcommands and some behaviors of
existing subcommands changed.
patch Created dummy command. Full functionality will be
in next major HP-UX release.
rm Now descends to arbitrary depths in a file
hierarchy and will not fail due to path length
limitations.
sccs New front end utility for SCCS commands.
sh-posix New commands/options: hash, type and export.
talk Created dummy command. Full functionality will be
in next major HP-UX release.
tar Bug fix: handles 100 character link name properly.
tr New usage syntax.
type Added executable version of POSIX shell built-in
command.
Corresponding changes were also made to affected header files.
Differences in Features (APIs)
The following features were added or obsoleted in HP-UX 10.x. Don't use
these for applications that you wish to interoperate on HP-UX 9.x and
10.x. For more information, see the Release Notes for HP-UX 10.0 version
B.10.10.
Obsolete Features.
The following features were obsoleted in HP-UX 10.x. Don't use these for
applications that you wish to interoperate on HP-UX 9.x and 10.x:
* Software Disk Striping (SDS).
* DataPair/UX, including mirror and mirrorlog.
* Fair-Share Scheduler: replaced by HP Process Resource Manager (HP
PRM). The command line interfaces are different.
New Features.
The following features were added in HP-UX 10.x. Don't use these for
applications that you wish to interoperate on HP-UX 9.x and 10.x:
* STREAMS based pipes capability, the STREAMS Pty driver, and XTI
interface.
* "Realtime Deterministic" scheduler and Commercial security
(pwconv).
* rdist remote distribution service and ntp time service.
* The Loopback File System (LOFS) is supported and provides better
performance than NFS loop-back. Some applications that walk file
trees use stat's st_dev to detect the crossing of mount points.
This will not work with LOFS, since an LOFS file has the st_dev of
its original location. Code that needs to identify a particular
file system (in the sense of a particular mount) should use f_fsid
from statfs or statvfs.
* Journaled File System (VxFS): Added in HP-UX 10.01; the only
applications which will not work with VxFS are those that are
aware of UFS specific information, such as UFS disk format,
read/write UFS file systems using the raw or character device,
etc. All applications which use portable interfaces specified by
POSIX, X/Open, AES, SVID, etc., will work.
* Curses: To conform to XPG3, four routines were added:
def_shell_mode, def_prog_mode, reset_shell_mode, reset_prog_mode.
Curses-Color is a new COSE compliant curses package.
* The DCE client software (including the pthreads library) and
STREAMS are bundled with HP-UX 10.x. There are available as
separate products for HP-UX 9.x.
* Multiple file system support to file system related commands.
Diskless Programming Differences
If your applications or scripts are written specifically for a diskless
environment, you should be aware of the following differences between
HP-UX 9.x and 10.x.
NFS Diskless will be available with HP-UX 10.01 in second half of 1995.
This discussion is included here so you can begin your interoperability
planning and your diskless application modifications.
The file system semantics on an NFS Diskless client are not Posix
compliant because NFS mounts are used for file system access.
NFS-mounted file systems are not Posix compliant in several minor ways,
primarily in regards to file locking issues (fcntl and lockf). See the
HP-UX Reference pages under "NFS Dependencies" for details.
These DUX-specific commands do not exist on HP-UX 10.x:
cnodes(1) cps(1) getcontext(1) makecdf(1M) showcdf(1)
These DUX-specific options to commands do not exist on HP-UX 10.x:
chmod -H find -hidden -type H ls -H
find -nodevcid find -devcid cname last -c
pwd -H users -c who -c
bdf -L df -L sync -l
ftio -H pax -H -m -o -p -t device tar -H
These DUX-specific library routines (including context dependent files)
are obsolete on HP-UX 10.x:
endccent getcccid getcdf nftwh
fgetccent getccent gethcwd setccent
ftwh getccnam hidecdf
cnodeid cnodes getcontext
These additional DUX features were obsoleted in HP-UX 10.x. Don't use
these for diskless applications that you wish to interoperate on HP-UX
9.x and 10.x:
* Distributed named pipes across a cluster in diskless environments.
* The DUX concept of global PIDs across a cluster. Temporary
name-space collision should be avoided by each diskless client
having private /tmp areas.
* Using /tmp as a shared depository between diskless clients, such
as an application using a lib routine to create unique tmp_file
names.
Miscellaneous 9.x/10.x Differences
At HP-UX 10.x, the POSIX shell replaces the Bourne shell as the default
shell. Most Bourne shell scripts will work unmodified with the POSIX
shell, but for those rare cases where problems are encountered, either
convert Bourne shell scripts to POSIX shell and have HP-UX 9.x and 10.x
$PATHs point to /bin/posix/sh and /usr/bin/sh (the POSIX shell),
respectively, or have 9.x and 10.x $PATHs point to /bin/sh and
/usr/old/bin/sh (the Bourne shell), respectively. For more details about
the differences between the Bourne shell and the POSIX shell see the
Release Notes for HP-UX 10.0 version B.10.10.
Last Modified:
Dec 19, 2016 11:12 am US/Eastern
Created:
Aug 22, 2007 12:50 pm GMT-4
by
admin
JumpURL: