Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File...
-
Upload
egbert-webb -
Category
Documents
-
view
218 -
download
3
Transcript of Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File...
![Page 1: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/1.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.1
Module 10: File-System Interface
• File Concept
• Access :Methods
• Directory Structure
• Protection
• Consistency Semantics
![Page 2: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/2.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.2
File Concept
• Contiguous logical address space
• Types:
– Data numeric character binary
– Program
![Page 3: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/3.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.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
![Page 4: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/4.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.4
File Attributes
• Name – only information kept in human-readable form.
• 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.
![Page 5: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/5.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.5
File Operations
• create
• write
• read
• reposition within file – 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.
![Page 6: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/6.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.6
File Types – name, extension
Executable exe, com, bin ornone
ready-to-run machine-language program
Object obj, o complied, machinelanguage, not linked
Source code c, p, pas, 177,asm, a
source code in variouslanguages
Batch bat, sh commands to thecommand interpreter
Text txt, doc textual data documents
Word processor wp, tex, rrf, etc. various word-processorformats
Library lib, a libraries of routines
Print or view ps, dvi, gif ASCII or binary file
Archive arc, zip, tar related files groupedinto one file, sometimescompressed.
File Type Usual extension Function
![Page 7: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/7.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.7
Access Methods
• Sequential Accessread nextwrite next resetno read after last write
(rewrite)
• Direct Accessread nwrite nposition to n
read nextwrite next
rewrite n
n = relative block number
![Page 8: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/8.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.8
Directory Structure
• A collection of nodes containing information about all files.
F 1 F 2F 3
F 4
F n
Directory
Files
• Both the directory structure and the files reside on disk.
• Backups of these two structures are kept on tapes.
![Page 9: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/9.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.9
Information in a Device Directory
• Name
• Type
• Address
• Current length
• Maximum length
• Date last accessed (for archival)
• Date last updated (for dump)
• Owner ID (who pays)
• Protection information (discuss later)
![Page 10: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/10.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.10
Operations Performed on Directory
• Search for a file
• Create a file
• Delete a file
• List a directory
• Rename a file
• Traverse the file system
![Page 11: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/11.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.11
Organize the Directory (Logically) to Obtain
• Efficiency – locating a file quickly.
• Naming – convenient to users.
– Two users can have same name for different files.
– The same file can have several different names.
• Grouping – logical grouping of files by properties, (e.g., all Pascal programs, all games, …)
![Page 12: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/12.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.12
Single-Level Directory
• A single directory for all users.
• Naming problem
• Grouping problem
![Page 13: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/13.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.13
Two-Level Directory
• Separate directory for each user.
• Path name
• Can have the saem file name for different user
• Efficient searching
• No grouping capability
![Page 14: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/14.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.14
Tree-Structured Directories
![Page 15: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/15.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.15
Tree-Structured Directories (Cont.)
• Efficient searching
• Grouping Capability
• Current directory (working directory)
– cd /spell/mail/prog
– type list
![Page 16: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/16.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.16
Tree-Structured Directories (Cont.)
• Absolute or relative path name
• Creating a new file is done in current directory.
• Delete a file
rm <file-name>
• Creating a new subdirectory is done in current directory.
mkdir <dir-name>
Example: if in current directory /spell/mail
mkdir count
prog copy prt exp count
• Deleting “mail” deleting the entire subtree rooted by “mail”.
![Page 17: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/17.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.17
Acyclic-Graph Directories
• Have shared subdirectories and files.
![Page 18: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/18.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.18
Acyclic-Graph Directories (Cont.)
• Two different names (aliasing)
• If dict deletes list dangling pointer.
Solutions:
– Backpointers, so we can delete all pointers.Variable size records a problem.
– Backpointers using a daisy chain organization.
– Entry-hold-count solution.
![Page 19: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/19.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.19
General Graph Directory
![Page 20: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/20.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.20
General Graph Directory (Cont.)
• How do we guarantee no cycles?
– Allow only links to file not subdirectories.
– Garbage collection.
– Every time a new link is added use a cycle detectionalgorithm to determine whether it is OK.
![Page 21: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/21.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.21
Protection
• File owner/creator should be able to control:
– what can be done
– by whom
• Types of access
– Read
– Write
– Execute
– Append
– Delete
– List
![Page 22: Silberschatz and Galvin 1999 10.1 Operating System Concepts Module 10: File-System Interface File Concept Access :Methods Directory Structure Protection.](https://reader036.fdocuments.us/reader036/viewer/2022062423/5697bfba1a28abf838ca03d5/html5/thumbnails/22.jpg)
Operating System Concepts Silberschatz and Galvin1999 10.22
Access Lists and Groups
• Mode of access: read, write, execute
• Three classes of usersRWX
a) owner access 7 1 1 1RWX
b) groups access 6 1 1 0RWX
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. owner group public
chmod 761 game
• Attach a group to a file
chgrp G game