Download
file processing file organization and file systems n.
Skip this Video
Loading SlideShow in 5 Seconds..
File Processing : File Organization and File Systems PowerPoint Presentation
Download Presentation
File Processing : File Organization and File Systems

File Processing : File Organization and File Systems

216 Vues Download Presentation
Télécharger la présentation

File Processing : File Organization and File Systems

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. File Processing : File Organization and File Systems 2011, Spring Pusan National University Ki-Joune Li

  2. Fixed Size Record Variable Size Record Logical Structure of File File Field Field Field Record (Tuple) Record Record Block

  3. Fixed Size Record • Fixed Size • Fixed Number of Fields, and • Fixed Size of each Field • Easy to implement • Disk Address • (n-1)*srecord • Deletion of a record • Like Array but no movement • Free Record List or • Pointer to Next Record

  4. Variable Length Record • Variable Length due to • Variable Number of Fields, or • Variable Size of each Field • Complicated to implement • Implementation • Delimiter (, size, or pointer) • Slotted Page • Fixed Length • Overflow Area • Reserved Space

  5. Delimiters Pointer/Size Delimiters Record Record … Record Record Record … Record • Difficult to handle deletions and insertions

  6. Pointer to Record Slotted Page • Records can be moved around within a page • to keep them contiguous with no empty space between them • entry in the header must be updated. • Pointers should not point directly to record • But to the entry for the record in header.

  7. Maximum # of Fields Reserved Space

  8. First field of record Rest records Overflow Area

  9. Block size Name ID# Contiguous Reserved Block for BLOB Binary Large Object Block (BLOB) • If size (field) > size (block) • e.g. Image or Video • BLOB : Type of field where its size is greater than block size • cf. CLOB : Text rather than binary Name ID# Photo

  10. File System • Example fd=open(”data.txt”,O_RDONLY,0); Nbytes=read(fd,buf,100);  How to process these functions in OS ?

  11. i-node Attributes Data Block Pointers to data block i (index)–node : information about file Name Type : directory, data, special Permission Ownership Last updated date/time Created date/time

  12. Data Block . . . Data Block Data Block Pointer Block (1024 blocks) . . . Data Block i-node : Pointer to data block Attributes Pointers to data block (0-9: up to 40K bytes) Single direct Pointer Double direct Pointer

  13. 2 i-node 1 ~ 40 Given by formatting i-node 41 ~ 80 3 … Data block Data block … Data block Block configuration for i-node 0 Boot Block Reserved Block 1 Super Block User space

  14. Directory block for /usr i-node 19 i-node 1 Root directoryblock i-node 6 Attributes Attributes Attributes 6 . 1 . 1 .. 1 .. 19 lik 4 bin 30 kimmk 7 dev 54 parksh 14 lib 9 etc 6 usr Directory block for /usr/lik 8 tmp i-node 107 19 . Attributes Data block for /usr/lik/data.txt 6 .. 107 data.txt i-node for /usr/lik/data.txt Implementation of File Hierarchy i-node for root directory i-node for /usr i-node for /usr/lik

  15. FAT (File Allocation Table) • DOS or MS-Windows 98 • Same purpose of i-node in UNIX

  16. open write fd=open(”data.txt”,O_RDONLY,0);Nbytes=read(fd,buf,100); • Step 1 : Find i-node for “data.txt” via i-node • from root or current directory • Step 2 : Check owner and access right • Step 3 : Register it to OpenFileTable • Initialize entry values : e.g. offset, mode • fd : array index of this table • Some entries : reserved for stdio, stderr, etc.. • Step 4 : Check ownership and right • Step 5 : Read 100 bytes to buf • Read 100 bytes from the OpenFileTable[fd].offset • OpenFileTable[fd].offset += 100;