Bài giảng Hệ điều hành - Chương 4: Quản lý file

Tóm tắt Bài giảng Hệ điều hành - Chương 4: Quản lý file: ...sector trong đĩa được thể hiện bằng 3 tham số : {sector, track, head}. Head được đánh số từ trên xuống bắt đầu từ 0. Track được đánh số từ ngồi vào bắt đầu từ 0. Sector được đánh số bắt đầu từ 1 theo chiều ngược với chiều quay của đĩa. Mỗi lần đọc ghi N sector 18 Đĩa từ - cấu trúc Head... 8 21 7 2 14 12 25 Shortest Seek Time First - SSTF ti m e cylinder number 1 5 10 15 20 25scheduling queue 24 8 21 7 2 14 12 Chọn nhu cầu gần với vị trí hiện hành nhất.  Cĩ nhiều yêu cầu chờ ..chờvà chờ 26 SCAN  Di chuyển đầu đọc về 1 phía của đĩa đến block xa nhất sau đĩ... song. Nội dung mỗi tập tin rải trên nhiều ổ đơn. Còn gọi là RAID-0. – Mirrored Volume: Ổ ánh xạ gương. Bao gồm 1 ổ đơn được ánh xạ tự động sang 1 ổ đơn khác. Còn gọi là RAID-1. – RAID-5 Volume (Redundant Array of Inexpensive Disks): Trải trên 3 hoặc hơn ổ đĩa đơ...

pdf43 trang | Chia sẻ: havih72 | Lượt xem: 378 | Lượt tải: 0download
Nội dung tài liệu Bài giảng Hệ điều hành - Chương 4: Quản lý file, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
CHƢƠNG 4
QUẢN LÝ FILE
1. Các khái niệm cơ bản
Giới thiệu
3
Hệ thống tập tin
Cung cấp cơ chế
Lưu trữ
truy cập dữ liệu và chương trình trên đĩa
Đơn vị lưu trữ: tập tin (file)
Thư mục là 1 dạng tập tin đặc biệt
Một số hệ thống tập tin hiện nay:
FAT: FAT12, FAT16, FAT32
NTFS
Ext2, ext
Vfat

