types(5) [ultrix man page]
types(5) File Formats Manual types(5) Name types - primitive system data types Syntax #include <sys/types.h> Description The data defined in the include file are used in UNIX system code. Some data of these are accessible to user code: #ifndef _TYPES_ #define _TYPES_ /* major part of a device */ #define major(x) ((int)(((unsigned)(x)>>8)&0377)) /* minor part of a device */ #define minor(x) ((int)((x)&0377)) /* make a device number */ #define makedev(x,y) ((dev_t)(((x)<<8) | (y))) typedef unsigned char u_char; typedef unsigned short u_short; typedef unsigned int u_int; typedef unsigned long u_long; typedef unsigned short ushort; /* sys III compat */ #ifdef mips typedef struct _physadr { int r[1]; } *physadr; typedef struct label_t { int val[12]; } label_t; #endif typedef struct _quad { long val[2]; } quad; typedef long daddr_t; typedef char * caddr_t; typedef u_long ino_t; typedef long swblk_t; typedef int size_t; typedef int time_t; typedef short dev_t; typedef int off_t; typedef struct fd_set { int fds_bits[1]; } fd_set; #endif The form daddr_t is used for disk addresses except in an i-node on disk. For further information, see Times are encoded in seconds since 00:00:00 GMT, January 1, 1970. The major and minor parts of a device code specify kind and unit number of a device and are installation- dependent. Offsets are measured in bytes from the beginning of a file. The label_t variables are used to save the processor state while another process is running. See Also dbx(1), lseek(2), time(3), fs(5) RISC types(5)
Check Out this Related Man Page
TYPES(5) BSD File Formats Manual TYPES(5) NAME
types -- system data types SYNOPSIS
#include <sys/types.h> DESCRIPTION
The file sys/types.h contains the defined data types used in the kernel (most are used through out the system). #ifndef _TYPES_H_ #define _TYPES_H_ typedef short dev_t; #ifndef _POSIX_SOURCE /* major part of a device */ #define major(x) ((int)(((unsigned)(x)>>8)&0377)) /* minor part of a device */ #define minor(x) ((int)((x)&0377)) /* make a device number */ #define makedev(x,y) ((dev_t)(((x)<<8) | (y))) #endif typedef unsigned char u_char; typedef unsigned short u_short; typedef unsigned int u_int; typedef unsigned long u_long; typedef unsigned short ushort; /* Sys V compatibility */ #include <machine/ansi.h> #if !defined(_ANSI_SOURCE) && !defined(_POSIX_SOURCE) #include <machine/types.h> #endif #ifdef _CLOCK_T_ typedef _CLOCK_T_ clock_t; #undef _CLOCK_T_ #endif #ifdef _SIZE_T_ typedef _SIZE_T_ size_t; #undef _SIZE_T_ #endif #ifdef _TIME_T_ typedef _TIME_T_ time_t; #undef _TIME_T_ #endif #ifndef _POSIX_SOURCE typedef struct _uquad { unsigned long val[2]; } u_quad; typedef struct _quad { long val[2]; } quad; #endif typedef long * qaddr_t; /* should be typedef quad * qaddr_t; */ typedef long daddr_t; typedef char * caddr_t; typedef u_long ino_t; typedef long swblk_t; typedef long segsz_t; typedef long off_t; typedef u_short uid_t; typedef u_short gid_t; typedef short pid_t; typedef u_short nlink_t; typedef u_short mode_t; typedef u_long fixpt_t; #ifndef _POSIX_SOURCE #define NBBY 8 /* number of bits in a byte */ /* * Select uses bit masks of file descriptors in longs. These macros * manipulate such bit fields (the filesystem macros use chars). * FD_SETSIZE may be defined by the user, but the default here should * be >= NOFILE (param.h). */ #ifndef FD_SETSIZE #define FD_SETSIZE 1024 #endif typedef long fd_mask; #define NFDBITS (sizeof(fd_mask) * NBBY) /* bits per mask */ #ifndef howmany #define howmany(x, y) (((x)+((y)-1))/(y)) #endif typedef struct fd_set { fd_mask fds_bits[howmany(FD_SETSIZE, NFDBITS)]; } fd_set; #define FD_SET(n, p) ((p)->fds_bits[(n)/NFDBITS] |= (1 << ((n) % NFDBITS))) #define FD_CLR(n, p) ((p)->fds_bits[(n)/NFDBITS] &= ~(1 << ((n) % NFDBITS))) #define FD_ISSET(n, p) ((p)->fds_bits[(n)/NFDBITS] & (1 << ((n) % NFDBITS))) #define FD_ZERO(p) bzero((char *)(p), sizeof(*(p))) #endif /* !_POSIX_SOURCE */ #endif /* !_TYPES_H_ */ SEE ALSO
fs(5), time(3), lseek(2), adb(1) HISTORY
A types file appeared in Version 7 AT&T UNIX. Darwin AUGUST 2, 2001 Darwin