Chương 11: Quản lý bộ nhớ thứ cấp
Quản lý bộ nhớ thứ cấp
với hệ thống File FAT
(File Allocation Table)
Nguyên lý hệ điều hành
Trang 1
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
Mục tiêu của chương:
■ Trình bày cấu trúc, tổ chức vật lý và logic của
đĩa từ khi sử dụng hệ thống file FAT.
■ Từ đó đi đến giải quyết 1 số bài toán thường
gặp trong thực tế như cứu dữ liệu, phục hồi đĩa
bị format,...
Nguyên lý hệ điều hành
Trang 2
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
Sau khi học chương này sinh viên phải nắm được
■ Hiểu được cấu trúc vật lý và cấu trúc logic của đĩa
từ (đĩa cứng và đĩa mềm).
■ Hiểu được nguyên tắc và các thao tác của hệ điều
hành khi thực hiện các tác vụ với file như, copy,
delete, update, edit, .v.v. trên đĩa từ.
■ Giải được một số bài toán trên đĩa từ như: Phục hồi
file bị xóa, phục hội ổ đĩa bị Format, tìm kiếm các
file bị phân mảnh, phát hiện mã nguồn B-virus, …
Nguyên lý hệ điều hành
Trang 3
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
■ 4.1. Đĩa mềm
● 4.1.1. Cấu trúc đĩa mềm 1,44 Mb
● 4.1.2. Cách tổ chức đĩa với FAT
● 4.1.3. Nội dung các vùng
■ 4.2. Đĩa cứng
● 4.2.1. Cung từ khởi động chủ (Master Boot Record MBR).
● 4.2.2. Cung từ khởi động (Boot Record - DBR).
● 4.2.3. Tổ chức truy nhập tập tin trong FAT16, 32.
■ 4.3. Phần tự lực – Quản lý đĩa với hệ thống file
NTFS
■ 4.4. Định thời truy cập đĩa
● 4.4.1. Các vấn đề trong truy xuất đĩa
● 4.4.2. Định thời truy cập đĩa
Nguyên lý hệ điều hành
Trang 4
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
Các câu hỏi thường gặp
● Ghi và đọc file:
00101101
Baigiang.doc
Chuongtring.pas
?
00101101
Music.wmv
…
?
1
0
1
1
1
0
0
1
1
1
1
0
0
0
0
0
0
1
1
0
1
1
1
0
Nguyên lý hệ điều hành
00101101
Làm thế nào mà HĐH định vị và xác
định được chính xác vị trí và các file
khi tiến hành ghi/đọc ?
0
Trang 5
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
Các câu hỏi thường gặp
HĐH quản lý file và dung lượng
đĩa như thế nào?
Hệ điều hành
Dựa vào đâu mà
HĐH có thể:
-Quản lý được
danh mục các file
và folder.
-Quản lý được
dung lượng đĩa.
Nguyên lý hệ điều hành
Trang 6
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
Các câu hỏi thường gặp
Khi HĐH xóa file hoặc format ổ, dựa vào cơ chế gì mà các
chương trình có thể phục hồi lại dữ liệu?
Nguyên lý hệ điều hành
Trang 7
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
Ý tưởng về quản lý thông tin trên sách
• Giả thiết giấy ngay sau khi xuất xưởng chưa được đóng thành các
quấn, và chúng ta ghi chép ngay thông tin lên đó.
Ở đâu ?
• Khi cần đọc 1 thông tin nào đó người
đọc phải lục tung cả quận giấy dài đó để
tìm, công việc thực sự khó khăn tỉ lệ
với chiều dài của quận giấy.
Chương 11: Quản lý bộ nhớ thứ cấp
Ý tưởng về quản lý thông tin trên sách
Cần có phương pháp gì để việc tìm kiếm đơn
giản hơn?
Mục lục
Abc 12
Bcd 34
…
50
+
Chương 11: Quản lý bộ nhớ thứ cấp
Ý tưởng về quản lý thông tin trên sách
■ Cách quản lý, ghi, đọc thông tin trên đĩa từ cũng tuân theo
ý tưởng đó.
Nguyên lý hệ điều hành
Trang 10
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
4.1. Đĩ a mềm
■ Cấu trúc đĩa mềm 1,44 Mb
■ Cách tổ chức đĩa với FAT
■ Nội dung các vùng
Nguyên lý hệ điều hành
Trang 11
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
Lý do chọn đĩa mềm để nghiên cứu trước khi
nghiên cứu đĩa cứng
■ Đây là loại đĩa sơ khai sử dụng hệ thống file FAT
■ Chi phí thấp vì khi thực hành có thể gây hỏng đĩa
■ Cấu trúc của đĩa mềm gần như đồng dạng với đĩa cứng
Nguyên lý hệ điều hành
Trang 12
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
4.1.1. Cấu trúc đĩ a mềm 1,44 Mb
Track 0
■ Đĩa được chia thành các vòng
tròn đồng tâm và được gọi là các
rãnh – Track
■ Đĩa mềm 1,44MB có hai mặt,
được quy định là mặt 0 và mặt 1.
■ Có tổng số 80 track trên mỗi mặt
và được đánh số từ 0, 1, 2, … đến
79 theo thứ tự từ ngoài vào trong
Track n
Nguyên lý hệ điều hành
Trang 13
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
4.1.1. Cấu trúc đĩ a mềm 1,44 Mb
■ Có 18 cung từ trên mỗi rãnh và
được đánh số từ 1, 2, …, đến 18
Sector 0
■ 1 sector = 512 Bytes.
■ Việc chia định dạng phân chia số
sector, track, kích thước của
sector được thực hiện bằng phần
mềm (format).
(?)
Nguyên lý hệ điều hành
Trang 14
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
4.1.1. Cấu trúc đĩ a mềm 1,44 Mb
■ Như vậy, để xác định vị trí của một sector thì ta
cần ba thông số, là:
Sector đó thuộc mặt nào (mặt 0 hay mặt 1)
Sector đó thuộc rãnh nào [0..79]
Sector thứ mấy [1..18]
■ Địa chỉ này của sector được gọi là địa chỉ tuyệt
đối hay địa chỉ vật lý. Các thủ tục của ROMBIOS dùng địa chỉ tuyệt đối.
Nguyên lý hệ điều hành
Trang 15
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
4.1.1. Cấu trúc đĩ a mềm 1,44 Mb
■ Một cách đánh địa chỉ khác đó là địa chỉ logic.
Theo quy định này các sector bắt đầu từ: 0, 1, 2,
…, đến 2879, thứ tự đánh địa chỉ như sau:
● Rãnh 0, mặt 0: Các sector lần lượt là 0, 1, 2, …, 17
● Rãnh 0, mặt 1: Các sector lần lượt là 18, 19, 20, …, 35
● Rãnh 1, mặt 0: Các sector lần lượt là 36, 37, 38, …, 53
● Rãnh 1, mặt 1: Các sector lần lượt là 54, 55, 56, …, 71
Nguyên lý hệ điều hành
Trang 16
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
4.1.1. Cấu trúc đĩ a mềm 1,44 Mb
■ Như vậy, theo cách đánh địa chỉ này ta chỉ cần một thông
số là đủ để xác định vị trí của sector trên đĩa.
■ Nếu biết được địa chỉ logic, ta có thể xác định được địa chỉ
vật lý của sector như sau:
Sector vật lý = Sector logic mod 18 +1.
Nguyên lý hệ điều hành
Mặt đĩa
= (Sector logic div 18) mod 2.
Thứ tự track
= Sector logic div (18*2).
Trang 17
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
4.1.2. Cách tổ chức đĩ a với FAT
■ FAT chia đĩa thành 4 vùng với 4
công dụng khác nhau
-Bảng tham số đĩa: chứa
thông
-Bảng
thư mục gốc của đĩa
tin về cấu hình
đĩa,cấp
và loại
-Bảng
phát và định-Vùng
vị filelưu dữ liệu thực sự của
HĐH được cài đặt.
các file trên đĩa.
-Mã lệnh khởi động.
Nguyên lý hệ điều hành
Trang 18
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
4.1.3. Nội dung các vùng
a) Sector khởi động (Boot sector).
Nguyên lý hệ điều hành
Trang 19
Nguyễn Văn Huy – KTMT - 2008
Chng 11: Qun lý b nh th cp
Nguyờn lý h iu hnh
Vị trí
Chiều dài
Nội dung
00h
3 byte
0Bh
1 từ
0Dh
1 byte
0Eh
1 từ
10h
1 byte
18h
1 từ
Số cung từ trên một từ cluster
1Ah
1 từ
Số mặt
24h
1 từ
Tổng số cung từ trong một FAT
2Ch
1 từ kép
43h
Dword
Serial Number
47h
11 byte
Volume
52h
8 byte
File system ID
5Ah
436 byte
1FEh
2 byte
Lnh nhy n chng trỡnh khi ng
Số byte trên mỗi cung từ
Số cung từ trong mỗi liên cung
Vị trí của FAT tính từ cung từ đầu tiên của phân khu
Số FAT
Vị trí liên cung bắt đầu của th mục gốc (FAT32)
Chng trỡnh khi ng
55AAh
Trang 20
Nguyn Vn Huy KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
4.1.3. Nội dung các vùng
b) Bảng cấp phát tập tin FAT
■ Bảng FAT là phần quan trọng nhất trên đĩa, nếu
nó bị phá hỏng thì toàn bộ dữ liệu trên đĩa sẽ rất
khó khôi phục lại được.
■ Luôn có thêm một bản sao của FAT để dự
phòng
Nguyên lý hệ điều hành
Trang 21
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
4.1.3. Nội dung các vùng
b) Bảng cấp phát tập tin FAT
■ Bảng FAT chỉ là một bảng số mà mỗi vị trí trên
đó tương ứng với một liên cung. Vị trí đầu tiên
biểu diễn liên cung số 0, vị trí kế tiếp biểu diễn
liên cung số 1, vv…
Nguyên lý hệ điều hành
Trang 22
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
4.1.3. Nội dung các vùng
b) Bảng cấp phát tập tin FAT
■ Nếu mục vào có giá trị 000 hex thì có nghĩa là
liên cung tương ứng còn tự do và có thể dùng
được.
■ Nếu mục vào có giá trị FF7 hex thì liên cung
tương ứng đã bị đánh dấu là không dùng được từ
lúc Format đĩa hoặc chạy chương trình sửa đĩa
(Bad Block).
Nguyên lý hệ điều hành
Trang 23
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
4.1.3. Nội dung các vùng
b) Bảng cấp phát tập tin FAT
■ Nếu mục vào có giá trị bất kỳ từ 2 đến FF0 hex (4080
Dec) thì có nghĩa liên cung tương ứng đang được một
tập tin sử dụng và con số này chính là số hiệu của liên
cung tiếp theo của tập tin.
■ Nếu mục vào là số FFF hex thì có nghĩa liên cung này là
liên cung cuối cùng của tập tin.
Nguyên lý hệ điều hành
Trang 24
Nguyễn Văn Huy – KTMT - 2008
Chương 11: Quản lý bộ nhớ thứ cấp
Entry 0
Entry 1
Entry 2
Entry i
Entry n
Nguyên lý hệ điều hành
xxx
data
000
free
xxx
data
FFF
End
xxx
data
FF7
bad
xxx
data
xxx
data
Trang 25
Cluster 0
Cluster 1
Cluster 2
Cluster i
Cluster n
Nguyễn Văn Huy – KTMT - 2008