240 likes | 481 Views
Bài tập ôn tập HĐH. HỆ THỐNG TẬP TIN. Bài 1. Đĩa mềm 1.44 MB, có 2 head, 80 track / head, 18 sector / track Đổi sector vật lý sang logic: (10, 2, 1); (18, 70, 0); (18, 79, 1 ); (5, 5, 1); (2, 0, 0); Đổi sector logic sang vật lý : 90, 8,1080, 2000, 1
E N D
Bàitậpôntập HĐH HỆ THỐNG TẬP TIN
Bài 1 • Đĩamềm 1.44 MB, có2 head, 80 track / head, 18 sector / track • Đổi sector vậtlý sang logic: • (10, 2, 1); (18, 70, 0); (18, 79, 1); (5, 5, 1); (2, 0, 0); • Đổi sector logic sang vậtlý: • 90, 8,1080, 2000, 1 • Cho biếtdãycyclindercầntruyxuấtlầnlượtlà: 9, 15, 21, 2, 25, 6, 12. Vớivịtríhiệnhànhcủađầuđọcđangđứngtạicyclinder 10, Hãychobiếtthứtựtruyxuấtcáccyclindertrênnếudùngcácthuậttoánlầnlượtlà: FCFS – SSTF – SCAN – C-SCAN – LOOK – C-LOOK
l = t*side*st + h*st + s - 1 Vậtlý Logic • (10, 2, 1): s=10, t=2, h=1 • l = 2*2*18 + 1*18 + 10 – 1 = 99 • (18, 70, 0): s=18, t=70, h=0 • l = 70*2*18 + 0*18 + 18 – 1 = 2537 • (18, 79, 1): s=18, t=79, h=1 • l = 79*2*18 + 1*18 + 18 – 1 = 2879 • (5, 5, 1): s=5, t=5, h=1 • l = 5*2*18 + 1*18 + 5 – 1 = 202 • (2, 0, 0): s=2, t=0, h=0 • l = 0*2*18 + 0*18 + 2 – 1 = 1 st= số sectors / track = 18 th=số tracks / head = 80 side= sốlượng head = 2 l= sector logic h: giátrị head t: giátrị track s: giátrị sector
s = (l mod st) + 1t = l div (st * side)h = (l div st) mod side • l = 90 (1, 2, 1) • l = 8 (9, 0, 0) • l = 1080 (1, 30, 0) • l = 2000 (3, 55, 1) • l = 1 (2, 0, 0) st= số sectors / track = 18 th= số tracks / head = 80 side= sốlượng head = 2 l= sector logic h: giátrị head t: giátrị track s: giátrị sector
FCFS: 10, 9, 15, 21, 2, 25, 6, 12 • SSTF: 10, 9, 6, 2, 12, 15, 21, 25 • SCAN: 10, 12, 15, 21, 25, [P], 9, 6, 2 • C-SCAN: 10, 12, 15, 21, 25, [P], [T], 2, 6, 9 • LOOK: 10, 12, 15, 21, 25, 9, 6, 2 • C-LOOK: 10, 12, 15, 21, 25, 2, 6, 9
FAT • Cho dãy byte trênđĩanhưsau: • Cho biếttrong FAT12, hãyxácđịnhgiátrịtạicác ô trongbảng FAT cóthứtựlầnlượtlà:
FAT • Cho dạy byte trênđĩanhưsau: • Cho biếttrongFAT12, hãyxácđịnhgiátrịtạicác ô trongbảng FAT cóthứtựlầnlượtlà:
Data • Cho đĩa USB cócácthôngsốsau: • Sc = 4 • SB = 1 • NF = 2 • SF = 9 • NRDET = 224 • Hãychobiếtcác cluster sautrongvùng Data tươngứngchiếmnhững sector logic nàotrênđĩa: 5, 2, 10, 20
i = SB + NF*SF + SRDET + (k- 2)*SCSRDET = NRDET*32/512 Sc = 4 SB = 1 NF = 2 SF = 9 NRDET = 224 • Từgiảthuyếttasuyra SRDET = NRDET*32/512 = 224*32/512 = 14 (sector) • K = 5 i = 1 + 2*9 + 14 + (5-2)*4 = 45 • Cluster 5 trong Data chiếm 4 sector logic là 45, 46, 47, 48 • K = 2 i = 1 + 2*9 + 14 + (2-2)*4 = 33 • Cluster 2 trong Data chiếm 4 sector logic là 33, 34, 35, 36 • K = 10 i = 1 + 2*9 + 14 + (10-2)*4 = 65 • Cluster 10 trong Data chiếm 4 sector logic là 65, 66, 67, 68 • K = 20 i = 1 + 2*9 + 14 + (20-2)*4 = 105 Cluster 20 trong Data chiếm 4 sector logic là 105, 106, 107, 108
FAT • USB 127MB có112 entry trên bảng thư mục gốc, cluster chiếm 8 sector, boot sector chiếm 8 sector và 2 bảng FAT. • Cầnsửdụnghệthống FAT nào (FAT12/16/32) chođĩamềmnày ? • Kíchthướcbảng FAT ? (Cầndùngbaonhiêu sector đểlưubảng FAT)
Ta có: • SB = 8 (theo giả thiết). • NF = 2 (theogiảthiết) • SV = 127 MB = 127*1024*2 (sector) = 260096 (sector) • Bảngthưmụcgốcchiếm 112 entry = (112*32) / 512 = 7 (sector) • Thay các giá trị đã có vào đẳng thức:SB + NF*SF +SR + SD = SV 8 + 2SF + 7 + SD = 260096, hay 2SF + SD = 260081 (sector) (*) SD ~ 260081/8 = 32510.125(vì Sc = 8 sector) Do FAT12 chỉ có thể quản lý tối đa 4096 cluster ~ 4096*4 = 16384 sector nên vol nàykhông thể định dạng theo FAT12 được. Do đó, vol sẽ được định dạng theo FAT16 • Giả sử SF = 1 (sector): (*) SD = 260081 -2SF = 260079 (sector) = 32509.875 (cluster) Vùng dữ liệu có 32510 cluster, nên bảng FAT phải có 32510 + 2 = 32512 phần tử, dođó SF = (32512*2)/512 = 127 (sector) SF = 127 sector. Mâu thuẫn với giả thiết SF = 1. Vậy kích thước bảng FAT của vol nàykhôngthể là 1 sector • Giả sử SF = 127 (sector): (*) SD = 260081 - 2SF = 259827 (sector) = 32478.375 (cluster) Vùng dữ liệu có 32479 cluster, nên bảng FAT phải có 32479 + 2 = 32481 phần tử, dođó SF = (32481*2)/512 = 126.x (sector) SF = 127 sector. Phù hợp với giả thiết SF = 127 Vậy kích thước bảng FAT của vol này là 127 sector
Cách 2 • Gọi: x là số phần tử FAT - y là số cluster vùng Data. (*) 2SF + SD = 260081 (sector) 2*(x*2) / 512 + y*8 = 260081 (**) • Do số phần tử FAT và số cluster cùng Data xấp xỉ nhau nên tacóthểgiảsửx = y (**) 2*(x*2)/512 + x*8 = 260081 x = 32478.40 SF = (2 * 32478.40) / 512 = 126.9 • Nếu SF = 126, tính được: - Số phần tử FAT x = 512*126/2 = 32256 - Sốcluster y: (**) 260081 = 2*126 + y*8 y = 32479 • Phí: 32479 – 32256 = 223 cluster = 223*8 = 1784 sector • Nếu SF = 127, tương tự trên tính được: - Số phần tử FAT x = 512*127/2 = 32512 - Sốcluster y: (**) 260081 = 2*127 + y*8 y = 32479 • Phí 32512 – 32479 = 33 cluster = 33*8 = 264sector • Vậy kích thước bảng FAT của vol này là 127 sector
FAT 2 • Xétđĩamềm 1.44MB (có 2880 sector), đểcáctập tin trênvolcóthểtruyxuấtnhanh & an toànhơntagiảsửcho • SC = 4 (sector) • SB = 1 (sector) • SR = 32 (entry) = 32 * 32 (byte) = 1024 (byte) = 2 (sector) • NF = 2 • Cầnsửdụnghệthống FAT nào (FAT12/16/32) chođĩamềmnày • Kíchthướcbảng FAT ? (Cầndùngbaonhiêu sector đểlưubảng FAT)
ThaycácgiátrịtrênvàođẳngthứcSB + NF*SF + SR + SD = SV tađược 1+ 2SF +2+ SD = 2880(sector), hay 2SF + SD = 2877(sector) (*) • SD < 2877(sector) = 719.25(cluster) (vì SC = 4 sector). • Loại FAT tốiưunhất (vềkíchthước) làFAT12, vì SD< 4079 (cluster) • Giảsử SF = 1(sector): (*) SD = 2875(sector) = 718.75(cluster) Vùngdữliệucó 719 cluster, nênbảng FAT phảicó 719 + 2 = 721 phầntử, do đóSF = (721*1.5)/512 = 2.1x(sector) Bảng FAT phảichiếm 3 sector – mâuthuẫnvớigiảthiết SF = 1. Vậykíchthướcbảng FAT củavolnàykhôngthểlà 1 sector • Giảsử SF = 2(sector): tươngtự, tavẫnthấymâuthuẫn, tứckíchthướcbảng FAT phảilớnhơn 2 sector. • Giảsử SF = 3(sector): (*) SD = 2871(sector) = 717.75(cluster). Vùngdữliệucó 718 cluster, nênbảng FAT phảicó 718 + 2 = 720 phầntử, do đóSF = (720*1.5)/512 = 2.1x(sector) • Bảng FAT phảichiếm 3 sector – phùhợpvớigiảthiết SF = 3. • Vậykíchthướcbảng FAT củavolnàylà 3 sector. BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM
FAT 2 • USB 127MB có112 entry trên bảng thư mục gốc, cluster chiếm 8 sector, boot sector chiếm 8 sector và 2 bảng FAT. • Cầnsửdụnghệthống FAT nào (FAT12/16/32) chođĩamềmnày ? • Kíchthướcbảng FAT ? (Cầndùngbaonhiêu sector đểlưubảng FAT) BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM
Ta có: • SB = 8 (theo giả thiết). • NF = 2 (theogiảthiết) • SV = 127 MB = 127*1024*2 (sector) = 260096 (sector) • Bảngthưmụcgốcchiếm 112 entry = (112*32) / 512 = 7 (sector) • Thay các giá trị đã có vào đẳng thức:SB + NF*SF +SR + SD = SV 8 + 2SF + 7 + SD = 260096, hay 2SF + SD = 260081 (sector) (*) SD ~ 260081/8 = 32510.125(vì Sc = 8 sector) Do FAT12 chỉ có thể quản lý tối đa 4096 cluster ~ 4096*4 = 16384 sector nên vol nàykhông thể định dạng theo FAT12 được. Do đó, vol sẽ được định dạng theo FAT16 • Giả sử SF = 1 (sector): (*) SD = 260081 -2SF = 260079 (sector) = 32509.875 (cluster) Vùng dữ liệu có 32510 cluster, nên bảng FAT phải có 32510 + 2 = 32512 phần tử, dođó SF = (32512*2)/512 = 127 (sector) SF = 127 sector. Mâu thuẫn với giả thiết SF = 1. Vậy kích thước bảng FAT của vol nàykhôngthể là 1 sector • Giả sử SF = 127 (sector): (*) SD = 260081 - 2SF = 259827 (sector) = 32478.375 (cluster) Vùng dữ liệu có 32479 cluster, nên bảng FAT phải có 32479 + 2 = 32481 phần tử, dođó SF = (32481*2)/512 = 126.x (sector) SF = 127 sector. Phù hợp với giả thiết SF = 127 Vậy kích thước bảng FAT của vol này là 127 sector
FAT 3 • Xétđĩa USB có dung lượng 256 MB, kèmcácthôngsốtrênđĩa: • SC = 4 (sector) • SB = 4 (sector) • NRDET = 256 (entry) • NF = 2 • Cầnsửdụnghệthống FAT nào (FAT12/16/32) cho USB này • Kíchthướcbảng FAT ? (Cầndùngbaonhiêu sector đểlưubảng FAT)
Ta có: • SB = 4 (theo giả thiết). • NF = 2 (theogiảthiết) • SV = 256MB = (256*1024*1024) / 512 (sector) = 524288 (sector) • Bảngthưmụcgốcchiếm NRDET = 256 entry SRDET = (256 * 32) / 512 = 16 (sector) • Thay các giá trị đã có vào đẳng thức:SB + NF*SF +SR + SD = SV 4 + 2SF + 16 + SD = 524288, hay 2SF + SD = 524268 (sector) (*) SD < 524268 (sector) / 4 = 131 067 (cluster) (vì Sc = 4 sector) • Do 216 < 131 067 (cluster) < 232 • Do đó, vol sẽ được định dạng theo FAT32 • Giả sử SF = 1 (sector): (*) SD = 524268 - 2SF = 524266 (sector) = 131066.5 (cluster) Vùng dữ liệu có 131067 cluster, nên bảng FAT phải có 131067 + 2 = 131069 phần tử, dođó SF = (131069 * 4)/512 = 1023.9 (sector) SF = 1024 sector. Mâu thuẫn với giả thiết SF = 1. Vậy kích thước bảng FAT của vol nàykhôngthể là 1 sector • Giả sử SF = 1024 (sector): (*) SD = 524268 - 2SF = 522220 (sector) = 130555 (cluster) Vùng dữ liệu có 130555 cluster, nên bảng FAT phải có 130555 + 2 = 130557 phần tử, dođó SF = (130557 * 4)/512 = 1019.9 (sector) SF = 1020 sector. Tráivới giả thiết SF = 1024
Giả sử SF = 1020 (sector): (*) SD = 524268 - 2SF = 522228(sector) = 130557 (cluster) Vùng dữ liệu có 130557 cluster, nên bảng FAT phải có 130557 + 2 = 130559 phần tử, dođó SF = (130559 * 4)/512 = 1019.9 (sector) SF = 1020 sector. Đúngvới giả thiết SF = 1020 Vậy dung lượngbảng FAT là 1020 sector