Oracle Corporation Conformance Statement
| |
Home About Us A-Z Index Search • |
Organization | Sun Microsystems, Inc. |
---|---|
Author | Kristin Amundsen |
Product Identification | Version/Release Number | Product Supplier | |
---|---|---|---|
1. | Solaris Express 05/03 Operating Environment, x86 Platform Edition | 05/03 and on | Sun Microsystems, Inc. |
2. | Solaris Express 05/03 Operating Environment, SPARC Platform Edition | 05/03 and on | Sun Microsystems, Inc. |
Testing Environment | Binary-compatible Family | Portability Environment | Indicator of Compliance | Compliance Details | |
---|---|---|---|---|---|
1. |
|
| None. | Test Report from Test Suite | Test Suite:
VSX4.4.5, VSX5.1.6, VSTH5.2.3, VSRT5.1.2 Test Report: vsx_sol9_x86-32 |
2. |
|
| None. | Test Report from Test Suite | Test Suite:
VSU5.1.2 Test Report: vsu_sol9_x86-32off32, vsu_sol9_x86-32offbig |
3. |
|
| None. | Test Report from Test Suite | Test Suite:
VSX4.4.5, VSX5.1.6, VSTH5.2.3, VSRT5.1.2 Test Report: vsx_sol10_sparc-32 |
4. |
|
| None. | Test Report from Test Suite | Test Suite:
VSU5.1.2 Test Report: vsu_sol10_sparc-32off32, vsu_sol10_sparc-32offbig |
5. |
|
| None. | Test Report from Test Suite | Test Suite:
VSX4.4.5, VSX5.1.6, VSTH5.2.3, VSRT5.1.2 Test Report: vsx_sol10_sparc-64 |
6. |
|
| None. | Test Report from Test Suite | Test Suite:
VSU5.1.2 Test Report: vsu_sol10_sparc-64off64, vsu_sol10_sparc-64offbig |
Question 1: Which of the following Feature Groups are supported by the implementation?
Response
Encryption | Yes |
Legacy | Yes |
Realtime | Yes |
Realtime Threads | Yes |
Support for a Feature Group can only be claimed if all interfaces in that group behave according to the relevant descriptions in System Interfaces and Headers, Issue 5.
The interfaces in these Groups must exist, whether or not the Feature Group is supported, and each interface must either behave according to the description in System Interfaces and Headers, Issue 5, or indicate an error, with errno set to [ENOSYS].
Rationale
System Interfaces and Headers, Issue 5 states that the system may provide one or more of the Feature Groups listed.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Section 1.2, Conformance and Section 1.3, Feature Groups.
Internationalised System Calls and Libraries Extended V2 Product Standard.
Question 2: Which of the following options, specified in the <unistd.h> header file, are available on the system?
Response
Macro Name | Meaning | Provided |
---|---|---|
_POSIX_CHOWN_RESTRICTED | The use of chown() is restricted to a process with appropriate privileges, and to changing the group ID of a file only to the effective group ID of the process or one of its supplementary group IDs. | Yes |
_POSIX_NO_TRUNC | Pathname components longer than {NAME_MAX) generate an error. | Yes |
_POSIX_VDISABLE | Terminal special characters defined in <termios.h> can be disabled using this character value. | Yes |
_POSIX_SAVED_IDS | Each process has a saved set-user-ID and a saved set-group-ID. | Yes |
_POSIX_JOB_CONTROL | Implementation supports job control. | Yes |
_POSIX_THREADS | Implementation supports threads. | Yes |
Rationale
For a conformant implementation, all of these POSIX features must be provided. In some cases the feature need not be provided for all files or devices supported by the implementation.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Chapter 4, Headers, <unistd.h>.
Question 3: What are the values associated with the following constants specified in the <float.h> header file?
Response
Macro Name | Meaning | Value |
---|---|---|
FLT_RADIX | Radix of the exponent representation. |
|
FLT_MANT_DIG | Number of base-FLT_RADIX digits in the float significand. |
|
DBL_MANT_DIG | Number of base-FLT_RADIX digits in the double significand. |
|
LDBL_MANT_DIG | Number of base-FLT_RADIX digits in the long double significand. |
|
FLT_DIG | Number of decimal digits, q, such that any floating point number with q digits can be rounded into a float representation and back again without change to the q digits. |
|
DBL_DIG | Number of decimal digits, q, such that any floating point number with q digits can be rounded into a double representation and back again without change to the q digits. |
|
LDBL_DIG | Number of decimal digits, q, such that any floating point number with q digits can be rounded into a long double representation and back again without change to the q digits. |
|
FLT_MIN_EXP | Minimum negative integer such that FLT_RADIX raised to that power minus 1 is a normalised float. |
|
DBL_MIN_EXP | Minimum negative integer such that FLT_RADIX raised to that power minus 1 is a normalised double. |
|
LDBL_MIN_EXP | Minimum negative integer such that FLT_RADIX raised to that power minus 1 is a normalised long double. |
|
FLT_MIN_10_EXP | Minimum negative integer such that 10 raised to that power is in the range of normalised floats. |
|
DBL_MIN_10_EXP | Minimum negative integer such that 10 raised to that power is in the range of normalised doubles. |
|
LDBL_MIN_10_EXP | Minimum negative integer such that 10 raised to that power is in the range of normalised long doubles. |
|
FLT_MAX_EXP | Maximum integer such that FLT_RADIX raised to that power minus 1 is a representable finite float. |
|
DBL_MAX_EXP | Maximum integer such that FLT_RADIX raised to that power minus 1 is a representable finite double. |
|
LDBL_MAX_EXP | Maximum integer such that FLT_RADIX raised to that power minus 1 is a representable finite long double. |
|
FLT_MAX_10_EXP | Maximum integer such that 10 raised to that power is in the range of representable finite floats. |
|
DBL_MAX_10_EXP | Maximum integer such that 10 raised to that power is in the range of representable finite doubles. |
|
LDBL_MAX_10_EXP | Maximum integer such that 10 raised to that power is in the range of representable finite long doubles. |
|
FLT_MAX | Maximum representable finite float. |
|
DBL_MAX | Maximum representable finite double. |
|
LDBL_MAX | Maximum representable finite long double. |
|
FLT_EPSILON | Difference between 1.0 and the least value greater than 1.0 that is representable as a float. |
|
DBL_EPSILON | Difference between 1.0 and the least value greater than 1.0 that is representable as a double. |
|
LDBL_EPSILON | Difference between 1.0 and the least value greater than 1.0 that is representable as a long double. |
|
FLT_MIN | Minimum normalised positive float. |
|
DBL_MIN | Minimum normalised positive double. |
|
LDBL_MIN | Minimum normalised positive long double. |
|
Rationale
This set of constants provides useful information regarding the underlying architecture of the implementation.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Chapter 4, Headers, <float.h>.
Question 4: What are the values associated with the following constants (optionally specified in the <limits.h> header file)?
Response
Macro Name | Meaning | Minimum | Maximum |
---|---|---|---|
ARG_MAX | Maximum length of argument to the exec functions including the environment data. | 4096 | See Appendix |
AIO_LISTIO_MAX | Maximum number of I/O operations in a single list I/O call. | 2 | 4096 |
AIO_MAX | Maximum number of outstanding asynchronous I/O operations. | 1 | Unlimited |
AIO_PRIO_DELTA_MAX | Maximum amount by which a process can decrease its asynchronous I/O priority level from its own scheduling level. | 0 | Unlimited |
ATEXIT_MAX | Maximum number of functions that may be registered with atexit(). | 32 | Unlimited |
CHILD_MAX | Maximum number of processes per user ID. | 25 | Value dependent on how the system kernel is configured |
DELAYTIMER_MAX | Maximum number of timer expiration overruns. | 32 | 2147483647 |
FILESIZEBITS | Minimum number of bits needed to represent as a signed integer value the maximum size of a regular file. | 32 | 41 |
IOV_MAX | Maximum number of iovec structures that one process has available for use with readv() or writev(). | 16 | 16 |
LINK_MAX | Maximum number of links to a single file. | 8 | 32767 |
LOGIN_NAME_MAX | Maximum length of a login name. | 9 | 9 |
MAX_CANON | Maximum number of bytes in a terminal canonical input line. | 255 | 256 |
MAX_INPUT | Maximum number of bytes for which space will be available in a terminal input queue. | 255 | 512 |
MQ_OPEN_MAX | Maximum number of open message queue descriptors a process may hold. | 8 | 32 |
MQ_PRIO_MAX | Maximum number of message priorities supported by the implementation. | 32 | 32 |
NAME_MAX | Maximum number of bytes in a filename (not including terminating null). | 14 | The maximum value for NAME_MAX varies depending on the file system type, but always provides at least the minimum requirement. The most common value is 255. Values for a specific path are available using pathconf(). |
OPEN_MAX | Maximum number of open files that one process can have open at any one time. | 20 | OPEN_MAX defaults to 256, but users can increase or descrease this value using routines not specified by POSIX.1 or XPG5. If OPEN_MAX is reduced to a value smaller than 20, the runtime environment will no longer be in compliance with XPG5. |
PAGESIZE | Size of a page in bytes. | 1 | Variable |
PAGE_SIZE | Same as PAGESIZE. If either PAGESIZE or PAGE_SIZE is defined, the other will be defined with the same value. | 1 | Variable |
PASS_MAX | Maximum number of significant bytes in a password (not including the terminating null). | 8 | 8 |
PATH_MAX | Maximum number of bytes in a pathname (including the terminating null). | 255 | The maximum value for PATH_MAX varies depending on the file system type, but always provides at least the minimum requirement. The most common value is 1024. Values for a specific path are available using pathconf(). |
PIPE_BUF | Maximum number of bytes that is guaranteed to be atomic when writing to a pipe. | 512 | 5120 |
PTHREAD_DESTRUCTOR_ITERATIONS | Maximum number of attempts made to destroy a thread's thread-specific data values on thread exit. | 4 | Variable |
PTHREAD_KEYS_MAX | Maximum number of data keys that can be created by a process. | 128 | Variable |
PTHREAD_STACK_MIN | Minimum size in bytes of thread stack storage. | 0 | Variable |
PTHREAD_THREADS_MAX | Maximum number of threads that can be created by a process. | 64 | Variable |
RTSIG_MAX | Maximum number of realtime signals reserved for application use. | 8 | 8 |
SEM_NSEMS_MAX | Maximum number of semaphores that a process may have. | 256 | 2147483647 |
SEM_VALUE_MAX | Maximum value a semaphore may have. | 32767 | 2147483647 |
SIGQUEUE_MAX | Maximum number of queued signals that a process may send and leave pending at the receiver(s) at any time. | 32 | 32 |
STREAM_MAX | Number of streams that one process can have open at one time. | 8 | 256 |
TIMER_MAX | Maximum number of timers per process supported. | 32 | 32 |
TTY_NAME_MAX | Maximum length of terminal device name. | 9 | 128 |
TZNAME_MAX | Maximum number of bytes supported for the name of a time zone. | 3 | 3 |
Rationale
Each of these limits can vary within bounds set by System Interfaces and Headers, Issue 5. The minimum permitted value is specified in Chapter 4, <limits.h>.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Chapter 4, Headers, <limits.h>.
Question 5: What are the values associated with the following constants specified in the <limits.h> header file?
Response
Macro Name Meaning Minimum Maximum
BC_BASE_MAX
Maximum ibase and obase values allowed by the bc utility.
99
99
BC_DIM_MAX
Maximum number of elements permitted in an array by the bc utility.
2048
2048
BC_SCALE_MAX
Maximum scale value allowed by the bc utility.
99
99
BC_STRING_MAX
Maximum length of a string constant accepted by the bc utility.
1000
1000
COLL_WEIGHTS_MAX
Maximum number of weights that can be assigned to an entry of the
LC_COLLATE order keyword in the locale definition file.
2
4
EXPR_NEST_MAX
Maximum number of expressions that can be nested within parentheses
by the expr utility.
32
32
LINE_MAX
Maximum length in bytes including the trailing newline of a utility's
input line when the utility is described as processing text files.
2048
2048
NGROUPS_MAX
Maximum number of simultaneous supplementary group IDs per process.
16
16
RE_DUP_MAX
Maximum number of repeated occurrences of a regular expression
permitted when using interval notation.
255
255
Rationale
Each of these limits can vary within bounds set by System Interfaces and Headers, Issue 5. The minimum value that a limit can take on any conforming system is given in the corresponding _POSIX_ or _POSIX2_ value. A specific conforming implementation may provide a higher minimum value than this and the maximum value that it provides can differ from the minimum. Some conforming implementations may provide a potentially infinite value as the maximum, in which case the value is considered to be indeterminate. The minimum value must always be definitive since the _POSIX_ or _POSIX2_ value provides a known lower bound for the range of possible values.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Chapter 4, Headers, <limits.h>.
Question 6: What are the values associated with the following numerical constants specified in the <limits.h> header file?
Response
Macro Name | Meaning | Value |
---|---|---|
CHAR_BIT | Number of bits in a char. |
|
CHAR_MAX | Maximum value of a char. |
|
INT_MAX | Maximum value of an int. |
|
LONG_BIT | Number of bits in a long int. |
|
LONG_MAX | Maximum value of a long int. |
|
MB_LEN_MAX | Maximum number of bytes in a character, for any supported locale. |
|
SCHAR_MAX | Maximum value of a signed char. |
|
SHRT_MAX | Maximum value of a short. |
|
SSIZE_MAX | Maximum value of an object of type ssize_t. |
|
UCHAR_MAX | Maximum value of an unsigned char. |
|
UINT_MAX | Maximum value of an unsigned int. |
|
ULONG_MAX | Maximum value of an unsigned long int. |
|
USHRT_MAX | Maximum value of an unsigned short int. |
|
WORD_BIT | Number of bits in a word or int. |
|
Rationale
This set of constants provides useful information regarding the underlying architecture of the implementation.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Chapter 4, Headers, <limits.h>.
Question 7: What are the values associated with the following numerical constants specified in the <stdio.h> header file?
Response
Macro Name | Meaning | Value |
---|---|---|
FILENAME_MAX | Maximum size in bytes of the longest filename string that the implementation guarantees can be opened. |
|
FOPEN_MAX | Number of streams which the implementation guarantees can be open simultaneously. |
|
L_ctermid | Maximum size of character array to hold ctermid() output. |
|
L_tmpnam | Maximum size of character array to hold tmpnam() output. |
|
TMP_MAX | Minimum number of unique filenames generated by tmpnam(), which is the maximum number of times an application can call tmpnam() reliably. |
|
Rationale
This set of constants provide useful information about the implementation.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Chapter 4, Headers, <stdio.h>.
Question 8: Which of the following option errors, ( denoted by "may fail" within the specification ), listed in System Interfaces and Headers, Issue 5 are detected in the circumstances specified?
Response
Function | Error | Detected |
---|---|---|
access() | EINVAL | Yes |
ENAMETOOLONG | Yes | |
ETXTBSY | No | |
acos() | EDOM | Yes |
acosh() | EDOM | Yes |
aio_error() | EINVAL | Yes |
asin() | EDOM | Yes |
ERANGE | No | |
asinh() | EDOM | No |
atan() | EDOM | No |
ERANGE | No | |
atanh() | EDOM | No |
atan2() | EDOM | Yes |
ERANGE | No | |
brk() | EAGAIN | Yes |
ENOMEM | Yes | |
catclose() | EBADF | No |
EINTR | No | |
catgets() | EBADF | No |
EINTR | No | |
EINVAL | Yes | |
ENOMSG | Yes | |
catopen() | EACCES | Yes |
EMFILE | Yes | |
ENAMETOOLONG | Yes | |
ENFILE | Yes | |
ENOENT | Yes | |
ENOMEM | Yes | |
ENOTDIR | Yes | |
cbrt() | EDOM | No |
ceil() | EDOM | No |
cfsetispeed() | EINVAL | No |
cfsetospeed() | EINVAL | No |
chdir() | ENAMETOOLONG | Yes |
chmod() | EINTR | No |
EINVAL | Yes | |
ENAMETOOLONG | Yes | |
chown() | EINTR | Yes |
EINVAL | Yes | |
EIO | Yes | |
ENAMETOOLONG | Yes | |
chroot() | ENAMETOOLONG | Yes |
clock_settime() | EPERM | Yes |
close() | EIO | Yes |
closedir() | EBADF | Yes |
EINTR | No | |
cos() | EDOM | No |
ERANGE | No | |
cosh() | EDOM | No |
endpwent() | EIO | Yes |
erf() | EDOM | No |
ERANGE | No | |
erfc() | EDOM | No |
ERANGE | No | |
exec | ENAMETOOLONG | Yes |
ENOMEM | No | |
ETXTBSY | Yes | |
exp() | EDOM | No |
ERANGE | Yes | |
expm1() | EDOM | No |
ERANGE | No | |
fabs() | EDOM | No |
ERANGE | No | |
fattach() | EINVAL | Yes |
ENAMETOOLONG | Yes | |
EXDEV | No | |
fchdir() | EINTR | Yes |
EIO | Yes | |
fchmod() | EINTR | Yes |
EINVAL | Yes | |
fchown() | EINVAL | Yes |
EIO | Yes | |
EINTR | Yes | |
fclose() | ENXIO | Yes |
fcntl() | EDEADLK | Yes |
fdetach() | ENAMETOOLONG | Yes |
fdopen() | EBADF | No |
EINVAL | No | |
EMFILE | Yes | |
ENOMEM | Yes | |
fflush() | ENXIO | Yes |
fgetc() | ENOMEM | Yes |
ENXIO | Yes | |
fgetpos() | EBADF | Yes |
ESPIPE | Yes | |
fgetwc() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
fileno() | EBADF | No |
floor() | EDOM | No |
fmod() | EDOM | Yes |
ERANGE | No | |
fopen() | EINVAL | No |
EMFILE | Yes | |
ENAMETOOLONG | Yes | |
ENOMEN | Yes | |
ETXTBSY | No | |
fork() | ENOMEM | Yes |
fpathconf() | EBADF | Yes |
EINVAL | Yes | |
fprintf() | EINVAL | Yes |
EILSEQ | Yes | |
ENOMEM | Yes | |
fputc() | ENOMEM | Yes |
ENXIO | Yes | |
fputwc() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
fread() | ENOMEM | No |
ENXIO | No | |
freopen() | EINVAL | No |
ENAMETOOLONG | Yes | |
ENOMEM | No | |
ENXIO | Yes | |
ETXTBSY | No | |
frexp() | EDOM | No |
fscanf() | EILSEQ | Yes |
EINVAL | Yes | |
ENOMEM | Yes | |
ENXIO | Yes | |
fsetpos() | EBADF | Yes |
ESPIPE | Yes | |
fstat() | EOVERFLOW | Yes |
ftok() | ENAMETOOLONG | Yes |
ftw() | EINVAL | Yes |
ENAMETOOLONG | Yes | |
fwide() | EBADF | Yes |
fwprintf() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
EINVAL | Yes | |
fwscanf() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
EINVAL | Yes | |
getcwd() | EACCES | Yes |
ENOMEM | Yes | |
getgrent() | EINTR | No |
EIO | Yes | |
EMFILE | Yes | |
ENFILE | Yes | |
getgrgid() | EIO | Yes |
EINTR | No | |
EMFILE | Yes | |
ENFILE | Yes | |
getgrgid_r() | ERANGE | Yes |
getgrnam() | EIO | Yes |
EINTR | No | |
EMFILE | Yes | |
ENFILE | Yes | |
getgrnam_r() | ERANGE | Yes |
getitimer() | EINVAL | Yes |
getlogin() | EMFILE | Yes |
ENFILE | Yes | |
ENXIO | Yes | |
getlogin_r() | ERANGE | Yes |
getpass() | EINTR | No |
EIO | No | |
EMFILE | Yes | |
ENFILE | No | |
ENXIO | No | |
getpgid() | EINVAL | Yes |
getpwent() | EIO | Yes |
EMFILE | Yes | |
ENFILE | Yes | |
getpwnam() | EIO | Yes |
EINTR | No | |
EMFILE | Yes | |
ENFILE | Yes | |
getpwnam_r() | ERANGE | Yes |
getpwuid() | EIO | Yes |
EINTR | No | |
EMFILE | Yes | |
ENFILE | Yes | |
getpwuid_r() | ERANGE | Yes |
grantpt() | EBADF | Yes |
EINVAL | Yes | |
EACCES | Yes | |
hcreate() | ENOMEM | Yes |
hsearch() | ENOMEM | Yes |
hypot() | EDOM | No |
ERANGE | Yes | |
iconv() | EBADF | Yes |
iconv_close() | EBADF | Yes |
iconv_open() | EMFILE | Yes |
ENFILE | Yes | |
ENOMEM | Yes | |
EINVAL | Yes | |
isatty() | EBADF | No |
ENOTTY | No | |
j0() | EDOM | No |
ERANGE | Yes | |
j1() | EDOM | No |
ERANGE | Yes | |
jn() | EDOM | No |
ERANGE | Yes | |
lchown() | EIO | Yes |
EINTR | Yes | |
ENAMETOOLONG | Yes | |
ldexp() | EDOM | No |
ERANGE | Yes | |
lgamma() | EDOM | Yes |
ERANGE | Yes | |
link() | ENAMETOOLONG | Yes |
lockf() | EAGAIN | Yes |
EDEADLK | Yes | |
EINVAL | Yes | |
ENOLCK | Yes | |
EOPNOTSUPP | Yes | |
log() | EDOM | No |
ERANGE | Yes | |
log10() | EDOM | No |
ERANGE | Yes | |
log1p() | EDOM | No |
ERANGE | Yes | |
logb() | EDOM | No |
lstat() | ENAMETOOLONG | Yes |
EOVERFLOW | Yes | |
mblen() | EILSEQ | Yes |
mbrlen() | EINVAL | Yes |
EILSEQ | Yes | |
mbrtowc() | EINVAL | Yes |
EILSEQ | Yes | |
mbsrtowcs() | EINVAL | Yes |
mbstowcs() | EILSEQ | Yes |
mbtowc() | EILSEQ | Yes |
mkdir() | ENAMETOOLONG | Yes |
mkfifo() | ENAMETOOLONG | Yes |
mknod() | ENAMETOOLONG | Yes |
mlock() | EINVAL | Yes |
ENOMEM | Yes | |
EPERM | Yes | |
mlockall() | ENOMEM | No |
EPERM | Yes | |
modf() | EDOM | No |
ERANGE | Yes | |
mq_receive() | EBADMSG | No |
munlock() | EINVAL | Yes |
nextafter() | EDOM | No |
nftw() | ELOOP | Yes |
EMFILE | Yes | |
ENAMETOOLONG | Yes | |
ENFILE | Yes | |
open() | EAGAIN | Yes |
EINVAL | No | |
ENAMETOOLONG | Yes | |
ENOMEM | Yes | |
ETXTBSY | No | |
opendir() | EMFILE | Yes |
ENAMETOOLONG | Yes | |
ENFILE | Yes | |
pathconf() | EACCES | Yes |
EINVAL | Yes | |
ENAMETOOLONG | Yes | |
ENOENT | Yes | |
ENOTDIR | Yes | |
popen() | EMFILE | Yes |
EINVAL | No | |
pow() | EDOM | No |
ERANGE | Yes | |
pread() | ENXIO | Yes |
printf() | ENOMEM | Yes |
pthread_attr_setinheritsched() | EINVAL | Yes |
ENOTSUP | No | |
pthread_attr_setschedparam() | EINVAL | Yes |
ENOTSUP | No | |
pthread_attr_setschedpolicy() | EINVAL | Yes |
ENOTSUP | No | |
pthread_attr_setscope() | EINVAL | Yes |
ENOTSUP | No | |
pthread_cancel() | ESRCH | Yes |
pthread_cond_init() | EBUSY | No |
EINVAL | Yes | |
pthread_cond_destroy() | EBUSY | No |
EINVAL | No | |
pthread_cond_broadcast() | EINVAL | No |
pthread_cond_signal() | EINVAL | No |
pthread_cond_timedwait() | EINVAL | Yes |
pthread_cond_wait() | EINVAL | Yes |
pthread_condattr_destroy() | EINVAL | Yes |
pthread_condattr_setpshared() | EINVAL | Yes |
pthread_getschedparam() | ESRCH | Yes |
pthread_join() | EDEADLK | Yes |
pthread_key_delete() | EINVAL | Yes |
pthread_mutex_destroy() | EBUSY | No |
EINVAL | No | |
pthread_mutex_getprioceiling() | EINVAL | No |
ENOSYS | No | |
EPERM | No | |
pthread_mutex_init() | EBUSY | No |
EINVAL | No | |
pthread_mutex_lock() | EINVAL | Yes |
EAGAIN | Yes | |
EDEADLK | Yes | |
pthread_mutex_trylock() | EINVAL | Yes |
EAGAIN | Yes | |
pthread_mutex_unlock() | EINVAL | Yes |
EAGAIN | Yes | |
EPERM | Yes | |
pthread_mutex_setprioceiling() | EINVAL | Yes |
ENOSYS | No | |
EPERM | No | |
pthread_mutexattr_destroy() | EINVAL | Yes |
pthread_mutexattr_getprioceiling() | EINVAL | No |
EPERM | No | |
pthread_mutexattr_getprotocol() | EINVAL | No |
EPERM | No | |
pthread_mutexattr_gettype() | EINVAL | Yes |
pthread_mutexattr_init() | ENOMEM | Yes |
pthread_mutexattr_setprioceiling() | EINVAL | No |
EPERM | No | |
pthread_mutexattr_setprotocol() | EINVAL | No |
EPERM | No | |
pthread_mutexattr_setpshared() | EINVAL | Yes |
pthread_mutexattr_settype() | EINVAL | Yes |
pthread_rwlock_destroy() | EBUSY | No |
EINVAL | No | |
pthread_rwlock_init() | EBUSY | No |
EINVAL | No | |
pthread_rwlock_rdlock() | EINVAL | No |
EDEADLCK | No | |
EAGAIN | No | |
pthread_rwlock_tryrdlock() | EINVAL | No |
EDEADLCK | No | |
EAGAIN | No | |
pthread_rwlock_trywrlock() | EINVAL | No |
EDEADLCK | No | |
pthread_rwlock_unlock() | EINVAL | No |
EPERM | No | |
pthread_rwlock_wrlock() | EINVAL | No |
EDEADLCK | No | |
pthread_rwlockattr_destroy() | EINVAL | Yes |
pthread_rwlockattr_setpshared() | EINVAL | Yes |
pthread_setcanceltype() | EINVAL | Yes |
pthread_setschedparam() | EINVAL | Yes |
ENOTSUP | No | |
EPERM | Yes | |
pthread_setspecific() | EINVAL | Yes |
putc() | ENOMEM | Yes |
ENXIO | Yes | |
putchar() | ENOMEM | Yes |
ENXIO | Yes | |
putenv() | ENOMEM | Yes |
puts() | ENOMEM | No |
ENXIO | No | |
pututxline() | EPERM | Yes |
putw() | ENOMEM | Yes |
ENXIO | Yes | |
putwc() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
putwchar() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
pwrite() | EINVAL | Yes |
ENXIO | Yes | |
read() | ENXIO | Yes |
readdir() | EBADF | Yes |
ENOENT | Yes | |
readdir_r() | EBADF | Yes |
readlink() | EACCES | Yes |
ENAMETOOLONG | Yes | |
readv() | EINVAL | Yes |
ENXIO | Yes | |
realpath() | ENAMETOOLONG | Yes |
ENOMEM | Yes | |
regcmp() | ENOMEM | Yes |
remainder() | EDOM | No |
remove() | EBUSY | Yes |
ENAMETOOLONG | Yes | |
ETXTBSY | Yes | |
rename() | EBUSY | Yes |
ENAMETOOLONG | Yes | |
ETXTBSY | No | |
rint() | EDOM | No |
rmdir() | ENAMETOOLONG | Yes |
sbrk() | EAGAIN | Yes |
ENOMEM | Yes | |
scalb() | EDOM | No |
sem_destroy() | EBUSY | Yes |
sem_trywait() | EDEADLCK | Yes |
EINTR | No | |
sem_wait() | EDEADLCK | Yes |
EINTR | Yes | |
setitimer() | EINVAL | Yes |
setpriority() | EPERM | Yes |
EACCES | Yes | |
setpwent() | EIO | Yes |
EMFILE | Yes | |
ENFILE | Yes | |
setrlimit() | EINVAL | Yes |
setvbuf() | EBADF | No |
shmctl() | EOVERFLOW | Yes |
sigaction() | EINVAL | Yes |
sigaddset() | EINVAL | Yes |
sigdelset() | EINVAL | Yes |
sigismember() | EINVAL | Yes |
signal() | EINVAL | Yes |
sigtimedwait() | EINVAL | Yes |
EINTR | Yes | |
sigwait() | EINVAL | Yes |
sigwaitinfo() | EINTR | Yes |
sin() | EDOM | No |
ERANGE | No | |
sinh() | EDOM | No |
ERANGE | No | |
sqrt() | EDOM | Yes |
stat() | ENAMETOOLONG | Yes |
EOVERFLOW | Yes | |
statvfs() | ENAMETOOLONG | Yes |
strcoll() | EINVAL | No |
strdup() | ENOMEM | Yes |
strerror() | EINVAL | No |
strtod() | EINVAL | Yes |
strtol() | EINVAL | Yes |
strtoul() | EINVAL | Yes |
strxfrm() | EINVAL | No |
swprintf() | EILSEQ | Yes |
EINVAL | Yes | |
swcsanf() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
symlink() | ENAMETOOLONG | Yes |
system() | ECHILD | Yes |
tan() | EDOM | No |
ERANGE | No | |
tanh() | EDOM | No |
ERANGE | No | |
tcdrain() | EIO | Yes |
tcflow() | EIO | Yes |
tcflush() | EIO | Yes |
tcsendbreak() | EIO | Yes |
tcsetattr() | EIO | Yes |
tmpfile() | EMFILE | Yes |
ENOMEM | Yes | |
towctrans() | EINVAL | No |
truncate() | ENAMETOOLONG | Yes |
ttyname() | EBADF | Yes |
ENOTTY | Yes | |
ttyname_r() | EBADF | Yes |
ENOTTY | Yes | |
ERANGE | Yes | |
ungetwc() | EILSEQ | Yes |
unlink() | EBUSY | Yes |
ENAMETOOLONG | Yes | |
ETXTBSY | No | |
unlockpt() | EBADF | Yes |
EINVAL | Yes | |
usleep() | EINVAL | Yes |
utime() | ENAMETOOLONG | Yes |
utimes() | ENAMETOOLONG | Yes |
wait3() | ECHILD | Yes |
wcrtomb() | EINVAL | Yes |
EILSEQ | Yes | |
wcsrtombs() | EINVAL | Yes |
EILSEQ | Yes | |
wcscoll() | EINVAL | Yes |
wcstod() | EINVAL | Yes |
wcstol() | EINVAL | Yes |
wcstombs() | EILSEQ | Yes |
wcstoul() | EINVAL | Yes |
wcsxfrm() | EINVAL | Yes |
wctrans() | EINVAL | No |
wprintf() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
EINVAL | Yes | |
write() | EINVAL | Yes |
ENXIO | Yes | |
writev() | EINVAL | Yes |
ENXIO | Yes | |
wscanf() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
y0() | EDOM | Yes |
ERANGE | Yes | |
y1() | EDOM | Yes |
ERANGE | Yes | |
yn() | EDOM | Yes |
ERANGE | Yes |
Rationale
Each of the above error conditions is marked as optional in System Interfaces and Headers, Issue 5 and an implementation may return this error in the circumstances specified or may not provide the error indication.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Section 2.3, Error Numbers.
Question 9: What format of floating-point numbers is supported by this implementation?
Response
Rationale
Most implementations support IEEE floating point format either in hardware or software. Some implementations support other formats with different exponent and mantissa accuracy. These differences need to be defined.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Section 1.6, Relationship to Formal Standards.
Question 10: Are the optional data encryption interfaces provided?
Response
Function | Provided |
---|---|
crypt() | Yes |
encrypt() | Yes |
setkey() | Yes |
Export Restrictions:
Rationale
Normally, an implementation will either provide all three of these routines or will provide none of them at all. If the routines are not provided, then the implementation must provide a dummy interface which always raises an ENOSYS error condition.
It is also possible that the implementation of the encrypt() function may be affected by export restrictions, in which case, the restrictions should be documented here.
For example, historical implementations have supplied all three of these routines outside the U.S.A., but due to export restrictions on the decoding algorithm, a dummy version of encrypt() is provided that does encoding but no decoding.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Section 1.2, Conformance.
Question 11: Which file types (regular, directory, FIFO, special, and so on) are considered to be executable?
Response
Rationale
The [EACCES] error associated with exec functions occurs in circumstances when the implementation does not support execution of files of the type specified. A list of these file types needs to be provided.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Chapter 3, System Interfaces, exec.
Question 12: What file access control mechanisms does the implementation provide?
Response
Rationale
System Interfaces and Headers, Issue 5 notes that implementations may provide additional or alternate file access control mechanisms, or both.
Reference
CAE Specification, System Interface Definitions, Issue 5, Chapter 2, Glossary, file access permissions.
Question 13: Are any additional or alternate file access control mechanisms implemented that could cause fstat() or stat() to fail?
Response
Yes
Rationale
System Interfaces and Headers, Issue 5 notes that there could be an interaction between additional and alternate access controls and the success of fstat() and stat(). This would suggest that an implementation can allow access to a file but not allow the process to gain information about the status of the file.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Chapter 3, System Interfaces, fstat() and stat().
Question 14: Does the printf() function produce character string representations for Infinity and NaN to represent the respective values?
Response
Yes
Rationale
This behaviour is often provided on systems with mathematical functions that produce these results.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Chapter 3, System Interfaces, fprintf().
Question 15: What coded character sets are supported by the implementation?
Response
Solaris supports at least the following coded character sets:
Coded Character Set | Locale |
---|---|
ASCII | C, POSIX |
BIG5 | zh_TW.BIG5 |
Simplified Chinese EUC (GB 1988-80, GB 2312-80) | zh |
Japanese EUC (JIS X0201-1976, JIS X0208-1983, JIS X0212-1990) | ja |
Korean EUC (KS C 5636, KS C 5601-1987) | ko |
Traditional Chinese EUC (CNS 11643-0 ~ -15) | zh_TW |
GBK | zh.GBK |
ISO 8859-1 | da, de, de_AT, de_CH, en_AU, en_CA, en_GB, en_IE, en_NZ, en_US, es, es_AR, es_BO, es_CL, es_CO, es_CR, es_EC, es_GT, es_MX, es_NI, es_PA, es_PE, es_PY, es_SV, es_UY, es_VE, et, fi, fr, fr_BE, fr_CA, fr_CH, it, nl, nl_BE, no, no_NY, pt, pt_BR, sv |
ISO 8859-2 | cz, hr_HR, hu, nr, pl, ro_RO, sk_SK, sl_SI, sq_AL |
ISO 8859-4 | lt, lv |
ISO 8859-5 | bg_BG, mk_MK, sr_SP |
ISO 8859-6 | ar |
ISO 8859-7 | el |
ISO 8859-8 | he, he_IL |
ISO 8859-9 | tr |
ISO 8859-15 | de.ISO8859-15, en_EU.ISO8859-15, es.ISO8859-15, fr.ISO8859-15, it.ISO8859-15, sv.ISO8859-15 |
KOI8-R | ru |
PCK | ja_JP.PCK |
TIS620.2533 | th, th_TH |
UTF-8 | de.UTF-8, en_EU.UTF-8, en_US.UTF-8, es.UTF-8, fr.UTF-8, it.UTF-8, ja_JP.UTF-8, ko.UTF-8, sv.UTF-8 |
Rationale
System Interface Definitions, Issue 5 states that conforming implementations support one or more coded character sets, and that each of these includes the portable character set.
Reference
CAE Specification, System Interface Definitions, Issue 5, Chapter 4, Character Set.
Question 16: What is the implementation's underlying internal codeset?
Response
Rationale
It is useful to be aware of the underlying codeset of the implementation.
Reference
CAE Specification, System Interface Definitions, Issue 5, Chapter 4, Character Set.
Question 17: What networking services or other character-based I/O device types are implemented using STREAMS in addition to pseudo-terminals?
Response
Rationale
System Interfaces and Headers, Issue 5, defines that STREAMS provide a uniform mechanism for implementing networking services and other character-based I/O. However, the specification does not mandate which device or file types should be STREAMS-based, except for requiring that STREAMS-based pseudo-terminals be provided. Although applications are discouraged from making assumptions in this area, it may be that certain applications are sensitive to whether interfaces such as getmsg() and putmsg(), for example, are supported on specific device or file types.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Section 2.5, STREAMS.
Question 18: Does closing the master side of a pseudo-terminal flush all queued input and output?
Response
Yes
Rationale
The behaviour of a conforming implementation in this area is not mandated in the specification and needs to be defined.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Chapter 3, System Interfaces, close().
Question 19: Does closing the slave side of a pseudo-terminal cause a zero-length message to be sent to the master?
Response
Yes
Rationale
The behaviour of a conforming implementation in this area is not mandated in the specification and needs to be defined.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Chapter 3, System Interfaces, close().
Question 20: What naming conventions are associated with the master side of pseudo-terminal devices?
Response
Rationale
This information is not specified in System and Interfaces, Issue 5, and needs to be be defined.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Chapter 3, System Interfaces, open().
Question 21: What types of file can be polled?
Response
Rationale
Conformance requires that the poll() function supports regular files, terminals, pseudo-terminals, STREAMS, sockets, FIFOs and pipes. The behaviour of poll() with regards to other file types needs to be defined.
Reference
CAE Specification, System Interfaces and Headers, Issue 5, Chapter 3, System Interfaces, poll().
Question 22: What is the direction of stack growth?
Rationale
The specification does not define the direction of stack growth
but an application needs this information to define an alternate
stack for signals.
Reference
CAE Specification, System Interfaces and Headers, Issue 4,
Version 2, Chapter 3, System Interfaces, sigstack().
Conformance requires that an implementation supports
alternate signal stacks. The APPLICATION USAGE section of the
sigaltstack() entry describes one method using malloc() to
perform this function. However, the specification does not guarantee
that malloc'ed space can be used in this way, nor does it define a
specific alternate stack allocation routine.
Question 23: Which of the following si_code values may be
generated?
Response
Rationale
An Internationalised System Calls and Libraries Extended V2 conformant
system may contain limitations that prevent some of the above values
from being generated.
Reference
CAE Specification, System Interfaces and Headers, Issue 5,
Chapter 4, Headers, <signal.h>.
Question 24: Does the setpgrp() function create a new
session?
Response
Yes
Rationale
It is unspecified whether or not a successful call to the
setpgrp() function will cause a new session to be created.
Reference
CAE Specification, System Interfaces and Headers, Issue 5,
Chapter 3, System Interfaces, setpgrp().
Question 25: Does the implementation generate a core file when
the following signals are delivered to a process?
Response
Rationale
Implementation-dependent actions, such as creation of a core file,
may occur on abnormal termination of a process.
Reference
CAE Specification, System Interfaces and Headers, Issue 5,
Chapter 4, Headers, <signal.h>.
Question 26: Does the implementation support _POSIX_PRIORITIZED_IO?
Response
The system does not support _POSIX_PRIORITIZED_IO.
Rationale
Support for _POSIX_PRIORITIZED_IO is optional.
Reference
CAE Specification, System Interfaces and Headers, Issue 5,
Section 1.3,2, Realtime.
Question 27: If the Realtime Feature Group is supported, what
asynchronous I/O operations are cancelable with aio_cancel()?
Response
Rationale
The operations which are cancelable are
implementation-dependent.
Reference
CAE Specification, System Interfaces and Headers, Issue 5,
Chapter 3, System Interfaces, aio_cancel().
Question 28: Which functions have cancellation points that occur
when a thread is executing?
Response
Rationale
System Interface Definitions, Issue 5 states that a cancellation
point may occur for these functions.
Reference
CAE Specification, System Interfaces and Headers, Issue 5,
Section 2.8.8.2, Cancellation Points.
Question 29: If the Realtime Threads Feature Group is supported,
what scheduling policy is associated with SCHED_OTHER?
Response
Rationale
System Interface Definitions, Issue 5 states that conforming implementations
must support a scheduling policy identified as SCHED_OTHER but defines
its effects as implementation-dependent.
Reference
CAE Specification, System Interfaces and Headers, Issue 5,
Section 2.7.4, Scheduling Policies.
Question 30: If the Realtime Threads Feature Group is supported, what
scheduling contention scopes are supported: PTHREAD_SCOPE_PROCESS,
PTHREAD_SCOPE_SYSTEM, or both?
Response
Rationale
System Interface Definitions, Issue 5 states that conforming implementations
will support PTHREAD_SCOPE_PROCESS, PTHREAD_SCOPE_SYSTEM, or both.
Reference
CAE Specification, System Interfaces and Headers, Issue 5,
Section 2.8.3, Thread Scheduling Contention Scope.
Question 31: If the Realtime Threads Feature Group is supported, what is
the default scheduling contention scope when a process is created?
Response
Rationale
The specification defines the default scheduling contention scope as
implementation-dependent.
Reference
CAE Specification, System Interfaces and Headers, Issue 5,
Section 2.8.2, Thread Scheduling Attributes.
Question 32: What C-language compilation environments are provided?
Response
Rationale
System Interfaces and Headers, Issue 5 defines these scenarios
as possible C-language compilation environment offerings.
Reference
CAE Specification, System Interfaces and Headers, Issue 5,
Chapter 4, Headers, <unistd.h>.
Question 33: What execution environments are provided on the system under test?
Response
Rationale
System Interfaces and Headers, Issue 5 defines four scenarios
as possible C-language compilation environment offerings but does
not define which corresponding execution environments are supported.
Reference
CAE Specification, System Interfaces and Headers, Issue 5,
Chapter 4, Headers, <unistd.h>.
For information on installing Solaris Express,
see Installation Instructions for Solaris Express.
Note: When installing Solaris Express, select a time zone with a name that
conforms to the POSIX.1 format for TZ defined on page 206-207 of IEEE
Std. 1003.1-1996. For example, use PST8PDT instead of US/Pacific. Numeric Values
Question 3 (1.1.3 Float, Stdio and Limit Values)
LDBL_DIG on SPARC-based systems: 33
LDBL_MAX on SPARC-based systems: 1.189731495357231765085759326628007016E+4932L
LDBL_EPSILON on SPARC-based systems: 1.925929944387235853055977942584927319E-34L
LDBL_MIN on SPARC-based systems: 3.3621031431120935062626778173217522603E-4932L Question 4
Question 6
LONG_MAX for 32-bit systems: 2147483647L
SSIZE_MAX for 32-bit systems: 2147483647L
ULONG_MAX for 32-bit systems: 4294967295UL Files and Directories
Question 13 (1.3.2 Files and Directories) asks if there are additional or
alternate file access control mechanisms implemented that could cause fstat()
or stat() to fail. If the source file has an associated access control
mechanism, the access control mechanism will be copied to the destination
file. If the ACL cannot be associated with the destination file, the copy
will fail.
Stack Growth Direction:
Question 22 (1.8 Stack Growth Direction) concerns the direction of stack growth. The direction of stack growth is implementation-dependent. Use of the sigstack() function requires knowledge of the machine specific architecture.
A portable application wishing to define an alternate stack should use the
sigaltstack() function, which does not require knowledge of the stack growth direction.
Threads Cancellation Points:
Question 28 (1.13.1 Cancellation Points) allows an implementation to specify
which functions have cancellation points that occur when a thread is executing.
Of the list provided, fcntl() has a cancellation point for the case when the
cmd argument is F_SETLKW.
Programming Environment:
Question 32 and 33 (1.15 C-language Compilation Environment) describe the programming and execution environments specific to the 64-bit implementation on SPARC-based systems. Support specific to 32-bit SPARC-based systems and
X86-based systems is as follows:
Programming Environment:
Execution Environment:
Copyright © 2003 Sun Microsystems, Inc.
1.9 Signal Codes
Signal Code Generated?
SIGILL
ILL_ILLOPC
Yes
ILL_ILLOPN
Yes
ILLL_ILLADR
Yes
ILL_ILLTRP
Yes
ILL_PRVOPC
Yes
ILL_PRVREG
Yes
ILL_COPROC
Yes
ILL_BADSTK
Yes
SIGFPE
FPE_INTDIV
Yes
FPE_INTOVF
Yes
FPE_FLTDIV
Yes
FPE_FLTOVF
Yes
FPE_FLTUND
Yes
FPE_FLTRES
Yes
FPE_FLTINV
Yes
FPE_FLTSUB
Yes
SIGSEGV
SEGV_MAPERR
Yes
SEGV_ACCERR
Yes
SIGBUS
BUS_ADRALN
Yes
BUS_ADRERR
Yes
BUS_OBJERR
Yes
SIGTRAP
TRAP_BRKPT
Yes
TRAP_TRACE
Yes
SIGCHLD
CLD_EXITED
Yes
CLD_KILLED
Yes
CLD_DUMPED
Yes
CLD_TRAPPED
Yes
CLD_STOPPED
Yes
CLD_CONTINUED
Yes
SIGPOLL
POLL_IN
Yes
POLL_OUT
Yes
POLL_MSG
Yes
POLL_ERR
Yes
POLL_PRI
Yes
POLL_HUP
Yes
SI_USER
Yes
SI_QUEUE
Yes
SI_TIMER
Yes
SI_ASYNCIO
Yes
SI_MESGQ
Yes
1.10 Set Process Group ID
1.11 Signals Generating a Core File
Signal Core File Generated
SIGABRT
Yes
SIGFPE
Yes
SIGILL
Yes
SIGQUIT
Yes
SIGSEGV
Yes
SIGBUS
Yes
SIGSYS
Yes
SIGTRAP
Yes
SIGXCU
Yes
SIGXFSZ
Yes
1.12 Realtime
1.12.1 Prioritized I/O
1.12.2 Cancelable Asynchronous I/O Operations
1.13 Threads
1.13.1 Cancellation Points
Function Cancellation Point? catclose
No
catgets
No
catopen
No
closedir
No
closelog
No
ctermid
No
dbm_close
No
dbm_delete
No
dbm_fetch
No
dbm_nextkey
No
dbm_open
No
dbm_store
No
dlclose
No
dlopen
No
endgrent
No
endpwent
No
endutxent
No
fclose
No
fcntl
Yes
fflush
No
fgetc
No
fgetpos
No
fgets
No
fgetwc
No
fgetws
No
fopen
No
fprintf
No
fputc
No
fputs
No
fputwc
No
fputws
No
fread
No
freopen
No
fscanf
No
fseek
No
fseeko
No
fsetpos
No
ftell
No
ftello
No
ftw
No
fwprintf
No
fwrite
No
fwscanf
No
getc
No
getc_unlocked
No
getchar
No
getchar_unlocked
No
getcwd
No
getdate
No
getgrent
No
getgrgid
No
getgrgid_r
No
getgrnam
No
getgrnam_r
No
getlogin
No
getlogin_r
No
getpwent
No
getpwnam
No
getpwnam_r
No
getpwuid
No
getpwuid_r
No
gets
No
getutxent
No
getutxid
No
getutxline
No
getw
No
getwc
No
getwchar
No
getwd
No
glob
No
iconv_close
No
iconv_open
No
ioctl
No
lseek
No
mkstemp
No
nftw
No
opendir
No
openlog
No
pclose
No
perror
No
popen
No
printf
No
putc
No
putc_unlocked
No
putchar
No
putchar_unlocked
No
puts
No
pututxline
No
putw
No
putwc
No
putwchar
No
readdir
No
readdir_r
No
remove
No
rename
No
rewind
No
rewinddir
No
scanf
No
seekdir
No
semop
No
setgrent
No
setpwent
No
setutxent
No
strerror
No
syslog
No
tmpfile
No
tmpnam
No
ttyname
No
ttyname_r
No
ungetc
No
ungetwc
No
unlink
No
vfprintf
No
vfwprintf
No
vprintf
No
vwprintf
No
wprintf
No
wscanf
No
1.14 Realtime Threads
1.14.1 Scheduling Policies
1.14.2 Scheduling Contention Scope
Both PTHREAD_SCOPE_PROCESS and PTHREAD_SCOPE_SYSTEM.
1.14.3 Default Scheduling Contention Scope
PTHREAD_SCOPE_PROCESS.
1.15 C-language Compilation Environment
Programming Environment Provided
The implementation provides a C-language programming environment with
32-bit int, long, pointer and off_t types.
Yes
The implementation provides a C-language programming environment with
32-bit int, long and pointer types and an off_t type using at least
64 bits.
Yes
The implementation provides a C-language programming environment with
32-bit int, and 64-bit long, pointer and off_t types.
No
The implementation provides a C-language programming environment with
int using at least 32-bits, and long, pointer and off_t types using
at least 64 bits.
No
Execution Environment Provided
The implementation provides an execution environment with
32-bit int, long, pointer and off_t types.
Yes
The implementation provides an execution environment with
32-bit int, long and pointer types and an off_t type using at least
64 bits.
Yes
The implementation provides an execution environment with
32-bit int, and 64-bit long, pointer and off_t types.
No
The implementation provides an execution environment with
int using at least 32-bits, and long, pointer and off_t types using
at least 64 bits.
No
2. Appendix
This appendix contains additional, explanatory material that was provided by the vendor.
To reproduce the test environment on Solaris Express:
# sed '/^tty[ab]/s/:y:# $/:n:# /p' /etc/saf/zsmon/_pmtab > /tmp/zsfile
# cat /tmp/zsfile > /etc/saf/zsmon/_pmtab
Note: Colons (:) act as field separators in the _pmtab file.
group: files nis
passwd: files nis
# /usr/sbin/eeprom ttya-ignore-cd=false
# /usr/sbin/eeprom ttyb-ignore-cd=false
# sed s/#TZ/TZ/ < /tmp/foo > /tmp/bar
# sed s/##/#/ < /tmp/bar > /etc/default/init
# echo "ttya-ignore-cd=\"F\"" >> /kernel/drv/asy.conf
# echo "ttyb-ignore-cd=\"F\"" >> /kernel/drv/asy.conf
- create with minfree set to 0
- mount and chmod u+rwx
LDBL_MANT_DIG on X86-based systems: 64
LDBL_DIG on X86-based systems: 18
LDBL_MAX on X86-based systems: 1.1897314953572317650213E+4932L
LDBL_EPSILON on X86-based systems: 1.0842021724855044340075E-19L
LDBL_MIN on X86-based systems: 3.3621031431120935062627E-4932L
ARG_MAX for 64-bit systems: 2096640
LONG_BIT for 64-bit systems: 64
LONG_MAX for 64-bit systems: 9223372036854775807L
SSIZE_MAX for 64-bit systems: 9223372036854775807L
ULONG_MAX for 64-bit systems: 18446744073709551615UL
All rights reserved.
3. Change History
Date Name Comment
05-Dec-2002 Kristin Amundsen Changed for Solaris 9 12/02 Intel Platform Edition
19-Mar-2002 Kristin Amundsen Solaris 9 updates.
21-Apr-2000 Lee Damico Re-enty of realtime info
31-Mar-2000 Lee Damico Minor editorial update.
10-Mar-2000 Lee Damico Updated install instructions in appendix.
05-Jan-2000 Lee Damico Updates for Solaris 8.
28-Oct-1998 Lee Damico Additional release version updates.
28-Oct-1998 Lee Damico Release version update.
22-Sep-1998 Lee Damico Updated Appendix with specific info for question 13.
08-Jan-2003 Kristin Amundsen Updates for Solaris Express 03/03
21-Sep-1998 Lee Damico Document creation.
Copyright © 1998-2011 The Open Group. All Rights Reserved.
[ Home ]
[ The Open Brand ]
[ Conformance Statement Library ]
[ Search Conformance Statements ]
[ Send Feedback ]