ref: 02b0b4dfb5a5bcc8971d5c15b2e9761b3fb59508
dir: /sys/doc/fs/p0/
.HTML "The 64-bit Standalone Plan 9 File Server .de Ex .TA 0.5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i .P1 .TA 0.5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i .. .de Ee .P2 .. .EQ delim $$ .EN .FP lucidasans .TL The 64-bit Standalone Plan 9 File Server .AU Ken Thompson* .CW ken@plan9.bell-labs.com .FS \l'4i' .br * now .\" .CW ken@entrisphere.com .CW ken@google.com .FE .AU Geoff Collyer .CW geoff@plan9.bell-labs.com .AI .MH .AB This paper is a revision of Thompson's .I "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 .CW kfs . .PP 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 .I cwfs (4). .AE .SH Introduction .PP The 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. .PP The file server .I 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 .I vlong (signed .I "long long" integer), but 63 bits should suffice for a little while.