SGG 12 (02)

12.1 File System Structure

  • What is a file system?
  • The textbook lists a six-layer structure for a general file system. Explain what each layer does.
  • Why is it better to divide the functions of a file system into multiple layers?

12.2 File System Implementation

  • What is a file control block (FCB)? What are some of the common information stored in FCB?
  • What is a system-wide open-file table? What information does it contain?
  • What is a per-process open-file table? What information does it contain?
  • Explain the meaning of Figure 12.3 on page 548.
  • What is an inode? What kinds of information does an inode include?
  • What is a virtual file system? Why do we need it?

12.3 Directory Implementation

  • Explain how a linear list based directory works.
  • Explain how a hash table based directory works.

12.4 Allocation Methods

Files are stored as blocks of disk space.

  • How does contiguous allocation work?
  • How does linked allocation work?
  • How does indexed allocation work?
  • Explain the inode structure in Figure 12.9
  • Pros and cons of each of these methods.
  • Compare and contrast these schemes with the ones used in memory management. Differences? Similarities?

12.5 Free Space Management

An OS uses various mechanisms to manage free blocks on disks.

  • How does bit-vector work?
  • How does linked list work?
  • How does grouping work?
  • How does counting work?

12.6 Efficiency and Performance

  • What is the meaning of efficiency in the file system context?
  • How does the block size affect the performance of a file system?
  • How does the buffering scheme affect the performance of a file system?
  • What does unified buffer cache mean? Why is it better to use unified buffer cache, compared to using separate cache for memory-mapped I/O?

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.