TYPES.H(7) Miscellaneous Information Manual TYPES.H(7)

sys/types.hdata types

#include <sys/types.h>

The <sys/types.h> header shall include definitions for at least the following types:

Used for file block counts.
Used for block sizes.
[XSI] Used for system times in clock ticks or CLOCKS_PER_SEC; see <time.h> .
[TMR] Used for clock ID type in the clock and timer functions.
Used for device IDs.
[XSI] Used for file system block counts.
[XSI] Used for file system file counts.
Used for group IDs.
[XSI] Used as a general identifier; can be used to contain at least a pid_t , uid_t , or gid_t .
Used for file serial numbers.
[XSI] Used for XSI interprocess communication.
Used for some file attributes.
Used for link counts.
Used for file sizes.
Used for process IDs and process group IDs.
[THR] Used to identify a thread attribute object.
[BAR] Used to identify a barrier.
[BAR] Used to define a barrier attributes object.
[THR] Used for condition variables.
[THR] Used to identify a condition attribute object.
[THR] Used for thread-specific data keys.
[THR] Used for mutexes.
[THR] Used to identify a mutex attribute object.
[THR] Used for dynamic package initialization.
[THR] Used for read-write locks.
[THR] Used for read-write lock attributes.
[SPI] Used to identify a spin lock.
[THR] Used to identify a thread.
Used for sizes of objects.
Used for a count of bytes or an error indication.
[XSI] Used for time in microseconds.
Used for time in seconds.
[TMR] Used for timer ID returned by () .
[TRC] Used to identify a trace stream attributes object.
[TRC] Used to identify a trace event type.
[TRC TEF] Used to identify a trace event type set.
[TRC] Used to identify a trace stream.
Used for user IDs.
[XSI] Used for time in microseconds.

All of the types shall be defined as arithmetic types of an appropriate length, with the following exceptions:

[XSI] key_t [THR] pthread_attr_t [BAR] pthread_barrier_t pthread_barrierattr_t [THR] pthread_cond_t pthread_condattr_t pthread_key_t pthread_mutex_t pthread_mutexattr_t pthread_once_t pthread_rwlock_t pthread_rwlockattr_t [SPI] pthread_spinlock_t [THR] pthread_t [TRC] trace_attr_t trace_event_id_t trace_event_set_t [TRC] trace_id_t

Additionally:

  • shall be an integer type.
  • and off_t shall be signed integer types.
  • fsblkcnt_t, fsfilcnt_t, and ino_t shall be defined as unsigned integer types.
  • shall be an unsigned integer type.
  • , pid_t, and ssize_t shall be signed integer types.
  • and clock_t shall be integer or real-floating types.

The type ssize_t shall be capable of storing values at least in the range [-1, {SSIZE_MAX}]. [XSI] The type useconds_t shall be an unsigned integer type capable of storing values at least in the range [0, 1000000]. The type suseconds_t shall be a signed integer type capable of storing values at least in the range [-1, 1000000].

The implementation shall support one or more programming environments in which the widths of blksize_t, pid_t, size_t, ssize_t, suseconds_t, and useconds_t are no greater than the width of type . The names of these programming environments can be obtained using the confstr(3) function or the getconf(1) utility.

There are no defined comparison or assignment operators for the following types:

[THR] pthread_attr_t [BAR] pthread_barrier_t pthread_barrierattr_t [THR] pthread_cond_t pthread_condattr_t pthread_mutex_t pthread_mutexattr_t pthread_rwlock_t pthread_rwlockattr_t [SPI] pthread_spinlock_t [TRC] trace_attr_t

None.

None.

None.

<time.h>, the System Interfaces volume of IEEE Std 1003.1-2001 (“POSIX.1”), confstr(3), the Shell and Utilities volume of IEEE Std 1003.1-2001 (“POSIX.1”), getconf(1)

First released in Issue 1. Derived from Issue 1 of the SVID.

The clockid_t and timer_t types are defined for alignment with the POSIX Realtime Extension.

The types blkcnt_t, blksize_t, fsblkcnt_t, fsfilcnt_t, and suseconds_t are added.

Large File System extensions are added.

Updated for alignment with the POSIX Threads Extension.

The pthread_barrier_t, pthread_barrierattr_t, and pthread_spinlock_t types are added for alignment with IEEE Std 1003.1j-2000.

The margin code is changed from XSI to THR for the pthread_rwlock_t and pthread_rwlockattr_t types as Read-Write Locks have been absorbed into the POSIX Threads option. The threads types are marked THR.

IEEE Std 1003.1-2001 (“POSIX.1”)/Cor 2-2004, item XBD/TC2/D6/26 is applied, adding pthread_t to the list of types that are not required to be arithmetic types, thus allowing pthread_t to be defined as a structure.

footer end

January 1, 2004 posix.fail