File System Management
Last modified Monday, 06-Dec-2004 13:38:21 UTC.
- File System Interface
(Slides)
- File concept (SGG Ch.11.1)
- File types (SGG Ch.11.1.3)
- File structure (SGG Ch.11.1.4-5)
- File attributes (SGG Ch.11.1.1)
- Directory concept (SGG Ch.11.3)
- File operations (SGG Ch.11.1.2)
- Access methods (SGG Ch.11.2)
- Directory operations (SGG Ch.11.3)
- Directry organization
- Tree structured (SH Ch.11.3.3)
- Acyclic graph (SGG Ch.11.3.4)
- General graph (SGG Ch.11.3.5)
- Protection (SGG Ch.10.4)
- Types of access (SGG Ch.11.6.1)
- Acess control (SGG Ch.11.6.2)
- Other approaches (SGG Ch.11.6.3)
-
UNIX file system interface
- File System Implementation
(Slides)
- Disk structure
- Blocks (SGG Ch.12.2.1)
- Partitions (SGG Ch.11.3,Ch.12.2.2)
- Mounting (SGG Ch.11.4,Ch.12.2.2)
- Root directory of partition is mounted at some access
point
- Directory implementation (SGG Ch.12.3)
- File system structure (SGG Ch.12.1)
- Logical file system -
Deals with file names, open and close, file operations
- File organization -
Maps logical requests into physical requests,
Tracks free space and bad blocks
- Basic file system -
Issues generic requests from file organization to
device drivers
- I/O control (device drivers) -
Converts phyical requests into hardware commands
- File tables (SGG Ch.12.2.1)
- Disk block allocation (SGG Ch.12.4)
- Contiguous allocation (SGG Ch.12.4.1)
- Contiguous sequence of blocks
- Logical to physical address mapping
- Advantages and disadvantages
- Linked allocation (SGG Ch.12.4.2)
- Linked sequence of blocks
- Logical to physical address mapping
- Advantages and disadvantages
- Indexed allocation (SGG CH.12.4.3)
- Index block of block addresses
- Logical to physical address mapping
- Advantages and disadvantages
- Linked index blocks
- Multilevel index
- Combined index block - multilevel index
- Free space management (SGG Ch.12.5)
- Bit vector (SGG Ch.12.5.1)
- Linked list (SGG Ch.12.5.2)
- Efficiency and performance (SGG Ch.12.6.2)
- Journaling (SGG Ch.12.8)
- UNIX file system implementation
- NFS (SGG Ch.12.9)
Exam Style Questions
- Do all operating systems support the notion of a "file type"? Give
one disadvantage and one advantage of supporting file types.
- How can structured files be simulated in a file system that provides
no in-built file structure?
- List six file attributes that may be recorded in a file system directory.
- What is a file system directory used for?
- List four common operations on files?
- Give the basic steps for implementing the {create,read,write,seek,delete,
truncate} operation on a file.
- What file system actions have to take place when a file is {opened,
closed}?
- List four common operations on file system directories.
- What are the disadvantages of a single level directory structure?
- What important feature does an acyclic graph directory structure have
that is missing from a tree structured directory?
- Explain the difference between hard and soft links in an acyclic graph
directory.
- Descibe what actions have to be taken when a {hard,soft} link is deleted
in a file system.
- Descibe how individual access lists would provide file protection. Why
are individual access lists not used in real operating systems?
- Describe the process by which the file system partitions are all made
available in an OS.
- List the four layers that a file system implementation may have.
- What does the {logical file system,file organization module,
basic file system,IO control} layer of a file system implementation do?
- In a {contiguous,linked,indexed,linked indexed,two level indexed}
disk block allocation scheme, how is a logical disk
address (byte number) translated into a physical address?
- What are three advantages of a contiguous disk block allocation scheme?
- What are two disadvantages of a contiguous disk block allocation scheme?
- Explain how linked disk block allocation works.
- What is the main disadvantage of linked disk block allocation?
- What is the potential major drawback of using index disk block
allocation? How may this potential drawback be overcome?
- What is the maximal file size that may be allocated using
{contiguous,linked,indexed,linked indexed,two level indexed}
disk block allocation? Give your answer in terms of disk size,
disk block size, and disk address size (as needed).
- In a file system that uses contiguous block allocation, with blocks
1KB each, what is the block number and byte offset for byte number
16325 in the file?
- In a file system that uses linked block allocation, with blocks
1KB each and a block address of 8 bytes, what is the block number
and byte offset for byte number 16325 in the file?
- What is the maximum file size in a file system that uses a single
level indexed block allocation, with a block size of 1KB and a block
address of 8 bytes?
- In a file system that uses linked-indexed block allocation, with blocks
1KB each and a block address of 8 bytes, what is the index block number,
data block number within the index block, and byte offet for byte number
1566720 in the file.
- What is the maximum file size in a file system that uses two level
level indexed block allocation, with a block size of 1KB and a block
address of 8 bytes?
- Explain how a bit vector may be used to implement free disk space
management. What hardware support is important to bit vector
free disk space management? What disk block allocation scheme works
well with bit vector free disk space management?
- Which disk block allocation scheme can be used for free disk space
management?
- Explain how journaling improves reliability of a file system.
- What does facility does NFS provide?