HP-UX 11i June 2004 Release Notes
Compatibility
Known Compatibility Exceptions from HP-UX 11.0 to 11i
Chapter 14
289
• MAX_PROCS Changed to Enable 128 CPU Support
This change enables support for 128 CPUs. The kernel macro MAX_PROCS has
changed from 32 to 128 in the LP64 kernel and has changed the ABI for the
undocumented system calls ki_call() and ktest_ioctl().
The MAX_PROCS change will cause an ABI incompatibility for kernel-intrusive
applications or drivers which access internal kernel arrays sized by the MAX_PROCS
macro.
NOTE Correction: Contrary to what was reported in previous 11i Version 1.0 Release Notes,
the maximum numbers of pids is 30000. The symbolic constant MAXPID was increased to
8 million in 11i version 1.0 header files; however, it is not dynamic, nor is it used directly
by the HP-UX operating system to determine the maximum number of pids. This may
change in a future release of HP-UX.
• Memory Windows
This change enables applications to access up to 1GB of shared memory that is not
otherwise allocated against the system-wide limit. However, enabling Memory
Windows alters the semantics of some memory APIs and some POSIX APIs.
Although these APIs will function correctly for applications running within their
own Memory Window, they will not function correctly for applications running in
different Memory Windows.
• Process-Private Memory: Increase in Memory Size Limit
This change increases the memory size limit for process-private memory. However,
when the 3rd quadrant private feature is enabled for a process, it can only allocate
shared objects in the 4th quadrant. If the 4th quadrant fills up, the application may
fail, where it would not have failed if the 3rd quadrant were available for allocation
of shared objects.
• pstat_getdynamic Interface: Change in Maximum Number of Active Processors
This change corrects a defect in the pstat_getdynamic interface so it adheres to the
documentation when it reports the number of processors that are active on a system.
Well-behaved applications will not be affected by this change. However, ill-behaved
applications may overestimate the number of processors that are active on the
system. Ill-behaved applications can be corrected to reference the correct field with a
simple code change. See “On Demand Solutions” on page 213 for more information.
• strftime() Support for Week Number
This change fixes a defect in strftime(). Now, applications that use the %V option
of strftime() to obtain the week number will find that the return value is 52
instead of 53 when:
— December 31 falls on a Friday, in a non-leap year, when the date passed in is
January 1 or January 2 of that week. Some years affected include 1999, 2004,
and 2032.
— December 31 falls on a Saturday, when the date passed in is January 1 of that
week. Some years affected include 2005, 2011, 2016, 2022, 2033 and 2039.