HỆ ĐIỀU HÀHH
Hệ thống quản lý tập tin
Nội dungNội dung
1 Cá kháiiệ bả1. Các khái niệm cơ bản
2. Cấu trúc hệ thống file
3. Cơ chế cấp phát vùng lưu trữ
4 Sao lưu phụchồidữ liệu4. Sao lưu phục hồi dữ liệu
CẤU TRÚC ĐĨA CỨNG
Hệ điều hành xem đóa cứng như một chuỗi các
-3-
ägä
block liên tiếp với kích thước cố đònh.
CẤU TRÚC
HỆ THỐNG FILEHỆ THONG FILE
Tổ chức theo phân lớp
File Control Block (FCB)
File Control Block (FCB)
–
Nằm trên đóa cứng, chứa
Thông tin bảo mật file
Thông tin nơi lưu trữ file
Virual File System (VFS)
Cngcấp API ch ng tr
–
Cung cap API chung truy
xuất nhiều loại hệ thống file
khác nhau
á
Cấu trúc thư mục
–
Dùng danh sách liên kết
Dùng bảng băm
-4-
–
Dung bang bam
Virual File System (VFS)
-5-
Khái niệm cơ sở (tt)
Để giúp người dùng sử dụng các thiết bò lưu trữ một cách hiệu quả, hệ
điều hành che dấu các chi tiết cấp thấp của các thiết bò lưu trữ vật lý
bằng các khái niệm luận lý.
Các khái niệm luận lý (user view)
–
File - file description - directory - file system
physical disk
operating system
11.6
file system
physical disk
operating system
Caùc thaønh phaàn lieân quan
File structure
Records
Physical blocks
in main memor
Physical blocks
in secondary
directory
management
access
method
in main memory
Buffer
in secondary
storage
di k
user&
program
Operation
File
blocking
disk
scheduling
commands
Operation,
file name
File
maniputation
functions
I/O
Free storage
management
User Access
Control
File
association
11.7
File Management Concerns
Operating System Concerns
Khái niệm cơ sở (tt)
File: khối lưu trữ luận lý liên tục
Các loại file
– Dữ liệu– Dư liệu
numeric
character
binary binary
– Chương trình
Phân biệt loại file
extension– extension
– magic number
– user
11.8
(a) Executable file (b) Archive (*.o)
Khaựi nieọm cụ sụỷ (tt)
Caực thuoọc tớnh cuỷa file
11.9
Khái niệm cơ sở (tt)
Các thuộc tính của file - tên file
11.10
Khái niệm cơ sở (tt)
á
Cấu trúc file
– Không cấu trúc – một chuỗi word/byte
– Cấu trúc record đơn giản
Fi ed length s ariable length Fixed length vs. variable length
– Cấu trúc phức tạp
Formatted document (Word, PDF document,...)
Relocatable load file (executable dynamic linking library )Relocatable load file (executable, dynamic linking library,...)
11.11
Khái niệm cơ sở (tt)
Truy cập file (từ user-view)
–
Sequential
truy xuất dữ liệu theo thứ tự, từng byte hoặc record
–
Keyed (hoặc indexed)
đònh vò một block dựa vào key value hoặc chỉ mục (vd hash,
dictionary)
Memory mapping file
–
Memory mapping file
file được ánh xạ vào không gian đòa chỉ
dùng tác vụ truy xuất bộ nhớ hệ điều hành sẽ thực hiện các
tác vụ tương ứngïgg
Truy cập file (từ operating system view)
–
Sequential
có con trỏ file trỏ đến vò trí đọc/ghi kế tiếp
sau một tác vụ đọc/ghi phải cập nhật vò trí con trỏ file mới
–
Direct access (random access)
đònh vò vò trí bất kỳ trong file dựa vào độ dời (offset)
11.12
Các tác vụ trên file
Create
– Cấp phát không gian lưu trữ, thêm entry trong thư mục
Write
Tì fil t th th hi ä t ù hi t i ò t í t û hi– Tìm file trong thư mục thực hiện tác vụ ghi tại vò trí con trỏ ghi
Read
– Tìm file trong thư mục thực hiện tác vụ đọc tại vò trí con trỏ đọc
Reposition file seek
Reposition – file seek
– Thiết lập con trỏ đọc/ghi đến vò trí được chỉ đònh.
Delete
– Tìm thư muc chứa file cầnxóaxóacác disk block xóa entry trong thưTìm thư mục chưa file can xoa, xoa cac disk block, xoa entry trong thư
mục
Truncate
– Giữ lại tất cả các thuộc tính file, ngoại trừ kích thước file thiết lập về 0
Open(Fi)
– Tìm file Fi trong cấu trúc thư mục trên đóa, kiểm tra quyền truy cập, nạp
nội dung entry Fi trong thư mục vào bộ nhớ
Cl (Fi)
11.13
Close(Fi)
– Chuyển nội dung entry Fi trong bộ nhớ vào đóa
Thoõng tin cuỷa thử muùc
Name
Type
: file, directory, symbolic link,...
Address
:ủũachổcuỷakhoỏilửutrửừ file
Address
: ủũa chổ cua khoi lửu trử file
Current length
Maximum length
Date last accessed
Date last updated
Owner ID
Protection information
...
11.14
Caùc taùc vuï treân thö muïc
Search
Create file
Delete file
Delete file
List
Rename
Traverse
...
11.15
Naming và thư mục
Vấn đề
– hệ điều hành dùng ký số để đònh danh file (file descriptor)
– người sử dụng thích dùng file theo tên gợi nhớ (textual name)
directory: cấu trúc dữ liệu của hệ điều hành giúp ánh xạ file
descriptor tên gợi nhớ
Các chiến lược naming
Si l lldit– Single-level directory
– Multi-level directory
– Tree-structured directory
– Acyclic-graph directory vs general graph directory– Acyclic-graph directory vs. general graph directory
Một số mục tiêu
– Hiệu quả: tìm kiếm nhanh
– Thuận tiện cho user khi đặt tên file cácuserkhác nhau có thể đặtThuận tiện cho user khi đặt ten file, cac user khac nhau co the đặt
tên file trùng nhau
– file có thể có nhiều hơn một tên
– hỗ trợ phân nhóm (grouping): tổ chức các files cùng đặc điểm vào
h hù ( hù fil h tìhC hù fil W d )
11.16
chung nhóm (e.g. nhóm file chương trình C, nhóm file Word,...)
Naming vaứ thử muùc (tt)
Single-level directory (flat name space)
moọt directory cho taỏt caỷ file (IBM MVS, PalmOS)
Two-level directory y
11.17
Naming vaø thö muïc (tt)
Tree-structured directory
– path name
11.18
Naming vaø thö muïc (tt)
Acyclic-graph directory
– alias (link)
11.19
Naming và thư mục (tt)
General graph directory
– cycle
chỉ cho phéptaolinks của file (*nix) chỉ cho phep tạo links cua file (nix)
dùng giải thuật kiểm tra chu trình mỗi khi tạo file
11.20
Hiện thực file
Hiện thực file
– File
lili [0N1] f bl k logical view = array[0..N-1] of blocks
physical view = CHS(cylinder, head, sector)
– Hiện thực
cấp phát không gian lưu trữ cho mỗi file
quản lý thông tin về không gian lưu trữ của file trong thư
mu
ïcï
Các phương pháp cấp phát phổ biến
– Cấp phát liên tục (contiguous allocation)
– Danh sách liên kết (linked list allocation))
–Chỉ mu
ïc (indexed allocation)
12.21
ï( )
Cấp phát đóa liên tục
Seek time
Seek time
Di chuyển đầu đọc
Có thể truy xuất ngẫu nhiên một block
(@block = @start + block number)(@block = @start + block_number)
Phân mảnh ngoại
Vấn đề khi tạo file mới và thay đổi kích
thước file
12.22
thươc file
Ứng dụng hiện tại: ISO-9660 (CDROM)
IBM OS/360
Danh saùch lieân keát
12.23
Danh sách liên kết (tt)
pointer
data
block
Ưu điểm Ưu điem
– Không có phân mảnh ngoại
– Dễ dàng thay đổi kích thước file
– Quản lý không gian trống bằng
danh sách
Nhược điểm
– Chỉ hiệu quả đối với sequential-
access fileaccess file
– Tốn không gian lưu trữ các con trỏ
– Độ tin cậy: nếu pointer bò hỏng
12.24
TOPS-10, Alto
FILE ALLOCATION TABLE (FAT)
-25-