Annotation of coherent/f/usr/include.78/sys/filsys.h, revision 1.1.1.1

1.1       root        1: /* (-lgl
                      2:  *     COHERENT Version 3.2.1
                      3:  *     Copyright (c) 1982, 1992 by Mark Williams Company.
                      4:  *     All rights reserved. May not be copied without permission.
                      5:  -lgl) */
                      6: /*
                      7:  * Super block.
                      8:  */
                      9: 
                     10: #ifndef         __SYS_FILSYS_H__
                     11: #define  __SYS_FILSYS_H__
                     12: 
                     13: #include <sys/types.h>
                     14: #include <sys/fblk.h>
                     15: #include <sys/_time.h>
                     16: 
                     17: 
                     18: /*
                     19:  * Size definitions.
                     20:  */
                     21: #define NICINOD        100                     /* Number of free in core inodes */
                     22: #define BSIZE  512                     /* Block size */
                     23: #define INOPB  8                       /* Number of inodes per block */
                     24: #define BOOTBI 0                       /* Boot block index */
                     25: #define SUPERI 1                       /* Super block index */
                     26: #define INODEI 2                       /* Inode block index */
                     27: #define BADFIN 1                       /* Bad block inode number */
                     28: #define ROOTIN 2                       /* Root inode number */
                     29: 
                     30: /*
                     31:  * Super block.
                     32:  */
                     33: struct filsys {
                     34:        unsigned short s_isize;         /* Firt block not in inode list */
                     35: #pragma align 2
                     36:        daddr_t  s_fsize;               /* Size of entire volume */
                     37: #pragma align
                     38:        short    s_nfree;               /* Number of addresses in s_free */
                     39:        daddr_t  s_free[NICFREE];       /* Free block list */
                     40:        short    s_ninode;              /* Number of inodes in s_inode */
                     41:        ino_t    s_inode[NICINOD];      /* Free inode list */
                     42:        char     s_flock;               /* Not used */
                     43:        char     s_ilock;               /* Not used */
                     44:        char     s_fmod;                /* Super block modified flag */
                     45:        char     s_ronly;               /* Mounted read only flag */
                     46: #pragma align 2
                     47:        time_t   s_time;                /* Last super block update */
                     48:        daddr_t  s_tfree;               /* Total free blocks */
                     49: #pragma align
                     50:        ino_t    s_tinode;              /* Total free inodes */
                     51:        short    s_m;                   /* Interleave factor */
                     52:        short    s_n;                   /* Interleave factor */
                     53:        char     s_fname[6];            /* File system name */
                     54:        char     s_fpack[6];            /* File system pack name */
                     55:        long     s_unique;              /* Unique number */
                     56: };
                     57: 
                     58: /*
                     59:  * Functions.
                     60:  */
                     61: #define iblockn(ino)   (INODEI+(ino-1)/INOPB)
                     62: #define iblocko(ino)   ((ino-1)%INOPB)
                     63: 
                     64: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.