Phoenix File System




Although we plan to support many popular File Systems (FS's), including FAT, NTFS, HPFS, and others, we are also developing our own file system for Phoenix dubbed the Phoenix File System (PFS). PFS will use a node structure similar to the i-nodes found in most UNIX FS's. It also borrows ideas from other OS's. For example, the method used to keep track of free space versus used space as well as the idea of keeping directory information near the center of the disk is borrowed from HPFS.

As discussed in the documentation, PFS consists of several layers. At the bottom layer is the hardware device driver. The sole responsibility of the device driver is to read and write individual logical sectors, which includes translating logical sectors into physical locations on a storage device. The rest of the file system uses logical sector numbers to keep track of location. The next layer determines which logical sectors are used and which are free. The third layer groups data in data-chains, which are then grouped together to form data-trees. Each file node has three data-trees, one for the actual file data, one for Extended Attributes, and one for security information. These data-trees are controlled by the file nodes, which are very similar to i-nodes in UNIX. The file node is the file. It contains all the data about the file except for the name. The final layer is the directory structure, which contains the directory tree and filenames, with each filename having a link to a file node. Thus, files can be easily mirrored as two directory entries may link to the same file node.

To do:


Revision history of documentation:

Version 1.33a - 10/30/97

Version 1.33 - 7/07/97

Version 1.32 - 6/28/97

Version 1.31 - 6/22/97

Version 1.30 - 6/19/97

Version 1.21 - 3/19/97

Version 1.20a - 3/17/97

Version 1.20 - 1/25/97

Version 1.14 - 1/16/97

Version 1.13 - 1/11/97

Version 1.12 - 1/10/97

Version 1.11 - Obsolete

Version 1.10 - Obsolete

Version 1.01 - Obsolete

Version 1.00 - Obsolete


[Home] [Document Sets]
This site maintained by John Baldwin and Kelly Yancey.