



















Preview text:
Học phần HỆ ĐIỀU HÀNH Nội dung ôn tập Tiến trình
1) Khái niệm về tiến trình-process, các trạng thái cơ bản của tiến trình
2) Sự biến đổi trạng thái của tiến trình
3) Tạm dừng và kích hoạt, biến đổi trạng thái khi có tác vụ tạm dừng, kích hoạt
4) Xử lý ngắt, cơ chế chuyển đổi ngữ cảnh
5) Hạt nhân của hệ điều hành, Hai mô hình kiến trúc hệ điều hành: monolithic và micro kernel
Tiến trình tương tranh không đồng bộ 1)
Khái niệm loại trừ (mutual exclusion), ví dụ
2) Thuật toán Dekker cài đặt loại trừ cho 2 tiến trình
3) Thực hiện cài đặt loại trừ bằng lệnh testandset
4) Khái niệm Semaphore, ứng dụng của semaphore
Tắc ngẽn (Deadlock)
1) Khái niệm deadlock, ví dụ tình trạng deadlock
2) Các điều kiện xuất hiện dealock
3) Ngăn chặn dealock theo các chiến lược của Havender
4) Thuật toán Banker, trạng thái của hệ thống, ví dụ
5) Phát hiện deadlock qua đồ thị phân bố tài nguyên
Bộ nhớ ảo: tổ chức bộ nhớ ảo, điều khiển bộ nhớ ảo
1) Khái niệm bộ nhớ ảo, ưu nhược điểm
2) Ánh xạ địa chỉ theo khối
3) Tổ chức bộ nhớ theo trang
4) Tổ chức bộ nhớ theo đoạn
5) Tổ chức bộ nhớ kết hợp trang, đoạn 6) Các chiến lược loại bỏ trang bộ nhớ
7) Các chiến lược nạp trang
8) Quản lý bộ nhớ theo working set Lập lịch cho BXL
1) Khái niệm lập lịch cho BXL, lượng tử thời gian, mức ưu tiên, có trưng dụng/hoán đổi/preemtive và không
2) Các cơ chế lập lịch cho BXL: FCFS, SSTF, SJF, Hàng đợi nhiều mức
3) Lập lịch trong các hệ thống: đa xử lý, kiến trúc NUMA, … Đĩa từ
1) Cấu trúc và hoạt động của đĩa từ
2) Các cơ chế tối ưu thời gian định vị (seek time) Hệ thống File
1) Khái niệm hệ thống file, Chức năng của hệ thống file
2) Hệ thống file dùng danh sách khối dữ liệu (block data) 3) Hệ thống file
dùng danh sách khối chỉ số (block index) 4) Hệ thống file dùng bảng ánh xạ các block.
5) Kiểm soát truy cập: ma trận kiểm soát truy cập, danh sách kiểm soát truy cập 6)
Một số hệ thống file: FAT, NTFS,..
LINUX/UNIX và phần mềm mã mở
1) Khái niệm bản quyền, phần mềm mã mở, bản quyền của phần mềm mã mở, mô hình kinh
doanh với phần mềm mã mở
2) Ưu, nhược điểm của phần mềm mã mở >< thương mại 3) Lịch sử HDH Linux
4) Một số đặc điểm chính của HDH Linux
5) Cấu trúc lệnh, một số lệnh cơ bản trong Linux (lệnh file thư mục, lệnh quản trị người dùng, …)
6) Kiến trúc hệ thống X windows
A. Tiến trình (process) 1. Tiến trình – một chương trình đang thực thi; việc thực thi
tiến trình phải tiến triển một cách tuần tự. Không thực hiện song song nhiều lệnh
- Mỗi tiến trình bao gồm: một không gian địa chỉ, một tập thanh ghi, một con trỏ lệnh, một stack riêng
- Tiến trình trong bộ nhớ: -
- Các trạng thái cơ bản của tiến trình (Tiến trình thực thi có thể chuyển đổi trạng thái):
+ new: Tiến trình được khởi tạo
+ Ready : Tiến trình sẵn sàng, chờ được cấp tài nguyên CPU
+ Running : Tiến trình thực sự được thực thi
+Waiting/ Blocked: Tiến trình chờ sự kiện để thực thi hoặc chờ cấp phát tài nguyên(thêm)
+ Terminated: Tiến trình kết thúc 2.
Sự biến đổi trạng thái của tiến trình :
- Khi chạy chương trình : HĐH tạo tiến trình , cấp phát tài nguyên -> ready ->
ready process list(có quan tâm đến thứ tự)
- Bộ xử lý trống : Tiến trình thực thi
Ready -> Running : dispath(scheduler dispath)
- Thực thi xong : HĐH can thiệp Running -> Ready : thời gian lượng tử
+) thực thi xong kết thúc
+) hết thời gian được cấp -> ready +) I/O or event -> waiting
- Qúa trình chờ : Sau khi thực thi xong
+ Giải phóng BXL về ready
+ Tiến trình được blocking về blocked - Xảy ra sự kiện Blocked -> Ready
+) Khối điều khiển tiến trình:
3. Tạm dừng và kích hoạt. - Tạm dừng
+ Nếu như một tiến trình đang sử dụng bộ xử lý (Running State) trong quá trình hoạt động
của mình thực hiện tác vụ vào/ra (I/O) thì nó sẽ tự mình giải phóng bộ xử lý (tự mình
chuyển vào trạng thái Waiting/Blocked để chờ tác vụ vào/ra kết thúc). Sự chuyển trạng
thái này có thể biểu diễn: blocking (Process name): Running → Blocked - Kích hoạt
+ Còn một tiến trình thay đổi trạng thái cuối cùng, đó là khi kết thúc tác vụ vào/ra (hay nói
chung xảy ra một sự kiện mà tiến trình bị khóa đang chờ) lúc đó tiến trình chuyển từ trạng
thái Blocked sang trạng thái Ready – sẵn sàng để thực hiện tiếp. Tiến trình này có thể biểu
diễn: waikup(Process name): Blocked → Ready - Biến đổi trạng thái khi có dừng hoặc kích hoạt:
Khi bộ xử lý đang thực thi tiến trình , có sự kiện dừng thì sẽ dừng tiến trình và xử lý yêu
cầu . Sau khi xử lý xong , có yêu cầu kích hoạt sẽ tiếp tục thực thi từ thời điểm ngắt quãng.
4. – Ngắt : Là sự kiện dừng công việc hiện tại của BXL(CPU) - Xử lý ngắt : + Điều khiển HĐH
+ HĐH lưu lại trạng thái của tiến trình hiện tại
+ HĐH xử lý và phân loại ngắt cho bộ xử lý ngắt tương ứng - Các loại ngắt:
+ SVC-interrupt: ngắt do process đang chạy sinh ra
+ I/O: ngắt li đến thiết bị vào ra + External: ngắt ngoài
+ Restart: ngắt khởi động hệ thống(có báo trc cho các tiến trình biết)
+ Program check: ngắt lỗi phần mềm
+ Machine check: ngắt lỗi phần cứng - Cơ
chế chuyển đổi ngữ cảnh :
+ Khi có ngắt thi HĐH ghi lại trạng thái của process bị ngắt và chuyển điều khiển
cho chương trình xử lý ngắt
+ Sử dụng các thanh ghi trạng thái chương trình PSW (process status word) chứa
thông tin trạng thái process. Có 3 loại PSW: old PSW. current PSW. new PSW. +
Trong BXL chỉ có 1 current PSW và có 6 new PSW (tương ứng cho 6 loại ngắt) và 6 old PSW tương ứng.
+ Khi xử lý ngắt trạng thái của current PSW chuyển cho old PSW còn current
PSW sẽ lưu trạng thái của new PSW.
+ Sau khi chuyển đổi thì current PSW chứa địa chỉ của chương trình xử lý ngắt và
sau đó chương trình sẽ thực thi. Khi kết thúc chương trình xử lý ngắt, BXL hoạt
động lại bình thường.
5. Hạt nhân HĐH – Tất cả các thao tác của tiến trình được thực hiện bởi một phần của
HĐH gọi là hạt nhân – kernel.
+ Cơ chế : . user mode : app : cơ chế ưu tiên thấp
. kernel mode : HĐH : cơ chế ưu tiên cao
+ Vai trò : . Quản lý tiến trình . Quản lý bộ nhớ . Lập lịch BXL . Xử lý ngắt
- Có kiến trúc của HĐH : + Monolithic kernel Trong OS: + Giao tiếp : Inprocess + Local procedure call + Địa chỉ
Tính chất : + Kích thước kernel lớn , tốc độ nhanh
+ Khi 1 processs bị crash , kéo theo cả hệ thống bị crash theo , tính ổn
định thấp , khó mở rộng
+ Khó debug , kém an toàn và bảo trì mất nhiều thời gian + Micro kernel
Trong OS : Giao tiếp : Inter process Remote processer call Message passing Tính chất :
+ Kích thước kernel bé , tốc độ chậm
+ Khi 1 process bị crash thì không ảnh hưởng tới process khác,ổn định cao , dễ mở rộng
+ Dễ bảo trì , debug và an toàn hơn
1. Khái niệm loại trừ (mutual exclusion) : Là quá trình truy cập của các tiến trình với tài
nguyên hoặc dữ liệu chia sẻ , bằng cách loại trừ lẫn nhau
VD : Các cửa hàng bán vẽ : Các tiến trình Kho vé : Dữ liệu Logic :
- Đọc X (số chỗ trống)
- Bán vé – Trừ số lượng vé
- Cập nhập số lượng vé Lệnh : a=X a=a-n X=a
Giải pháp loại trừ nhau: critical section – đoạn găng
- Điều độ đoạn găng:
- Cài đặt chỉ thị loại trừ: Phần mềm, phần cứng
2. Thuật toán Dekker : s = {1 𝑛ế𝑢 𝑐ℎọ𝑛 𝑓1 2 𝑛ế𝑢 𝑐ℎọ𝑛 𝑓2 P1,f1 P2,f2 While true While true; f 1 = true ; f 2=true while f2=true do: while f1=true do: if s=2 do: if s=1 do f1=false f2=false while while s=2 do; s=1 do; f1=true f2=true end; end; end; end; f2=false f 1= false s=1 end; s=2 end; - Các thuật toán trước + V1: + V2:
Loại trừ nhau: không đảm bảo + V3: Chờ vô hạn - 3. Thuật toán TestandSet : - Lệnh testandset:
- Thuật toán TestandSet: a : Boolean P1,f1 P2,f2 While true While true; p1 = true ; p2=true while while p1=true do: p2=true do: testAndset(p1,a) testAndset(p2,a) a=false end; a = false end;
Trong đó testAndset(a,b) : a=b ; b=true;
4. - Khái niệm semaphore : Là biển được bảo vệ tạo thành phương pháp hạn chế truy cập tới
tài nguyên dùng chung trong môi trường đa chương. Giá trị của nó chỉ được đọc , ghi thông
qua các biến q , v , biến khởi tạo + init(s,v) : Gán s=v; + p(s) : .Nếu s>0 : s=s-1; . Ngược lại chờ s
+ v(s) : . Nếu chờ s thì chọn 1 tiến trình để tiếp tục . Ngược lại s=s+1;
Với giả định: hàng đợi V(s) theo nguyên lý FIFO -Cài đặt loại trừ: _ Ứng dụng :
+ Đồng bộ tiến trình: + Cài đặt loại trừ: + Cấp phát tài nguyên: //yêu cầu cấp P(s) //trả lại tài nguyên V(s)
C . Tắc nghẽn (deadlock)
1. Khái niệm deadlock : Là trạng thái xảy ra trong môi trường đa chương , khi hai hay nhiều
tiến trình đi vào vòng lặp chờ tài nguyên mãi mãi . Vd : p1,p2 chờ vô hạn
2. Các điều kiện xuất hiện deadlock :
- Tiến trình yêu cầu thêm tài nguyên : Khi tiến trình yêu cầu thêm tài nguyên trong
khi tiến trình vẫn chiếm tài nguyên đã được cấp.
- Tài nguyên không được HĐH thu hồi mà tiến trình giải phóng
- Tài nguyên không chia sẻ được cho nhiều tiến trình - Xuất hiện vòng kín giữa yêu cầu và cấp phát
- Các hướng xử lý bế tắc: + Ngăn chặn:
Hiệu quả sd tài nguyên không hiệu quả 3. Thuật toán Banker :
- Điều kiện: Mỗi tiến trình:
+ Số lượng tài nguyên lớn nhất có thể cần
+ Trả lại thời gian sau thời gian hữu hạn nào đó
+ 1 yêu cầu => cấp phát 1 tài nguyên - Hệ thống: đảm bảo
+ yc => sẽ đc cấp phát sau t hữu hạn
Giả sử có n người sử dụng , I(i) là số thiết bị cấp cho người I , m(i) số thiết bị lớn nhất
người i cần , c(i) là số thiết bị lớn nhất người i cần tại một thời điểm -> c(i)=m(i)-I(i) .
Trong t thiết bị thì số thiết bị dỗi tại 1 thời điểm là a= t-∑ 𝐼(𝑖)
⇨ Thuật toán Banker yêu cầu số thiết bị cấp cho người dùng tại một thời điểm không bao
giờ vượt qua số thiết bị nhiều nhất anh ta cần đến . Nếu HĐH có đủ số thiết bị thỏa mãn
thì HĐH yêu cầu người dùng sử dụng và trả lại thiết bị đó cho HĐH sau thời gian hữu hạn nào đó.
Trạng thái của hệ thống :
+ Trạng thái ổn định : là trạng thái mà HĐH đảm bảo tất cả tiến trình kết thúc sau 1
khoảng thời gian hữu hạn nào đó .
+ Trạng thái không ổn định : là trạng thái có thể dẫn tới deadlock
4. Phát hiện deadlock qua đồ thị phân bố tài nguyên
Rút gọn đồ thị để phát hiện deadlock :
- Khi tiến trình kết thúc công việc và trả lại các tài nguyên cho hệ thống thì ngắt bỏ
cung từ process đó đến tài nguyên và từ tài nguyên đến process đó
- Khi tài nguyên chỉ cấp phát cho 1 tiến trình và tiến trình đó không yêu cầu cấp
thêm tài nguyên hoặc yêu cầu cấp thêm tài nguyên còn trống
Không còn cung nào thì sẽ không tắc nghẽn D. Bộ nhớ ảo
1. - Bộ nhớ ảo là một kĩ thuật quản lý bộ nhớ được giả lập bởi HĐH , nó liên kết với địa chỉ ô
nhớ bởi địa chỉ ảo . Nó không tương ứng 1-1(nó lớn hơn) với bộ nhớ thực và có không gian bộ
nhớ lớn , giúp chương trình không bị giới hạn bộ nhớ.(địa chỉ tiến trình truy cập không trùng
với địa chỉ vật lý) - Ưu điểm :
+ Có thể chạy nhiều chương trình một lúc , kích thước chương trình có thể lớn hơn kích thước bộ nhớ chính .
+ Cho phép chia sẽ mã và dữ liệu , số lượng đa chương trình không giới hạn.
+ Khắc phục và hạn chế việc phân mảnh.
+ Giữ cho chương trình an toàn - Nhược điểm :
+ Tăng chi phí để xử lí ngắt phân trang , độ phức tạp của phần mềm và chi phí phần cứng
+ Tốc độ giảm , ứng dụng chạy chậm hơn.
2 . Ánh xạ địa chỉ theo khối
- Các địa chỉ trong các hệ thống ánh xạ theo khối là các địa chỉ gồm 2 thành phần . Để truy cập
đến 1 dữ liệu cụ thể , chuong trình chỉ ra block và offset của dũ liệu trong block đó.
- Địa chỉ ảo V được chỉ ra bởi cặp số v=(b,d) , r=b+d : địa chỉ phẳng
=> Ánh xạ địa chỉ theo khối được thực hiện động ngay trong thời gian thực hiện process . Nếu
cơ chế biến đổi địa chỉ không hiệu quả thì chi phí của nó có thể làm giảm hiệu suất của hệ
thống tới mức vượt quá ưu thế mà bộ nhớ ảo mang lại .
3 . Tổ chức bộ nhớ theo trang
+ Bộ nhớ ảo chia thành trang có kích thước cố định
+ Địa chỉ ảo trong hệ thống theo trang được thể hiện bằng cặp v=(p,d) , p_ thứ tư trang , d_offset trong trang p
+ Các trang được ghi từ bộ nhớ ngoài vào bộ nhớ thực theo các block , gọi là page frame và
có kích thước đúng bằng kích thước trang.
+ Biến đổi địa chỉ trang trực tiếp bằng ánh xạ - RAM , hoặc sử dụng bộ nhớ tốc độ cao –
cache bằng ánh xạ trang – cache . Hoặc sử dụng kết hợp associative với ánh xạ trực tiếp.
4. Tổ chức bộ nhớ theo đoạn
+ Bộ nhớ ảo : chia thành các đoạn kích thước khác nhau
+ Địa chỉ ảo trong hệ thống segment là cặp v=(s,d) , s_ số segment , d_offset trong đoạn
+ Segment được nạp từ bộ nhớ ngoài vào bộ nhớ vật lý theo cả segment một cách liên tục và
được nạp vào bất kỳ vùng trống liên tục nào đủ lớn .
+ Biến đổi địa chỉ bằng :
. Điều khiển truy nhập trong hệ thống tổ chức segment
. Dùng ánh xạ trực tiếp
. Chia sẻ chương trình và dữ liệu trong các hệ thống theo segment
5. Tổ chức bộ nhớ kết hợp trang , đoạn
- Chia thành các trang bộ nhớ có kích thước bằng nhau
- Không gian địa chỉ là tập các đoạn , mỗi đoạn gồm nhiều trang liên tục
- Khi 1 tiến trình được đưa vào hệ thống , HĐH sẽ cấp phát cho tiến trình các trang cần thiết để
chứa đủ các phân đoạn của process
- Đỉa chỉ ảo v=(s,p,d) trong đó s là số segment , p là số page và d là offset - Biến đổi địa chỉ
+ Dùng ánh xạ trực tiếp (sử dụng bộ nhớ tốc độ cao và kết hợp)
+ Chia sẻ bộ nhớ , chương trình trong tổ chức trang và đoạn
6. Chiến lược loại bỏ trang bộ nhớ
Khi bộ nhớ hết chỗ trống , chương trình điều khiển bộ nhớ sẽ xác định trang bị loại bỏ theo 7 nguyên tắc : -
Nguyễn tắc tối ưu : + Để hạn chế số lầm missing page fault và
đặc biệt là hiện tượng “trì trệ hệ thống ”
+ Tăng hiệu quả sử dụng tài nguyên , loại bỏ trang mà trong tương lai không có yêu cầu truy cập đến . -
Loại bỏ ngẫu nhiên (Random page Replacemanet): + Bất kỳ trang
nào cũng có thể swap out , xác suất xảy ra giữa các trang là như nhau , kể cả các trang thường xuyên được sử dụng
+ Gây ra hiện tượng missing page fault và làm trì trệ hệ thống -
FIFO : Gán cho mỗi trang khi được nạp vào bộ nhớ 1 chỉ số , khi
loại bỏ trang sẽ chọn trang nằm trong bộ nhớ lâu nhất theo dòng thời gian -
LRU(Least recently used) : + HĐH ghi nhận lại thời điểm cuối
cùng trang được truy xuất
+ Sử dụng cơ chế phần cứng để hỗ trợ ghi lại thời điểm truy xuất cuối cùng -
LFU(List Frequency used) : + Trang ít được sử dụng nhất sẽ bị swap out
+ Đo số lần truy cập , nếu số lần truy cập bằng nhau thì sử dụng FIFO hoặc Random -
NUR(not used recently) : Các trang chia làm 4 nhóm , khi cần
loại bỏ xét các mức ưu tiên G1->G4 , trang được chọn để thay thế thông thường sử dụng FIFO
cho lớp (trang đầu tiên trong lớp) -
Working set of pages : + Working set là tập hợp các trang bộ nhớ
được thường xuyên truy cập tới , nó sử dụng tham số delta để định nghĩa cho kích thước cửa sổ của working set
+ HĐH giám sát working set của mỗi tiến trình và cấp phát cho process tối thiểu các
khung trang để chứa working set
7 . Chiến lược nạp trang -
Nạp trang theo yêu cầu : Các trang của bộ nhớ chỉ được nạp vào
bộ nhớ chính khi được yêu cầu . Giúp tiết kiệm bộ nhớ , sử dụng bộ nhớ hiệu quả , tuy nhiên
thời gian process chờ sẽ lớn do chiếm bộ nhớ -
Nạp trang trước : HĐH dự đoán các trang mà process sẽ cần đến
và nạp các trang đó khi bộ nhớ có dư chỗ trống -
Vấn đề về kích thước trang : + Kích thước nhỏ , số lượng page
frame sẽ lớn dẫn đến bảng ánh xạ lớn -> sử dụng không hiệu quả bộ nhớ .
+ Kích thước trang lớn sẽ làm việc nạp trang vào bộ nhớ cần nạp khối lượng thông tin lớn (I/O sẽ bị chậm). -
Giải phóng bộ nhớ : Việc giải phóng bộ nhớ rất quan trọng để có
không gian trống nạp dữ liệu cho process hoạt động và tránh các
tình trạng thrashing . Cơ chế Swap E. Lập lịch cho BXL
1. Khái niệm lập lịch cho BXL, lượng tử thời gian , mức ưu tiên
- Khái niệm lập lịch cho BXL : Là việc phân phối BXL cho các process để chúng hoạt động , gồm các mức :
+ Lập lịch mức cao : Xác định process đủ điều kiện thực thi
+ Lập lịch mức giữa : Xác định process ở trạng thái ready process list , BXL sẽ
suspend hoặc activate các process để đảm bảo hệ thống hoạt động ổn định.
+ Lập lịch mức thấp : Xác định xem khi BXL trống thì ready process nào sẽ được sử
dụng BXL . - Thời gian lượng tử : Là thời gian lớn nhất mà tiến trình chiếm BXL ,
HĐH sẽ thiết lập 1 đồng hồ để đo quantum và sinh ra các tín hiệu ngắt thời gian . Gía trị của
quantum phụ thuộc vào tần suất hoạt động và số lượng của process , nó thường ko đổi tuy
nhiên trong 1 số trường hợp thay đổi tạm thời để phục vụ cho mục đích ngắn hạn
- Mức ưu tiên : + Mức độ quan trọng của process được thể hiện qua mức ưu tiên , process có
mức ưu tiên cao sẽ được sử dụng nhiều tài nguyên .
+ HĐH gán cho process 1 mức ưu tiên theo những tiêu chuẩn xác
định 2. Các cơ chế lập lịch cho BXL - Lập lịch theo thời gian kết thúc : + Lập lịch thủ công
+ Hệ thống sử dụng tất cả các khả năng hiện có để 1 process có thể kết thúc trong
1 thời gian nào đó đã hạn định trước . - FIFO : + Sử dụng 1 hàng đợi queue
+ Process được nạp vào trước , đừng đầu FIFO queue sẽ được quyền sử dụng BXL trước
+ Process sử dụng BXL cho đến khi nó bị block hoặc kết thúc , sau đó chuyển quyền
sử dụng BXL cho process đừng phía sau nó trong queue. - Nguyên tắc quay vòng RR
+ Sử dụng 1 hàng đợi queue như FIFO
+ Process mỗi lần sử dụng BXL không được quá quantum(10-100ms)
+ Khi hết quantum , process đang thực thi sẽ bị chuyển về cuối queue
- Nguyên tắc STF + Process nào có CPU burst ngắn nhất thì được chiếm BXL .
+ Giảm thời gian chờ trung bình , chi phí thấp - Nguyên tắc SRTF
+ Process được đưa vào thực thi sẽ được chạy cho đến khi kết thúc hoặc process mới
vào hệ thống có thời gian hoạt động bé hơn thời gian hoạt động còn lại của process hiện thời
-Nguyên tắc HRN + Sử dụng mức ưu tiên động (t chờ : thời gian chờ để chiếm BXL , t ự𝑐
thực thi : thời gian sử dụng BXL)
+ Không hoán đổi (không ngắt)
-Hàng đợi nhiều mức : -
- Nguyên tắc SMP (Symmetric multi processor) F . Đĩa từ :
1. Cấu trúc và hoạt động của đĩa từ
- Cấu trúc : + Track : là các vòng tròn đồng tâm được chia ra trên bề mặt của đĩa từ
+ Sector : Trên track chia thành những phần nhỏ bằng các đoạn hướng tâm
+ Cylinder : Tập hợp các track cùng bán kính
+ Trục quay : Là trục để gắn các đĩa từ lên
+ Đầu đọc / ghi : Gồm lõi ferit và cuộn dây
+ Cần di chuyển đầu đọc/ghi
-Hoạt động : Để có thể truy nhập đến dữ liêu trên đĩa với các đầu từ đọc/ghi ,trước
tiên các đầu từ cần phải được định vị trên cylinder cần thiết (seek cylinder). Sau đó cần phải
chờ đến khi điểm bắt đầu của bản ghi đến đúng vị trí dưới đầu từ (tìm bản ghi-gắn với thời
gian trễ), tiếp theo là bản thân bản ghi, về nguyên tắc có thể có kích thước tuỳ ý (đến toàn bộ
rãnh-track), cần phải đi qua dưới đầu từ (gọi la thời gian truyền- transmission time).
2. Các cơ chế tối ưu thời gian định vị (seek time)
- FCFS :Các yêu cầu được thực hiện theo thứ tự xuất hiện
- SSTF : Yêu cầu cần sự dịch chuyển đầu từ ít nhất được thực hiện trước
- SCAN : Thực hiện các yêu cầu trên đường đi và về
- C-SCAN : Phục vụ các yêu cầu theo 1 hướng từ ngoài vào trong
- N-step-SCAN : Các yêu cầu được nhóm lại để phục vụ nhanh (theo cách di chuyển của SCAN)
- Sơ đồ ESCHENBACH : Khi phục vụ môi cylinder thì chỉ thực hiện truy nhập đến một track
mà không để ý đến việc có thể có yêu cầu khác cũng thuộc Cylinder đó (đầu từ di chuyển theo cách của C-SCAN) G. Hệ thống FILE
1. Khái niệm hệ thống file , chức năng
- Hệ thống file là một tập hợp các dịch vụ mà HDH cung cấp , cho người sử dụng và chương
trình người sử dụng để các đối tượng này sử dụng các File trên hệ thống
- Chức năng : + Người dùng phải có khả năng tạo , thay đổi , xóa file
+ Cung cấp khả năng chia sẻ file
+ Cơ chế chia sẻ phải xem xét hình thức truy cập cần kiểm soát
+ Người dùng phải có khả năng thao tác dễ dàng với cấu trúc file , độc lập với phần cứng
+ Đảm bảo sự trao đổi thông tin giữa ccs file
+ Cần có các công cụ khắc phục , khôi phục lại thông tin khi có sự cố
+ Với các thông tin quan trọng cần có cơ chế kiểm soát truy cập
+ Cung cấp giao diện than thiện với người dùng , cho phép người dùng làm việc với các
cấu trúc dữ liệu logic của mình.
2.Hệ thống file dùng danh sách khối dữ liệu