1 .TA 0.5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i ..
2 .. delim $$ .EN .FP lucidasans
The 64-bit Standalone Plan 9 File Server .AU Ken Thompson* ken@plan9.bell-labs.com .FS \l'4i'
* now
.CW ken@entrisphere.com
ken@google.com .FE
.AU
Geoff Collyer
geoff@plan9.bell-labs.com .AI
.MH
.AB
This paper is a revision of Thompson's
"The Plan 9 File Server" , and describes the structure
and the operation of the new 64-bit Plan 9 file servers.
Some specifics apply to the 32-bit
Plan 9 file server
Emelie,
which code is also the basis for
the user-level file server
kfs .
In 2004, Collyer created a 64-bit version of Thompson's 32-bit file server, updating all file offsets, sizes and block numbers to 64 bits. In addition, triple- and quadruple-indirect blocks were implemented. File name components were extended from 27 to 55 bytes. This code is also the basis for the user-level file server cwfs (4). .AE
IntroductionThe Plan 9 file server Emelie is the oldest piece of system software still in use on Plan 9. It evolved from a user-level program that served serial lines on a Sequent multi-processor. The current implementation is neither clean nor portable, but it has slowly come to terms with its particular set of cranky computers and devices.
The file server fs64 runs a revision of Emelie's code with 64-bit file sizes, offsets and block numbers and indirect blocks from single to quadruple. Actually these are 63-bit values, since the type used is vlong (signed "long long" integer), but 63 bits should suffice for a little while.