Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ types(5) — sys5 — Apollo Domain/OS SR10.3.5

Media Vault

Software Library

Restoration Projects

Artifacts Sought

TYPES(5)                             SysV                             TYPES(5)



NAME
     types - primitive system data types

SYNOPSIS
     #include <sys/types.h>

DESCRIPTION
     Most of the following data types, defined in <sys/types.h>, are used in
     Domain/OS SysV system code.  Some of these data types are accessible to
     user code as well.

     The following types are defined if <sys/types.h> is included and the -A
     ansi option to cc(1) is used:

     typedef  long           dev_t;   /* <old device number> type */
     typedef  unsigned long  ino_t;   /* <inode> type */
     typedef  unsigned long  mode_t;  /* file attributes */
     typedef  short          nlink_t; /* link count */

     typedef  int            __gid_t;
     typedef  long           __off_t;
     typedef  int            __pid_t;
     typedef  long           ssize_t;
     typedef  unsigned long  size_t;
     typedef  int            __uid_t;

     typedef  __gid_t        gid_t;   /* group ID */
     typedef  __off_t        off_t;   /* <offset> type */
     typedef  __pid_t        pid_t;   /* process id/process group id*/
     typedef  __uid_t        uid_t;   /* user ID */

     The following are defined, in addition to the above, if the -A nansi or
     -A xansi option is used:

     typedef  long            key_t;       /* IPC key type */

     typedef  long            clock_t;
     typedef  long            time_t;

     typedef  struct { int r[1]; } *       physadr;

     typedef  long            daddr_t;     /* <disk address> type */
     typedef  char *          caddr_t;     /* ?<core address> type */

     typedef  unsigned char   unchar;
     typedef  unsigned short  ushort;
     typedef  unsigned int    uint;
     typedef  unsigned long   ulong;

     typedef  short           cnt_t;       /* ?<count> type */
     typedef  int             label_t[10];
     typedef  long            paddr_t;     /* <physical address> type */
     typedef  unsigned char   use_t;       /* use count for swap. */
     typedef  short           sysid_t;
     typedef  short           index_t;
     typedef  short           lock_t;      /* lock work for busy wait */

     /*
      * Distributed UNIX hook
      */
     typedef  struct cookie {
              long            c_sysid;
              long            c_rcvd;
     } *cookie_t;

     typedef  int             oid_t;       /* organization ID */

     The form daddr_t is used for disk addresses.  Times are encoded in
     seconds since 00:00:00 GMT, January 1, 1970.  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.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026