the file system

Post on 05-Jan-2016

22 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

THE FILE SYSTEM. Files -------- long-term storage RAM --------- short-term storage Programs, data, and text are all stored in files, which is stored on hard disk and other media, such as tape and floppy disk. THE FILE SYSTEM. - PowerPoint PPT Presentation

TRANSCRIPT

THE FILE SYSTEM

Files -------- long-term storageRAM --------- short-term storage

Programs, data, and text are all stored in files, which is stored on hard disk and other media, such as tape and floppy disk.

THE FILE SYSTEMUNIX files are organized by a hierarchy of labels ---- directory structure

Three kinds:+ Regular files, containing a sequence of bytes that generally corresponds to code or data. Referenced via the standard I/O system calls.+ Directory files, a special format and forming the backbone of the file system. Referenced only via directory-specific system calls.+ Special files, correspond to peripherals such as printers and disks, and interprocess communication mechanisms, such as pipes and sockets. Referenced via the standard I/O system calls.

Disk ArchitectureSector

Track

Platter

Arm

Block: 4kb

Read/write head

Interleaving1:1 interleave

1

2

3

45

6

7

89

10

11

1213

14

15

16

Delay, interleave factor, between each block due to the overhead of the communication between the disk controller and the device driver

Interleaving1:3 interleave

1

2

3 4

5

6

78

9

10

11 12

13

14

1516

Storing a File

1

2

3

45

6

7

89

10

11

1213

14

15

16

First 4K

Second 4K

Last 1K

Inodes—Index nodeTo store information about each file+ the type of the file: regular, directory, block special, character special, etc.+ file permissions+ the owner and group IDs+ a hard link count+ the last modification time and last access time+ the location of the blocks if the file is a regular or directory file+ the major and minor device numbers if the file is a special file+ the value of the symbolic link if the file is a symbolic link

In other words, it contains all of the information when you perform an “ls -l”, except for the filename

Inodes—Index node

Every inode in a particular file system is allocated a unique inode number.

Every file has exactly one inode.

All the inodes associated with the files on a disk are stored in a special area at the start of the disk called the inode list

Every file has an inode

1

2

3

45

6

7

89

10

11

1213

14

15

16

Block mapInode

0123

72

14

The Block MapInode only stores the first 10 blocks of a file. (most UNIX files are less than 40K)

An indirect access scheme is used for addressing larger files.

Direct block pointers

Indirect pointer

Disk blocks

Inode

Direct block pointers

Indirect pointer

Disk blocks

Inode

Double indirect pointer

File System Layout

boot block: first logical block of a disk, containing some executable code that is used when UNIX is first activated.

super block: second logical block of a disk, containing information concerning the disk itself.

inode list: following fixed-size set of blocks, holding all of the inodes associated with the files on the disk.

File System Layout

Boot block

Super block

Inode 1…40

Inode 41..80

User block

User block

User block

Logical disk layout

Physical disk layout

The SuperblockIt contains information pertaining to the entire file system.

+ the total number of blocks in the file system+ the number of inodes in the inode free list+ the size of a block in bytes+ the number of free blocks+ the number of used blocks

Free

Used

Free

Free

Used

Free

Disk blocks

1 0 1 1 0 1

Bitmap

DirectoriesInode number 2 contains the location of the block possessing the root directory. (inode number 1 for bad blocks)

/2

bin3

ls5 cp7

usr4

Test.c6

. 2

.. 2

bin 3

usr 4

label Inode #

Hard Link

Mounting File SystemsThe mount utility allows a superuser to splice the root directory of a file system into the existing directory hierarchy.

/

bin usrmnt

/

tmp1 tmp2

/

bin usrmnt

tmp1 tmp2

$ mount /dev/flp /mnt

$ unmount /dev/flp or $unmount /mnt

top related