I've converted all the man pages so far into roff format.
This commit is contained in:
+119
-104
@@ -1,104 +1,119 @@
|
||||
11/3/70 FILE SYSTEM (V)
|
||||
|
||||
|
||||
NAME format of file system
|
||||
|
||||
SYNOPSIS
|
||||
|
||||
DESCRIPTION The RB09 fixed head disk has 8,000 64-word blocks on
|
||||
each of its two surfaces. Unix uses the second surface
|
||||
(physical blocks 8,000 to 15,999) and numbers them
|
||||
from logical block 0 to logical block 7,999. The following
|
||||
discussion refers to logical blocks.
|
||||
|
||||
The Unix filesystem is divided into 8,000 blocks of 64 words
|
||||
per block. Block 0 is the "sysdata" block. The first word
|
||||
points to the first block of the free-storage map. Each block
|
||||
in the free-storage map is structured as follows: the first
|
||||
word is the block number of the next block in the free-storage
|
||||
map, or zero if this is the end of the free-storage map. The
|
||||
next nine words hold free block numbers, or zero (no block number).
|
||||
|
||||
Block 1 on the filesystem is unused. (?)
|
||||
|
||||
I-numbers begin at 1, and the storage for i-nodes begins at
|
||||
block 2. Blocks 2 to 711 contain the i-nodes, with five
|
||||
consecutive i-nodes per block. Certain i-nodes are reserved for
|
||||
special files, directories and devices:
|
||||
|
||||
1 The core file written by "sys save" or a bad system call
|
||||
2 The "dd" directory directory
|
||||
3 The "system" directory
|
||||
6 The "ttyin" special file
|
||||
7 The "keyboard" (graphic-2) special file
|
||||
8 The "pptin" (paper tape reader) special file
|
||||
10 The "ttyout" special file
|
||||
11 The "display" (graphic-2) special file
|
||||
12 The "pptout" (paper tape punch) special file
|
||||
|
||||
|
||||
There is only one file system which is always mounted;
|
||||
it resides on the RB disk. This device is also used for
|
||||
swapping. The swap areas are at the high blocks on this device:
|
||||
blocks 6,400 to 7,999. These blocks do not appear in the free list.
|
||||
|
||||
Each i-node represents one file. The format of
|
||||
an i-node is as follows, where the left column represents
|
||||
the offset in words from the beginning of the i-node:
|
||||
|
||||
0 flags (see below)
|
||||
1 first indirect block or contents block
|
||||
...
|
||||
7 seventh indirect block or contents block
|
||||
8 user ID of owner
|
||||
9 link count
|
||||
10 size in words
|
||||
11 unique value assigned at creation
|
||||
|
||||
The flags are as follows:
|
||||
|
||||
400000 i-node is allocated
|
||||
200000 large file
|
||||
?????? allocated bit (always on)
|
||||
000040 special file
|
||||
000020 directory
|
||||
000010 read, owner
|
||||
000004 write, owner
|
||||
000002 read, non-owner
|
||||
000001 write, non-owner
|
||||
|
||||
The allocated bit (flag ??????) is believed even if the i-node
|
||||
map says the i-node is free; thus corruption of the map may
|
||||
cause i-nodes to become unallocatable, but will not cause active
|
||||
nodes to be reused.
|
||||
|
||||
Word number n of a file is accessed as follows: n is
|
||||
divided by 64 to find its logical block number (say b) in
|
||||
the file. If the file is small (flag 200000 is 0), then b
|
||||
must be less than 7, and the physical block number corresponding
|
||||
to b is the bth entry in the address portion of the i-node.
|
||||
|
||||
If the file is large, b is divided by 64 to yield a number
|
||||
which must be less than 8 (or the file is too large for
|
||||
UNIX to handle). The corresponding slot in the i-node
|
||||
address portion gives the physical block number of an
|
||||
indirect block. The residue mod 64 gives a word offset
|
||||
in the indirect block, and the word found there is the
|
||||
physical address of the block corresponding to b.
|
||||
|
||||
If block b in a file exists, it is not necessary that all
|
||||
blocks less than b exist. A zero block number either in the
|
||||
address words of the i-node or in an indirect block
|
||||
indicates that the corresponding block has never been
|
||||
allocated. Such a missing block reads as if it contained
|
||||
all zero words.
|
||||
|
||||
FILES
|
||||
|
||||
SEE ALSO format of directories
|
||||
|
||||
DIAGNOSTICS
|
||||
|
||||
BUGS
|
||||
|
||||
OWNER
|
||||
.oh '11/3/70''FILE SYSTEM(V)'
|
||||
.ta 18 21 24
|
||||
NAME format of file system
|
||||
.sp
|
||||
SYNOPSIS --
|
||||
.sp
|
||||
DESCRIPTION The RB09 fixed head disk has 8,000 64-word
|
||||
blocks on each of its two surfaces. Unix uses
|
||||
the second surface (physical blocks 8,000 to
|
||||
15,999) and numbers them from logical block 0 to
|
||||
logical block 7,999. The following discussion
|
||||
refers to logical blocks.
|
||||
.sp
|
||||
The Unix filesystem is divided into 8,000 blocks
|
||||
of 64 words per block. Block 0 is the "sysdata"
|
||||
block. The first word points to the first block
|
||||
of the free-storage map. Each block in the
|
||||
free-storage map is structured as follows: the
|
||||
first word is the block number of the next block
|
||||
in the free-storage map, or zero if this is the
|
||||
end of the free-storage map. The next nine words
|
||||
hold free block numbers, or zero (no block
|
||||
number).
|
||||
.sp
|
||||
Block 1 on the filesystem is unused. (?)
|
||||
.sp
|
||||
I-numbers begin at 1, and the storage for
|
||||
i-nodes begins at block 2. Blocks 2 to 711
|
||||
contain the i-nodes, with five consecutive
|
||||
i-nodes per block. Certain i-nodes are reserved
|
||||
for special files, directories and devices:
|
||||
.sp
|
||||
1 The core file written by "sys save" or a
|
||||
bad system call
|
||||
2 The "dd" directory directory
|
||||
3 The "system" directory
|
||||
6 The "ttyin" special file
|
||||
7 The "keyboard" (graphic-2) special file
|
||||
8 The "pptin" (paper tape reader) special
|
||||
file
|
||||
10 The "ttyout" special file
|
||||
11 The "display" (graphic-2) special file
|
||||
12 The "pptout" (paper tape punch) special
|
||||
file
|
||||
.sp
|
||||
There is only one file system which is always
|
||||
mounted; it resides on the RB disk. This device
|
||||
is also used for swapping. The swap areas are at
|
||||
the high blocks on this device: blocks 6,400 to
|
||||
7,999. These blocks do not appear in the free
|
||||
list.
|
||||
.sp
|
||||
Each i-node represents one file. The format of
|
||||
an i-node is as follows, where the left column
|
||||
represents the offset in words from the
|
||||
beginning of the i-node:
|
||||
.sp
|
||||
0 flags (see below)
|
||||
1 first indirect block or contents block
|
||||
...
|
||||
7 seventh indirect block or contents block
|
||||
8 user ID of owner
|
||||
9 link count
|
||||
10 size in words
|
||||
11 unique value assigned at creation
|
||||
.sp
|
||||
The flags are as follows:
|
||||
.sp
|
||||
400000 i-node is allocated
|
||||
200000 large file
|
||||
?????? allocated bit (always on)
|
||||
000040 special file
|
||||
000020 directory
|
||||
000010 read, owner
|
||||
000004 write, owner
|
||||
000002 read, non-owner
|
||||
000001 write, non-owner
|
||||
.sp
|
||||
The allocated bit (flag ??????) is believed even
|
||||
if the i-node map says the i-node is free; thus
|
||||
corruption of the map may cause i-nodes to
|
||||
become unallocatable, but will not cause active
|
||||
nodes to be reused.
|
||||
.sp
|
||||
Word number n of a file is accessed as follows:
|
||||
n is divided by 64 to find its logical block
|
||||
number (say b) in the file. If the file is small
|
||||
(flag 200000 is 0), then b must be less than 7,
|
||||
and the physical block number corresponding to b
|
||||
is the bth entry in the address portion of the
|
||||
i-node.
|
||||
.sp
|
||||
If the file is large, b is divided by 64 to
|
||||
yield a number which must be less than 8 (or
|
||||
the file is too large for UNIX to handle).
|
||||
The corresponding slot in the i-node address
|
||||
portion gives the physical block number of an
|
||||
indirect block. The residue mod 64 gives a
|
||||
word offset in the indirect block, and the
|
||||
word found there is the physical address of
|
||||
the block corresponding to b.
|
||||
.sp
|
||||
If block b in a file exists, it is not necessary
|
||||
that all blocks less than b exist. A zero block
|
||||
number either in the address words of the i-node
|
||||
or in an indirect block indicates that the
|
||||
corresponding block has never been allocated.
|
||||
Such a missing block reads as if it contained
|
||||
all zero words.
|
||||
.sp
|
||||
FILES --
|
||||
.sp
|
||||
SEE ALSO format of directories
|
||||
.sp
|
||||
DIAGNOSTICS --
|
||||
.sp
|
||||
BUGS --
|
||||
.sp
|
||||
OWNER ken
|
||||
|
||||
Reference in New Issue
Block a user