【正文】
n files are stored in a doublylinked list (pointed to by first_file)。 the file descriptor that is used in POSIX style routines (open, read, write) is the index of a particular open file in this linked list. Subsystem StructureFigure 6: File Subsystem Structure Subsystem DependenciesFigure 7: File Subsystem DependenciesFigure 7 shows how the file system is dependent on other kernel subsystems. Again, the file system depends on all other kernel subsystems, and all other kernel subsystems depend on the file subsystem. In particular, the network subsystem depends on the file system because network sockets are presented to user processes as file descriptors. The memory manager depends on the file system to support swapping. The IPC subsystem depends on the file system for implementing pipes and FIFO’s. The process scheduler depends on the file system to load loadable modules.The file system uses the network interface to support NFS。 it uses the memory manager to implement the buffer cache and for a ramdisk device。 it uses the IPC subsystem to help support loadable modules, and it uses the process scheduler to put user processes to sleep while hardware requests are pleted. For more details, see [PBS:].