Warning: Attempt to read property "date" on null in /usr/local/www/websvn.planix.org/blame.php on line 247

Warning: Attempt to read property "msg" on null in /usr/local/www/websvn.planix.org/blame.php on line 247
WebSVN – planix.SVN – Blame – /os/branches/feature_unix/sys/doc/fs/p0 – Rev 2

Subversion Repositories planix.SVN

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
.HTML "The 64-bit Standalone Plan 9 File Server
2
.de Ex
3
.TA 0.5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i
4
.P1
5
.TA 0.5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i
6
..
7
.de Ee
8
.P2
9
..
10
 
11
.EQ
12
delim $$
13
.EN
14
.FP lucidasans
15
 
16
.TL
17
The 64-bit Standalone Plan 9 File Server
18
.AU
19
Ken Thompson*
20
.CW ken@plan9.bell-labs.com
21
.FS
22
\l'4i'
23
.br
24
* now
25
.\" .CW ken@entrisphere.com
26
.CW ken@google.com
27
.FE
28
.AU
29
Geoff Collyer
30
.CW geoff@plan9.bell-labs.com
31
.AI
32
.MH
33
.AB
34
This paper is a revision of Thompson's
35
.I "The Plan 9 File Server" ,
36
and describes the structure
37
and the operation of the new 64-bit Plan 9 file servers.
38
Some specifics apply to the 32-bit
39
Plan 9 file server
40
Emelie,
41
which code is also the basis for
42
the user-level file server
43
.CW kfs .
44
.PP
45
In 2004,
46
Collyer created a 64-bit version of
47
Thompson's 32-bit file server, updating all file
48
offsets, sizes and block numbers to 64 bits.
49
In addition, triple- and quadruple-indirect
50
blocks were implemented.
51
File name components were extended from 27 to 55 bytes.
52
This code is also the basis for the user-level file server
53
.I cwfs (4).
54
.AE
55
.SH
56
Introduction
57
.PP
58
The Plan 9 file server
59
Emelie
60
is the oldest piece of system software
61
still in use on Plan 9.
62
It evolved from a user-level program that served
63
serial lines on a Sequent multi-processor.
64
The current implementation is neither clean nor
65
portable,
66
but it has slowly come to terms with
67
its particular set of cranky computers
68
and devices.
69
.PP
70
The file server
71
.I fs64
72
runs a revision of Emelie's code
73
with 64-bit file sizes, offsets and block numbers
74
and indirect blocks from single to quadruple.
75
Actually these are 63-bit values, since the type used is
76
.I vlong
77
(signed
78
.I "long long"
79
integer),
80
but 63 bits should suffice for a little while.