types(5)
NAME
types − primitive system data types
SYNTAX
#include <sys/types.h>
DESCRIPTION
The data types defined in the include file are used in the ULTRIX-11 system code. Some data of these types are accessible to user code:
#ifndef __TYPES__
#define __TYPES__
typedef long daddr_t; /* disk address */
typedef char * caddr_t; /* core address */
typedef unsigned int ino_t; /* i-node number */
typedef long time_t; /* a time */
typedef int label_t[7];/* program status */
typedef int dev_t; /* device code */
typedef long off_t; /* offset in file */
typedef char bool_t; /* Boolean */
typedef unsigned short comp_t; /* "floating tp": */
/* 3 bits base 8 exp, */
/* 13 bits fraction */
typedef unsigned memaddr; /* core or swap address */
typedef struct {short r[1];}* physadr;
typedef unsigned size_t; /* size of process segments */
typedef long ubadr_t; /* UNIBUS address */
typedef unsigned short u_short
typedef short void; /* So Ritchie C compiler */
/* won’t die */
/* selectors and constructor for device code */
#define major(x) (int)((unsigned)x>>8))
#define minor(x) (int)(x&0377)
#define makedev(x,y) (dev_t)((x)<<8|(y))
#endif
The form daddr_t is used for disk addresses except in an inode on disk. For further information, see filsys(5). 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.