Ausam/sys/filsys.h

Find at most related files.
including files from this version of Unix.

/*
 * Definition of the unix super block.
 * The root super block is allocated and
 * read in iinit/alloc.c. Subsequently
 * a super block is allocated and read
 * with each mount (smount/sys3.c) and
 * released with unmount (sumount/sys3.c).
 * A disk block is ripped off for storage.
 * See alloc.c for general alloc/free
 * routines for free list and I list.
 */
struct	filsys
{
	unsigned s_isize;	/* size in blocks of I list */ /* fix000 */
	unsigned s_fsize;	/* size in blocks of entire volume */ /* fix000 */
	int	s_nfree;	/* number of in core free blocks (0-100) */
	unsigned s_free[100];	/* in core free blocks */ /* fix000 */
	int	s_ninode;	/* number of in core I nodes (0-100) */
	int	s_inode[100];	/* in core free I nodes */
	char	s_flock;	/* lock during free list manipulation */
	char	s_ilock;	/* lock during I list manipulation */
	char	s_fmod;		/* super block modified flag */
	char	s_ronly;	/* mounted read-only flag */
	long	s_time;		/* current date of last update */  /* fix000 */
	unsigned s_ilowa;	/* lowest block with a free inode  fix026 */
	int	pad[47];
};

/*
 * ilock codes			fix026
 */
#define	S_BUSY		01	/* ialloc in progress */
#define S_WANTED	02	/* want to ialloc */