Component Structure of the Logical File System

The logical file system is divided into system calls, logical file system file routines, and v-nodes components.

  • System calls

    Implement services exported to users. System calls that carry out file system requests do the following:

    • Map the user's parameters to a file system object. This requires that the system call component use the v-node (virtual node) component to follow the object's path name. In addition, the system call must resolve a file descriptor or establish implicit (mapped) references using the open file component.
    • Verify that a requested operation is applicable to the type of the specified object.
    • Dispatch a request to the file system implementation to perform operations.
  • Logical file system file routines

    Manage open file table entries and per-process file descriptors. An open file table entry records the authorization of a process's access to a file system object. A user can refer to an open file table entry through a file descriptor or by accessing the virtual memory to which the file was mapped. The logical file system routines are those kernel services, such as fp_ioctl and fp_select, that begin with the prefix fp_.

  • v-nodes

    Provide system calls with a mechanism for local name resolution. Local name resolution allows the logical file system to access multiple file system implementations through a uniform name space.