xref: /plan9/sys/doc/fs/p0 (revision e06f534bbaa4097bc6f4764ef1dd2dc3338fbd40)
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
12delim $$
13.EN
14.FP lucidasans
15
16.TL
17The 64-bit Standalone Plan 9 File Server
18.AU
19Ken Thompson*
20ken@plan9.bell-labs.com
21.FS
22\l'4i'
23.br
24* now
25.CW ken@entrisphere.com
26.FE
27.AU
28Geoff Collyer
29.CW geoff@collyer.net
30.AB
31This paper is a revision of Thompson's
32.I "The Plan 9 File Server" ,
33and describes the structure
34and the operation of the new 64-bit Plan 9 file servers.
35Some specifics apply to the 32-bit
36Plan 9 file server
37Emelie,
38which code is also the basis for
39the user level file server
40.CW kfs .
41.PP
42Collyer recently created a 64-bit version of
43Thompson's 32-bit file server, updating all file
44offsets, sizes and block numbers to 64 bits.
45In addition, triple- and quadruple-indirect
46blocks were implemented.
47File name components were extended from 27 to 55 bytes.
48Further work is planned, notably improved peripheral and protocol support.
49.AE
50.SH
51Introduction
52.PP
53The Plan 9 file server
54Emelie
55is the oldest piece of system software
56still in use on Plan 9.
57It evolved from a user-level program that served
58serial lines on a Sequent multi-processor.
59The current implementation is neither clean nor
60portable,
61but it has slowly come to terms with
62its particular set of cranky computers
63and devices.
64.PP
65The file server
66.I fs64
67runs a revision of Emelie's code
68with 64-bit file sizes, offsets and block numbers
69and indirect blocks from single to quadruple.
70Actually these are 63-bit values, since the type used is
71.I vlong
72(signed
73.I "long long"
74integer),
75but 63 bits should suffice for a little while.
76