View
221
Download
0
Category
Preview:
DESCRIPTION
File Concept Access Methods Directory Structure File-System Mounting File Sharing Protection
Citation preview
It consists of two parts: collection of files – stores related data
directory structure – organizes & provides information
Some file systems may have third part:partitions – used to separate physically & logically large
collection of directories
File protection – multiple users access the file
File Concept Access Methods Directory Structure File-System Mounting File Sharing Protection
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
Storage media : magnetic disk, magnetic tapes , optical disks…. Os provides logical view of information storage It abstracts from the physical properties of its storage devices to
define a logical unit (file) Files are mapped by os onto physical devices Storage devices are non volatile – persistent through power
failures File – a named collection of related information that is recorded on
the secondary storage User s perspective – smallest allotment of logical storage
Contiguous logical address space
Types: ◦ Data files
numeric Character alphanumeric binary
◦ Program files◦ Text files (free forms)
Information in the file is defined by its creator sequence of words, bytes, bits, lines & records (source, object,
pay roll, text, graphics) 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
Text files – sequence of characters organized into lines
Source files – sequence of subroutines & lines , further organized into executable statements
Object file – sequence of bytes organized into blocks understandable by system linker\
Executable file – series of code sections that the loader can bring into memory & execute
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
File is an abstract data type Operations on file: Create – space in file system & entry for new file Write – name of the file & information to be written on the file Read – name of the file & read pointer Reposition within file – file seek (repositioning within a directory) Delete – name of the file Truncate – erasing the contents but keeping the attributes File table: 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
Several pieces of data are needed to manage 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
Provided by some operating systems and file systems 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
Macintosh os- supports a minimal no of file structure
It expects files to contain 2 parts: resource fork – information of interest to user
data fork – program code or data
Physical record size will exactly match the length of the desired logical record
Logical records may even vary in length
Packing – no .of logical records into physical blocks
Example – unix files – stream of bytesfile system automatically packs & unpacks bytes into physical disk
blocks – 512 bytes per block
Conversion of physical to logical is a simple sw problemdisk space – always allocated in blockssome portion of last block – generally wastedwasted bytes allocated to keep everything in units of blocks is internal fragmentationBlock size is directly proportional to internal fragmentation
Recommended