CH 08 - OS
CH 08 - OS
ECEg – 4181
FILE SYSTEM
by
Dr. T.R.SRINIVASAN, B.E., M.E., Ph.D.,
Assistant Professor,
Faculty of Electrical and Computer Engineering,
Jimma Institute of Technology,
Jimma University,
Jimma, Ethiopia
FILE SYSTEM
• File Concept
• Access Methods
• Disk and Directory Structure
• File-System Mounting
• File Sharing
• Protection
2
FILE CONCEPT
• Contiguous logical address space
• Types:
– Data
• Numeric
• Character
• Binary
– Program
• Contents defined by file’s creator
– Many types
• Consider text file, source file, executable file
3
FILE STRUCTURE
• None -sequence of words, bytes
• Simple record structure
– Lines
– Fixed length
– Variable length
• Complex Structures
– Formatted document
– Relocatable load file
• Can simulate last two with first method by inserting
appropriate control characters
• Who decides:
– Operating system
– Program 4
File Attributes
• Name–only information kept in human-readable form
• Identifier–unique tag (number) identifies file within file system
• Type–needed for systems that support different types
• Location–pointer to file location on device
• Size–current file size
• Protection–controls who can do reading, writing, executing
• Time, date, and user identification–data for protection, security,
and usage monitoring
• Information about files are kept in the directory structure, which
is maintained on the disk
• Many variations, including extended file attributes such as file
checksum
• Information kept in the directory structure
5
FILE OPERATIONS
• File is an abstract data type
• Create
• Write –at write pointer location
• Read –at read pointer location
• Reposition within file –seek
• Delete
• Truncate
• Open(Fi)–search the directory structure on disk for
entry Fi, and move the content of entry to memory
• Close (Fi)–move the content of entryFi in memory
to directory structure on disk 6
OPEN FILES
• Several pieces of data are needed to manage open
files:
• Open-file table: tracks open files
• File pointer: pointer to last read/write location, per
process that has the file open
• File-open count: counter of number of times a file
is open –to allow removal of data from open-file
table when last processes closes it
• Disk location of the file: cache of data access
information
• Access rights: per-process access mode information
7
OPEN FILE LOCKING
• Provided by some operating systems and file systems
– Similar to reader-writer locks
– Sharedlocksimilar to reader lock –several processes can
acquire concurrently
– Exclusive lock similar to writer lock
• Mediates access to a file
• Mandatory or advisory:
– Mandatory–access is denied depending on locks held
and requested
– Advisory–processes can find status of locks and decide
what to do
8
FILE TYPES –NAME, EXTENSION
9
FILE STRUCTURE
• None -sequence of words, bytes
• Simple record structure
– Lines
– Fixed length
– Variable length
• Complex Structures
– Formatted document
– Relocatable load file
• Can simulate last two with first method by inserting
appropriate control characters
• Who decides:
– Operating system
– Program 10
SEQUENTIAL-ACCESS FILE
11
ACCESS METHODS
• Sequential Access
– read next
– write next
– reset
– no read after last write
(rewrite)
13
DIRECTORY STRUCTURE
14
DISK STRUCTURE
• Disk can be subdivided into partitions
• Disks or partitions can be RAID protected against failure
• Disk or partition can be used raw–without a file system,
or formattedwith a file system
• Partitions also known as minidisks, slices
• Entity containing file system known as a volume
• Each volume containing file system also tracks that file
system’s info in device directoryor volume table of
contents
• As well as general-purpose file systemsthere are many
special-purpose file systems, frequently all within the
same operating system or computer
15
Operations Performed on Directory
16
Single-Level Directory
17
Two-Level Directory
• Path name
• Can have the same file name for different user
• Efficient searching
• No grouping capability 18
Tree-Structured Directories
• Efficient searching
• Grouping Capability
• Current directory (working directory)
• cd /spell/mail/prog
• type list 19
File System Mounting
• A file system must be mountedbefore it can be
accessed
• A unmounted file system (i.e., Fig. 10-11(b)) is
mounted at a mount point
20
FILE SHARING
• Sharing of files on multi-user systems is desirable
• Sharing may be done through a protectionscheme
• On distributed systems, files may be shared across a
network
• Network File System (NFS) is a common distributed file-
sharing method
• If multi-user system
– User IDs identify users, allowing permissions and protections
to be per-user
– Group IDs allow users to be in groups, permitting group access
rights
– Owner of a file / directory
– Group of a file / directory
21
PROTECTION
• File owner/creator should be able to control:
– what can be done
– by whom
• Types of access
– Read
– Write
– EExecute
– Append
– Delete
– List
22
ACCESS LISTS AND GROUPS
• Mode of access: read, write, execute
• Three classes of users on Unix / Linux
RWX
a) owner access 7 1 1 1
RWX
b) group access 6 1 1 0
RWX
c) public access 1 0 0 1
• Ask manager to create a group (unique name), say G, and add some users to
the group.
• For a particular file (say game) or subdirectory, define an appropriate access.
23