CITS2002 Systems Programming  
prev
next CITS2002 CITS2002 schedule  

File Information Structures - inodes

Early operating systems maintained information about each file in the directory entries themselves. However, the use of the hierarchical directory model encourages a separate information structure for each file.

As an example, Unix refers to these information structures as inodes, accessing them by their integral inode number on each device (themselves referred to by two integral device numbers).

Each information structure is accessed by a unique key (unique to the I/O device), and the role of the directory is now simply to provide <filename, inode> pairs.

A distinct file-entry is identified by a <major-device-number, minor-device-number, inode> triple.

Typical information contained within each inode includes:

  • the file's type (plain file, directory, etc),
  • the file's size, in bytes and/or blocks,
  • any limits set on the file's size (implied?),
  • the primary owner of the file,
  • information about other potential users of this file,
  • access constraints on the owner and other users,
  • dates and times of creation, last access and last modification,
  • pointers to the file's actual data blocks.

 


CITS2002 Systems Programming, Lecture 15, p7, 18th September 2023.