You are on page 1of 40

Chng 10: He Thong File

10.B Hien thc he thong file va th muc Cac phng phap quan ly khong gian trong Sao lu va phuc hoi

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.1

S o bo tr (layout) he thong file (1)

Partition control block

i-nodes FCBs

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.2

S o bo tr (layout) he thong file (2)

Partition control block:


lu so lng block trong partition, kch thc block, so lng free block hien thi va cac con tro ch en chung, lu so lng free FCB hien thi va cac con tro ch en chung, V du, UNIX File System: superblock

File control block (FCB): moi file c quan ly thong qua FCB cua no
lu cac thong tin ve file , ke ca cac con tro ch en cac data block cua no V du, UNIX File System: i-node

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.3

VFSVirtual File System


ng dung : goi ham/thu tuc VFS open, read, write, opendir,

ext2 file system

FAT file system

NFS file system

disk partition

disk partition

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.4

Hien thc file

Cap phat khong gian lu tr cho file/directory, muc tieu:


s dung khong gian a hu hieu truy cap file nhanh

Cac phng phap cap phat pho bien


Cap phat lien tuc (contiguous allocation) Cap phat theo danh sach lien ket (linked list allocation) Cap phat dung ch muc (indexed allocation)

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.5

Cap phat lien tuc

Seek time? Di chuyen au oc? Co the truy xuat ngau nhien mot block cua file: block nr = start + block offset Phan manh ngoai Van e khi tao file mi va khi can them block cho file ng dung: ISO-9660 (CDROM)
10.B.6

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

Cap phat theo danh sach lien ket (1)


pointer -1

data layout cua block

-1

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.7

Cap phat theo danh sach lien ket (2)

u iem
De dang them block cho file khi can Quan ly khong gian trong bang danh sach Khong co phan manh ngoai

Nhc iem
Ch truy xuat hieu qua oi vi sequential-access file Ton khong gian lu tr cac con tro o tin cay: pointer trong block co the b hong Phan manh noi khi n v cap phat la cluster (mot hang so cac block)
Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM 10.B.8

Bien the cua cap phat theo danh sach lien ket: FAT
FAT

FAT (File Allocation Table)


Moi block a c tng trng bi mot entry trong FAT Block vi block nr i c tng trng bi entry vi ch so (index) i Entry cha block nr ke tiep trong file, neu file gom nhieu block

number of disk blocks - 1

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.9

Cap phat dung ch muc (1)

Bang index (index block)


cha a ch cac block cua file th t cac a ch tren trong bang cung la th t cac block trong file

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.10

Cap phat dung ch muc (2)


u iem
Random va sequential access Khong co phan manh ngoai

Khuyet iem
Ton khong gian lu tr bang index khi file co kch thc ch vai block

Van e: kch thc index block bao nhieu la phu hp?


Giai quyet: multilevel index

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.11

i-node
i-node

UNIX v7 i-node: 13 pointers Linux ext2 i-node: 15 pointers


Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.12

Hien thc th muc

Th muc c dung e cha bang anh xa t ten file (chuoi ky t ASCII) en thong tin can thiet e nh v cac block d lieu cua file To chc th muc
Danh sach tuyen tnh (array hay linear list), bang bam,
MS-DOS
first block nr

UNIX, Linux

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.13

FAT

V du

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.14

He thong file FAT

FAT dung e ch bang FAT va cung dung e ch he thong file Layout cua mot partition cha he thong file FAT

Boot sector

FAT

Root directory

Data blocks

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.15

Hien thc ten file dai

Giai quyet van e ten file dai (Win98, 2000, XP, *NIX,...)
(a) In-line (b) Heap

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.16

i-node (1)
V du

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.17

i-nodes (2)

Layout cua mot partition cha he thong file UNIX

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.18

i-node: chia se file (1)

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.19

i-node: chia se file (2)

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.20

Duyet path name e lay block nr cua file

V du: Xac nh cac block d lieu cua file /a/b/c

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.21

Quan ly khong gian trong

Cac phng phap Bit vector (bit map) Linked list Grouping Counting

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.22

Phng phap bit vector (bit map)


0 1 2 n-1


bit[ i ] = 0 block i con trong 1 block i a c cap