4
Tập tin (file)
Đơn vị thơng tin của bộ nhớ ngồi. Được HĐH 
ánh xạ trên ổ đĩa vật lý
Tập hợp dữ liệu cĩ quan hệ với nhau phục vụ
cho một chương trình nào đĩ
Được quản lý bới hệ điều hành – quản lý tài 
nguyên
Xác định bằng tên tập tin
Example.c
5
Tập tin – phân loại
Loại file Ví dụ Ý nghĩa
Thực thi file.exe File chứa mã lệnh dùng để load lên bộ nhớ và thực thi
Backup File.bak Backup file
Nguồn File.c File chứa mã nguồn gồm các dịng code, hàm,
Đối tượng File.o File được tổ chức thành các khối được trình liên kết hiểu
Batch
File.sh
File.bat
File chứa tập các lệnh
Thư viện
File.dll
File.lib
File chứa thư viện các hàm để dùng cho các chương trình
Hình ảnh
File.jpg
file.bmp
File hình ảnh được mã hĩa bằng các chuẩn JPEG, RLE,
Multimedia
File.mp3
File.wma
File.rm
File âm thanh, video, ..
File text File.txt
Nén File.zip
Tài liệu
File.pdf
File.doc
..
Một số loại file thơng dụng6
Tập tin – thuộc tính
Tên tập tin
Loại tập tin
Nơi lưu tập tin
Kích thước tập tin
Thời gian
Thuộc tính
7
Tập tin – thuộc tính
Quyền hạn sử dụng
8
Tập tin – thuộc tính
Một số thơng tin khác
9
Tập tin – cấu trúc
(a) Chuỗi các bit, byte – file mã hĩa
(b) Tập các record – file danh sách sinh viên
(c) Dạng cây - BTree
10
Tập tin – thao tác
1. Tạo – create
2. Ghi dữ liệu – write
3. Đọc dữ liệu – read
4. Xĩa – delete
5. Mở - open
6. Đĩng – close
7. Ghi thêm dữ liệu – append
8. Di chuyển đến 1 khối dữ liệu bất kỳ - seek
9. Đọc thuộc tính – get attr
10. Gán thuộc tính – set attr
11. Đổi tên – rename
12. Sao chép – copy
13. Tìm kiếm - search
14. Liệt kê – list, dir11
Tập tin – phương pháp truy cập
Giả thiết: cĩ 1 tập tin lưu danh sách sinh viên
Đặt vấn đề: cần đọc thơng tin của sinh viên thứ N
Kích thƣớc mỗi
record
Giải quyết Phƣơng pháp
khác nhau Phải đọc từ đầu Truy cập tuần tự
Giống nhau 1. Tính vị trí logic lưu SV thứ N là
p
2. Di chuyển đến vị trí p và đọc
Truy cập ngẫu
nhiên
Khác nhau
(Cĩ 1 bảng lưu vị
trí lưu mỗi SV)
1. Tra bảng
2. Di chuyển đến vị trí p và đọc
Truy cập index
12
Thư mục
Là một tập tin đặc biệt. Trong nhiều hệ thống thư mục 
được coi như là tập tin
Giúp cho việc quản lý các tập tin dễ dàng hơn. 
Gom nhĩm các tập tin vào trong các thư mục theo ý 
nghĩa và mục đích sử dụng của người dùng.
Giúp định vị các tập tin 1 cách nhanh chĩng.
Cĩ thể chứa thư mục con. root
bob sue
www fun3013
13
Thư mục - Đường dẫn (Path)
Dùng để xác định vị trí lưu tập tin khi hệ thống
được tổ chức thành cây thư mục:
Đường dẫn tuyệt đối:
Ví dụ: “C:\Downloads\software\baigiang.doc” 
Đường dẫn tương đối:
Ví dụ: “software\baigiang.doc” nếu thư mục hiện hành là
“C:\Downloads\”
Các thư mục đặc biệt:
Thư mục hiện hành (.)
Thư mục cha (..)
14
2. Tổ chức thơng tin trên đĩa từ
Đĩa từ - cấu trúc
read-write head
track
sectors 
16
Đĩa từ - cấu trúc
Cấu trúc vật lý của đĩa từ:
Hình trịn, gồm nhiều mặt gọi là head.
Mỗi mặt cĩ nhiều đường trịn đồng tâm gọi là
track.
Trên các đường trịn (track) được chia thành các
cung trịn gọi là sector.
Tập các track đồng tâm gọi là cylinder
Mỗi mặt cĩ 1 đầu đọc để đọc ghi dữ liệu
Mỗi lần đọc/ghi ít nhất 1 cung trịn (512B).
17
Đĩa từ - cấu trúc
Vị trí của mỗi sector trong đĩa được thể hiện bằng
3 tham số : {sector, track, head}.
Head được đánh số từ trên xuống bắt đầu từ 0.
Track được đánh số từ ngồi vào bắt đầu từ 0.
Sector được đánh số bắt đầu từ 1 theo chiều
ngược với chiều quay của đĩa.
Mỗi lần đọc ghi N sector
18
Đĩa từ - cấu trúc
Head 0 Head 2
19
Đĩa từ - dung lượng đĩa
Kích thước đĩa phụ thuộc vào các yếu tố sau:
Số mặt từ, head
Số track trên mỗi mặt từ
Số sector trên mỗi track
Kích thước (byte) trên mỗi track.
20
Đĩa từ - tổ chức đĩa
Các thơng số trên đĩa mềm 1.44MB:
2 head, 80 track/head, 18 sector/track.
Dung lượng đĩa = 2 head/disk *80 track/head *18 
sector/track = 2880 sector/disk = 0.5 KB/sector * 
2880 sector/disk = 1440 KB/disk (~ 1.4MB)
Sector logic: 0 đến 2879 và tương ứng với các
sector vật lý như sau:
Sector 0..17 tương ứng với sector vật lý (1,0,0)..(18,0,0)
Sector 18..35 tương ứng với sector vật lý (1,0,1)..(18,0,1)

Sector 2879 tương ứng với sector vật lý (18,79,1).
21
Đĩa từ - thuật tốn đọc đĩa
First-Come-First-Serve (FCFS)
Shortest Seek Time First (SSTF)
SCAN, C-SCAN
Look, C-Look

22
TRUY XUẤT ĐĨA CỨNG
3 yếu tố ảnh hưởng thời gian truy xuất đĩa
Seek time: thời gian di chuyển đầu đọc tới track 
Latency: thời gian để quay đĩa sao cho sector cần đọc
nằm dưới đầu đọc
Transfer time: thời gian đọc/ ghi dữ liệu lên sector
Thực tế: 
Seek time >> latency time > transfer time 
Tối ưu seek time  định thời truy xuất đĩa
Tối ưu latency time:
Làm đĩa nhỏ, quay nhanh hơn, lưu trữ dữ liệu liên quan
gần nhau
Chọn kích thước sector, nơi lưu trữ các file thường dùng
hợp lý
23
CÁC GIẢI THUẬT ĐỊNH THỜI ĐĨA
Bài toán: Cóù n yêu cầu đọc đĩa ở các track khác nhau
x1, x2,  , xN vào các thời điểm tương ứng t1, t2, , tN
 phục vụ các yêu cầu đó vào thời điểm nào?
