File Management
File Management
File Management
• File Concept
• Access Methods
• Disk and Directory Structure
• File-System Mounting
• File Sharing
• Protection
Objectives
• To explain the function of file
systems
• To describe the interfaces to file
systems
• To discuss file-system design
tradeoffs, including access methods,
file sharing, file locking, and directory
structures
• To explore file-system protection
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
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
File info Window on Mac OS X
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 entry Fi in
memory to directory structure on disk
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
File Types – Name, Extension
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
Sequential-access File
Access Methods
• Sequential Access
read next
write next
reset
no read after last write
(rewrite)
• Direct Access – file is fixed length logical records
read n
write n
position to n
read next
write next
rewrite n
n = relative block number
Directory
Files
F1 F2 F4
F3
Fn
• Naming problem
• Grouping problem
Two-Level Directory
• Separate directory for each user
Path name
Can have the same file name for different user
Efficient searching
No grouping capability
Tree-Structured Directories
Tree-Structured Directories (Cont.)
• Efficient searching
• Grouping Capability