n gian va hieu qua khi can tm khoi trong au tien hoac chuoi khoi trong lien tuc
Thao tac tren bit

Can khong gian lu tr. V du


Kch thc block = 212 bytes Kch thc a = 230 bytes n = 230/212 = 218 bit (32KB)

V du: bit vector 00111100

block 0, 1 trong
block 2, 3, 4, 5 a c cap block 6, 7 trong

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.23

Phng phap dung linked list

Phng phap
Lien ket cac khoi trong vi nhau Ch can gi con tro en khoi nh trong au tien tren a hoac cache trong bo nh chnh e tang toc

t lang ph khong gian a Do biet khoang khong gian trong lien tuc? Khong hieu qua: trong trng hp xau nhat phai duyet toan bo a e tm khong gian trong lien tuc
Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM 10.B.24

Grouping va counting (1)

Phng phap grouping


a ch cua n khoi trong c lu trong khoi nh au tien. Khoi nh th n cha a ch cua n khoi nh trong ke tiep.

Phng phap counting


To chc bang ch muc, trong o moi phan t cua bang cha a ch tren a cua khoi trong au tien trong nhom khoi trong lien tuc kem theo mot so em (cho biet so khoi trong trong nhom). Co the cap phat hoac thu hoi ong thi nhieu khoi nh lien tuc

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.25

Grouping va counting (2)


V du
Grouping Block 2 3, 4, 5 Block 5 8, 9, 10 Block 10 11, 12, 13 Block 13 17, 28, 25 Block 25 26, 27

Counting 2 4 8 6 17 2 25 3

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.26

Open file structures

Thuoc tnh toan cuc (global attributes)


Disk location, size Times Buffers Open count Lock(s)

Thuoc tnh rieng cua process


File pointer Access permissions
P1

P2 System open file table P3

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.27

UNIX: open file structure


swappable file descriptor open file table resident file structure table User space in-core i-nodes Kernel space

r/w

data blocks

i-nodes

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.28

Sao lu va phuc hoi d lieu

Kiem tra s nhat quan d lieu (consistency checker) so sanh d lieu trong cau truc th muc vi cac khoi d lieu tren a va sa cha cac loi khong nhat quan d lieu gia hai ben. Dung chng trnh he thong e sao lu (backup) d lieu t a sang cac thiet b lu tr phu khac nh a mem, a quang, bang t,... va phuc hoi d lieu b mat t ban sao lu.

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.29

Cac kieu sao lu d lieu

Normal
Day 3

Incremental
Day 3

Day 2

Day 2
Copied

Day 1
Data

Data

Day 1

Differential
Day 3

Day 2
Copied

Data

Day 1

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.30

Journaling file system

Journaling file system


Ghi nhan cac lan cap nhat tren file system thanh cac giao tac (transaction) Moi transaction eu phai c ghi nhan trong log file Mot transaction c xem la hoan tat (commit) a c ghi nhan ay u trong log file (luc nay, file system co the cha c cap nhat) Khi file system c cap nhat vi ay u moi tac vu trong transaction th transaction se c xoa i trong log file. Neu file system b hong he ieu hanh da vao cac transaction trong log file e sa cha

Tham khao them Linux-ext3, JFS, NTFS

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.31

Phu luc

MS-DOS File System (1)

MS-DOS directory entry

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.33

MS-DOS File System (2)

Maximum partition for different block sizes The empty boxes represent forbidden combinations
Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM 10.B.34

Windows 98 File System (1)

Bytes

Extended MOS-DOS directory entry used in Windows 98

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.35

Windows 98 File System (2)

Bytes

Checksum

An entry for (part of) a long file name in Windows 98

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.36

The Windows 98 File System (3)

An example of how a long name is stored in Windows 98

Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM

10.B.37

UNIX V7 File System (1)

i-node number

A UNIX V7 directory entry


Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM 10.B.38

UNIX V7 File System (2)


i-node

A UNIX i-node
Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM 10.B.39

UNIX V7 File System (3)

The steps in looking up /usr/ast/mbox


Khoa Khoa Hoc & Ky Thuat May Tnh ai Hoc Bach Khoa TP HCM 10.B.40

You might also like