Tiêu chuẩn đánh giá
Công bằng
Hiệu suất cao
Thời gian đáp ứng trung bình thấp
Dự đoán được thời gian phục vụ
Một số giải thuật tiêu biểu:
FCFS
SSTF 
SCAN, N-step-SCAN, C-SCAN
CLOOK
24
First Come First Serve - FCFS
Phục vụ theo thứ tự yêu cầu
Đơn giản nhưng khơng đáp ứng tốt dịch vụ
ti
m
e
cylinder number
1 5 10 15 20 25
12
Các khối cần đọc (đầu đọc hiện tại tại vị trí 11):
142721824
scheduling
queue
24
8
21
7
2
14
12
25
Shortest Seek Time First - SSTF
ti
m
e
cylinder number
1 5 10 15 20 25scheduling
queue
24
8
21
7
2
14
12
Chọn nhu cầu gần với vị trí hiện hành nhất.
 Cĩ nhiều yêu cầu chờ ..chờvà chờ
26
SCAN
 Di chuyển đầu đọc về 1 phía của đĩa đến block xa
nhất sau đĩ di chuyển về phía kia.
 Cịn gọi là thuật tốn thang máy.
12 14 2 7 21 8 24
Các khối cần đọc (đầu đọc hiện tại tại vị trí 11):
ti
m
e
27
SCAN vs. FCFS
Trong
trường
hợp này, 
SCAN tốt
hơn
FCFS vì
hạn chế
sự di
chuyển
của đầu
đọc đĩa
Sector number
1 5 10 15 20 25
ti
m
e
ti
m
e
28
C-SCAN
Nguyên tắc:
Tương tự thuật tốn SCAN.
Chỉ khác khi di chuyển đến 1 đầu của đĩa thì trở về
vị trí bắt đầu của đĩa.
12 14 2 7 21 8 24
Các khối cần đọc (đầu đọc hiện tại tại vị trí 11):
ti
m
e
29
LOOK – C-LOOK
Nhận xét:
Hai thuật tốn lập lịch SCAN và C-SCAN luơn luơn
di chuyển đầu đọc của đĩa từ đầu này sang đầu kia
và di chuyển đến khối cuối cùng ở mỗi hướng.
Nguyên tắc:
Giống SCAN và C-SCAN nhưng chỉ di chuyển đầu
đọc đến khối xa nhất chứ khơng đến cuối.
30
LOOK – C-LOOK
Các khối cần đọc (đầu đọc hiện tại tại vị trí 11):
12 14 2 7 21 8 24
31
3. Hệ thống quản lý tập tin trên 
Windows
° Phân hoạch đĩa cứng theo chuẩn Basic Disk
(Tối đa 4 Primary Partitions hoặc 3 Primary Partitions + 1 Extended 
Partition, trong số đó có 1 Active Partition)
Master Boot Record
MBR Partition 1 Partition 2 Partition 3 Partition 4
BR
Boot Record (Sector)
FAT1 FAT2 RootDir ...
Thư mục Gốc
Đầu mục (Directory Entry) trỏ đến tập tin hay thư mục con
2 3
Các liên cung (Cluster) 
dữ liệu
1 Cluster= n Sector
1 Sector=512 Bytes
FAT File System
33
Basic type
Tối đa 4 phân vùng (partition)
Loại partition
Primary
Mỗi phân vùng: ấn định 1 ký tự
Extended
Cĩ thể tạo nhiều logicial drive, ấn định 1 ký tự cho mỗi
logical drive
34
Dynamic type
Chia thành nhiều volume, Khơng bị giới hạn số
lượng
Loại Volume
Simple
Striped
Spanned
Mirrored (RAID-1)
Redundant Array of Independent Disks (RAID-5)
35
° Ổ đĩa NTFS trong Windows 2000/XP/2003
– Simple Volume: Ổ đơn dựa trên 1 vùng nhớ của
Dynamic Disk (phân biệt với Basic Disk).
Một đĩa cứng có thể phân hoạch thành nhiều ổ đơn.
– Spanned Volume: Ổ ghép trải trên nhiều ổ đơn.
– Striped Volume: Ổ song song. Nội dung mỗi tập tin 
rải trên nhiều ổ đơn. Còn gọi là RAID-0.
– Mirrored Volume: Ổ ánh xạ gương. Bao gồm 1 ổ đơn
được ánh xạ tự động sang 1 ổ đơn khác. Còn gọi là
RAID-1.
– RAID-5 Volume (Redundant Array of Inexpensive 
Disks): Trải trên 3 hoặc hơn ổ đĩa đơn. Dữ liệu được
rải trên các ổ đĩa thành phần cùng với thông tin chẵn
lẻ (parity) để đảm bảo khả năng kháng lỗi (fault 
tolerance) mà Striped Volume không làm được.
36
Master Boot Record
STT Số bytes Nội dung
1 1 Chỉ thị Partition (80h = Active, 00h = Không Active)
2 1 Head bắt đầu
3 2 Cylinder bắt đầu (10 bits), Sector bắt đầu (6 bits)
4 1 Chỉ thị hệ thống (Nhận diện HĐH)
5 1 Head kết thúc
6 2 Cylinder kết thúc (10 bits), Sector kết thúc (6 bits)
7 4 Sector lô-gic bắt đầu (tương đối với sector đầu tiên)
8 4 Tổng số sector của Partition
– Chứa chương trình Khởi động, Đọc bảng mô tả các 
Partition trên đĩa, Tìm Active Partition, Chọn HĐH, 
Chuyển điều khiển cho chương trình trong Boot Record
của Partition vừa chọn.
– Mỗi Partition được mô tả bằng 16 bytes sau:
37
Boot Record
STT Số bytes Nội dung
1 3 Lệnh nhảy đến đầu đoạn mã boot của Boot Record
2 8 Tên và số hiệu phiên bản HĐH (ví dụ: MS DOS 6.0)
3 2 Số bytes / Sector (thường là 512 bytes)
4 1 Số Sector / Cluster
5 2 Dự trữ
6 1 Số bảng FAT (thường là 2)
7 2 Số đầu mục (Directory Entry) trong Thư mục gốc
8 2 Tổng số sector của Partition
9 1 Nhận dạng thiết bị (ví dụ: F8 h -> Đĩa cứng)
10 2 Số sector / bảng FAT
11 2 Số sector / rãnh (track)
12 2 Số đầu đọc (head)
13 4 Số sector ẩn (hidden sectors)
14 4 Tổng số sector của Partition
15 1 Số đĩa vật lý
16 1 Dự trữ
17 1 Ký hiệu HĐH
18 4 Serial Number
19 11 Volume Label
20 1 Dự trữ
21 450 Đoạn mã của Boot Record dùng nạp HĐH từ đĩa
38
Cấu trúc Directory Entry trong hệ tập tin 
FAT12 và FAT16
Nếu tên tập tin bắt 
đầu bằng mã E5 h, 
tập tin đã bị loại bỏ
A D V S H R
A - Archive
D - Directory
V -Volume Label
S - System
H - Hidden
R - Read-Only
Số hiệu 
Cluster 
đầu tiên 
của tập 
tin hay 
thư mục 
con
Thời gian cập nhật gần nhất:
- Giờ (5 bit), Phút (6 bit), Giây (5 bit)
- Ngày (5 bit), Tháng (4 bit), Năm (7 bit)
39
Bytes
Cấu trúc Directory Entry trong hệ tập tin FAT32
Ngày truy cập gần nhất
Nửa cuối của số hiệu 
Cluster đầu tiên
Nửa đầu của số hiệu 
Cluster đầu tiên
40
Bytes
Checksum
Cấu trúc Directory Entry dùng chứa một phần
tên dài trong Windows 
Số thứ tự
Tổng kiểm 
tra
Các thuộc tính
41
° Bảng FAT
...
12, 16 hoặc 32 bits -> FAT12, FAT16, FAT32
2
1
0
3
4
5
6
7
8
9
10
11
12
File A.gif trên các Cluster: 6, 4, 2
A 6
4
2
EOF
BAD
Không sử dụng cho 
vùng dữ liệu
°Mỗi dòng trong FAT (kể từ dòng 2
trở đi) tương ứng với 1 Cluster trong 
vùng dữ liệu.
°Một số mã đặc biệt (trong FAT32):
– EOF có mã FFFFFFFF h
– BAD có mã FFFFFFF7 h
– Trống ứng với mã 00000000 h
(cluster tương ứng chưa dùng) 
gif
42
Quá trình boot hệ thống
1. POST (Power-On-Self-Test)
2. Tải MBR để đọc thơng tin bảng phân vùng.
3. Tìm phân vùng “active”.
4. Chuyển quyền điều khiển về cho đoạn mã chương
trình nằm trong Boot Record của phân vùng “active”
5. Tải HĐH tại phân vùng “active”. 
Power on
Reboot
Khởi tạo hệ thống
CPU, device controller, main memory, load đoạn code khởi động hđh
43

File đính kèm:

  • pdfbai_giang_he_dieu_hanh_chuong_4_quan_ly_file.pdf