Ch11
-
Upload
nguyen-duong -
Category
Education
-
view
140 -
download
3
Transcript of Ch11
![Page 1: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/1.jpg)
Silberschatz, Galvin and Gagne 200211.1Operating System Concepts
Chapter 11: File-System Interface
� File Concept
� Access Methods
� Directory Structure
� File System Mounting
� File Sharing
� Protection
![Page 2: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/2.jpg)
Silberschatz, Galvin and Gagne 200211.2Operating System Concepts
File Concept
� Contiguous logical address space
� Types:✦ Data
✔ numeric
✔ character✔ binary
✦ Program
![Page 3: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/3.jpg)
Silberschatz, Galvin and Gagne 200211.3Operating System Concepts
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 insertingappropriate control characters.
� Who decides:✦ Operating system
✦ Program
![Page 4: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/4.jpg)
Silberschatz, Galvin and Gagne 200211.4Operating System Concepts
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: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/5.jpg)
Silberschatz, Galvin and Gagne 200211.5Operating System Concepts
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: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/6.jpg)
Silberschatz, Galvin and Gagne 200211.6Operating System Concepts
File Types – Name, Extension
![Page 7: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/7.jpg)
Silberschatz, Galvin and Gagne 200211.7Operating System Concepts
Access Methods
� Sequential Accessread nextwrite nextresetno read after last write
(rewrite)� Direct Access
read nwrite nposition to n
read nextwrite next
rewrite nn = relative block number
![Page 8: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/8.jpg)
Silberschatz, Galvin and Gagne 200211.8Operating System Concepts
Sequential-access File
![Page 9: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/9.jpg)
Silberschatz, Galvin and Gagne 200211.9Operating System Concepts
Simulation of Sequential Access on a Direct-access File
![Page 10: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/10.jpg)
Silberschatz, Galvin and Gagne 200211.10Operating System Concepts
Example of Index and Relative Files
![Page 11: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/11.jpg)
Silberschatz, Galvin and Gagne 200211.11Operating System Concepts
Directory Structure
� A collection of nodes containing information about allfiles.
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 12: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/12.jpg)
Silberschatz, Galvin and Gagne 200211.12Operating System Concepts
A Typical File-system Organization
![Page 13: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/13.jpg)
Silberschatz, Galvin and Gagne 200211.13Operating System Concepts
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 14: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/14.jpg)
Silberschatz, Galvin and Gagne 200211.14Operating System Concepts
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 15: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/15.jpg)
Silberschatz, Galvin and Gagne 200211.15Operating System Concepts
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 Java programs, all games, …)
![Page 16: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/16.jpg)
Silberschatz, Galvin and Gagne 200211.16Operating System Concepts
Single-Level Directory
� A single directory for all users.
Naming problem
Grouping problem
![Page 17: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/17.jpg)
Silberschatz, Galvin and Gagne 200211.17Operating System Concepts
Two-Level Directory
� Separate directory for each user.
•Path name•Can have the same file name for different user•Efficient searching•No grouping capability
![Page 18: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/18.jpg)
Silberschatz, Galvin and Gagne 200211.18Operating System Concepts
Tree-Structured Directories
![Page 19: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/19.jpg)
Silberschatz, Galvin and Gagne 200211.19Operating System Concepts
Tree-Structured Directories (Cont.)
� Efficient searching
� Grouping Capability
� Current directory (working directory)✦ cd /spell/mail/prog✦ type list
![Page 20: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/20.jpg)
Silberschatz, Galvin and Gagne 200211.20Operating System Concepts
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 /mailmkdir count
prog copy prt exp count
Deleting “mail” � deleting the entire subtree rooted by “mail”.
![Page 21: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/21.jpg)
Silberschatz, Galvin and Gagne 200211.21Operating System Concepts
Acyclic-Graph Directories
� Have shared subdirectories and files.
![Page 22: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/22.jpg)
Silberschatz, Galvin and Gagne 200211.22Operating System Concepts
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 23: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/23.jpg)
Silberschatz, Galvin and Gagne 200211.23Operating System Concepts
General Graph Directory
![Page 24: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/24.jpg)
Silberschatz, Galvin and Gagne 200211.24Operating System Concepts
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 25: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/25.jpg)
Silberschatz, Galvin and Gagne 200211.25Operating System Concepts
File System Mounting
� A file system must be mounted before it can beaccessed.
� A unmounted file system (I.e. Fig. 11-11(b)) is mounted ata mount point.
![Page 26: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/26.jpg)
Silberschatz, Galvin and Gagne 200211.26Operating System Concepts
(a) Existing. (b) Unmounted Partition
![Page 27: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/27.jpg)
Silberschatz, Galvin and Gagne 200211.27Operating System Concepts
Mount Point
![Page 28: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/28.jpg)
Silberschatz, Galvin and Gagne 200211.28Operating System Concepts
File Sharing
� Sharing of files on multi-user systems is desirable.
� Sharing may be done through a protection scheme.
� On distributed systems, files may be shared across anetwork.
� Network File System (NFS) is a common distributed file-sharing method.
![Page 29: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/29.jpg)
Silberschatz, Galvin and Gagne 200211.29Operating System Concepts
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 30: Ch11](https://reader033.fdocuments.us/reader033/viewer/2022042816/5589613cd8b42a831c8b45aa/html5/thumbnails/30.jpg)
Silberschatz, Galvin and Gagne 200211.30Operating System Concepts
Access Lists and Groups� Mode of access: read, write, execute� Three classes of users
RWXa) owner access 7 � 1 1 1
RWXb) group access 6 � 1 1 0
RWXc) 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 anappropriate access.
owner group public
chmod 761 game
Attach a group to a file chgrp G game