03 – Hệ thống tập tin FAT Bài tập CuuDuongThanCong.com https://fb.com/tailieudientucntt 10 Byte 00 53 2A FF 22 10 Cluster 10 SYSTEM AREA BootSec Area 12 14 13 15 Cluster 1001 11 12 13 14 15 Sector FAT Area 16 17 18 4007 4008 4009 BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM 11 EF 03/2009 Cluster 1F 4010 DATA AREA RDET DATA Area CuuDuongThanCong.com https://fb.com/tailieudientucntt BOOT SECTOR 03/2009 10 11 Nội dung Giá trị Loại FAT Số byte cho sector Số sector cho cluster Số sector dành riêng (số sector vùng Bootsector) Số bảng FAT Số sector cho bảng RDET Tổng số sector đĩa Số sector cho bảng FAT Sector bảng FAT1 Sector bảng RDET CuuDuongThanCong.com BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM STT https://fb.com/tailieudientucntt 03/2009 BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM byte offset 0B là: 00, 02 Số byte sector vol là: 0200h = 512 (byte) Giá trị byte offset 0D là: 02 Số sector cluster vol là: SC = 02h = (sector) byte offset 0E là: 08, 00 Số sector trước vùng FAT là: SB = 0008h = (sector) Giá trị byte offset 10 là: 02 Số bảng FAT vol là: NF = 02h = 2d (bảng) byte offset 11 là: 00, 02 Số entry bảng RDET là: 0200h = 512 (entry) Kích thước bảng RDET là: SR = (512*32) / 512 = 32 (sector) byte offset 16 là: 20, 00 Kích thước bảng FAT là: SF = 0020h = 32 (sector) byte offset 13 là: E0, 3F Tổng số sector vol là: SV = 3FE0h = 16352 (vì byte offset 20 00 nên kích thước vol lấy https://fb.com/tailieudientucntt byte offset 13) CuuDuongThanCong.com BOOT SECTOR 03/2009 Từ thơng số ta tính kích thước vùng hệ thống: BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM SS = SB + NF * SF + SR = + 2*32 + 32 = 104 (sector) Vậy vùng liệu bắt đầu sector 104 cluster chiếm sector từ 104 đến 106 cluster chiếm sector từ 106 đến 108 Tổng quát, cluster K chiếm sector bắt đầu sector có số 104 + 2*(K-2) CuuDuongThanCong.com https://fb.com/tailieudientucntt BOOT SECTOR 03/2009 Giá trị Loại FAT Số byte cho sector Số sector cho cluster Số sector dành riêng (số sector vùng Bootsector) Số bảng FAT Số sector cho bảng RDET Tổng số sector đĩa Số sector cho bảng FAT Sector bảng FAT1 10 Sector bảng RDET 8+2*32 = 72 11 Sector vùng Data CuuDuongThanCong.com BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM Nội dung STT FAT 16 512 (512*32)/512 = 32 16352 32 8+2*32+32 = 104 https://fb.com/tailieudientucntt BOOT SECTOR 03/2009 10 11 Nội dung Giá trị Loại FAT Số byte cho sector Số sector cho cluster Số sector dành riêng (số sector vùng Bootsector) Số bảng FAT Số sector cho bảng RDET Tổng số sector đĩa Số sector cho bảng FAT Sector bảng FAT1 Sector bảng RDET CuuDuongThanCong.com BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM STT https://fb.com/tailieudientucntt BOOT SECTOR 03/2009 Giá trị Loại FAT Số byte cho sector Số sector cho cluster Số sector dành riêng (số sector vùng Bootsector) 32 Số bảng FAT Tổng số sector đĩa Số sector cho bảng FAT 635 Sector bảng FAT1 32 Sector bảng RDET 1302 10 Sector vùng Data 1302 CuuDuongThanCong.com BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM Nội dung STT FAT 32 512 81888 https://fb.com/tailieudientucntt RDET Hãy tìm tập tin có bắt đầu chuỗi “File” Điền thông tin tập tin tìm theo bảng trả lời sau 03/2009 BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM CuuDuongThanCong.com https://fb.com/tailieudientucntt RDET 03/2009 Nội dung Tên tập tin (đầy đủ đường dẫn) Nằm RDET hay SDET Chiếm entry bảng RDET/SDET Kích thước Chỉ số Cluster bắt đầu CuuDuongThanCong.com BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM ST T Giá trị File Type.txt RDET (1 + phụ) 3384 (00000D38h) 16https://fb.com/tailieudientucntt (0010h) 10 RDET Điền thông tin tập tin WINHEX.CNT vào bảng trả lời sau 03/2009 BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM 11 CuuDuongThanCong.com https://fb.com/tailieudientucntt 03/2009 Tên tập tin (đầy đủ đường dẫn) Nằm RDET hay SDET Chiếm entry bảng RDET/SDET Kích thước Chỉ số Cluster bắt đầu BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM Nội dung STT Giá trị WINHEX.CNT RDET 1649 12 CuuDuongThanCong.com https://fb.com/tailieudientucntt FAT 03/2009 Xét đĩa mềm 1.44MB (có 2880 sector), để tập tin vol truy xuất nhanh & an toàn ta giả sử cho SC = (sector) SB = (sector) SR = 32 (entry) = 32 * 32 (byte) = 1024 (byte) = (sector) NF = Cần sử dụng hệ thống FAT (FAT12/16/32) cho đĩa mềm Kích thước bảng FAT ? (Cần dùng sector để lưu BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM bảng FAT) 13 CuuDuongThanCong.com https://fb.com/tailieudientucntt Thay giá trị vào đẳng thức SB + NF*SF + SR + SD = SV ta + 2SF +2 + SD = 2880 (sector), hay 2SF + SD = 2877 (sector) (*) Loại FAT tối ưu (về kích thước) FAT12, SD < 4079 (cluster) Giả sử SF = (sector): (*) SD = 2875 (sector) = 718.75 (cluster) BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM SD < 2877 (sector) = 719.25 (cluster) (vì SC = sector) 03/2009 Vùng liệu có 718 cluster, nên bảng FAT phải có 718 + = 720 phần tử, SF = (720*1.5)/512 = 2.1x (sector) Bảng FAT phải chiếm sector – mâu thuẫn với giả thiết SF = Vậy kích thước bảng FAT vol sector Giả sử SF = (sector): tương tự, ta thấy mâu thuẫn, tức kích thước bảng FAT phải lớn sector Giả sử SF = (sector): (*) SD = 2871 (sector) = 717.75 (cluster) Vùng liệu có 717 cluster, nên bảng FAT phải có 717 + = 719 phần tử, SF = (719*1.5)/512 = 2.1x (sector) Bảng FAT phải chiếm sector – phù hợp với giả thiết SF = Vậy kích thước bảng FAT vol sector CuuDuongThanCong.com 14 https://fb.com/tailieudientucntt FAT Cần sử dụng hệ thống FAT (FAT12/16/32) cho BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM USB 127MB có 112 entry bảng thư mục gốc, cluster chiếm sector, boot sector chiếm sector bảng FAT 03/2009 đĩa mềm ? Kích thước bảng FAT ? (Cần dùng sector để lưu bảng FAT) 15 CuuDuongThanCong.com https://fb.com/tailieudientucntt SV = 127 MB = (127*1024*1024) / 512 = 260096 (sector) Bảng thư mục gốc chiếm 112 entry = (112*32) / 512 = (sector) Thay giá trị có vào đẳng thức: SB + NF*SF +SR + SD = SV + 2SF + + SD = 260096, hay 2SF + SD = 260081 (sector) (*) SD ~ 260081/8 = 32510.125 (vì Sc = sector) Do FAT12 quản lý tối đa 4096 cluster ~ 4096*4 = 16384 sector nên vol định dạng theo FAT12 Do đó, vol định dạng theo FAT16 Giả sử SF = (sector): (*) SD = 260081 - 2SF = 260079 (sector) = 32509.875 (cluster) Vùng liệu có 32510 cluster, nên bảng FAT phải có 32510 + = 32512 phần tử, SF = (32512 * 2) / 512 = 127 (sector) SF = 127 sector Mâu thuẫn với giả thiết SF = Vậy kích thước bảng FAT vol sector Giả sử SF = 127 (sector): (*) SD = 260081 - 2SF = 259827 (sector) = 32478.375 (cluster) Vùng liệu có 32479 cluster, nên bảng FAT phải có 32479 + = 32481 phần tử, SF = (32481 * 2) / 512 = 126.x (sector) SF = 127 sector Phù hợp với giả thiết SF = 127 16 Vậy kích thước bảng FAT vol 127 sector CuuDuongThanCong.com https://fb.com/tailieudientucntt BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM Ta có: SB = (theo giả thiết) NF = (theo giả thiết) 03/2009 CÁCH (XÁC ĐỊNH KÍCH THƯỚC BẢNG FAT) Gọi: x số phần tử FAT - y số cluster vùng Data 03/2009 (*) 2SF + SD = 260081 (sector) 2*(x*2) / 512 + y*8 = 260081 (**) Do số phần tử FAT số cluster Data xấp xỉ nên ta giả sử x = y BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM (**) 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ự 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 = 264 sector 17 Vậy kích thước bảng FAT vol 127 sector CuuDuongThanCong.com https://fb.com/tailieudientucntt FAT Cần sử dụng hệ thống FAT (FAT12/16/32) cho BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM USB GB có 512 entry bảng thư mục gốc, cluster chiếm sector, boot sector chiếm sector bảng FAT 03/2009 đĩa mềm ? Kích thước bảng FAT ? (Cần dùng sector để lưu bảng FAT) 18 CuuDuongThanCong.com https://fb.com/tailieudientucntt SV = GB = (1*1024*1024*1024) / 512 (sector) = 2097152 (sector) Bảng thư mục gốc chiếm 512 entry = (512*32) / 512 = 32 (sector) Thay giá trị có vào đẳng thức: SB + NF*SF +SR + SD = SV + 4SF + 32 + SD =2097152, hay 4SF + SD = 2097112 (sector) (*) SD < 2097112 (sector) / = 262 139 (cluster) (vì Sc = sector) Do 216 < 262 139 (cluster) < 232 Do đó, vol định dạng theo FAT32 Giả sử SF = (sector): (*) SD = 2097112 - 4SF = 2097108 (sector) = 262138.5 (cluster) Vùng liệu có 262139 cluster, nên bảng FAT phải có 262139 + = 262141 phần tử, SF = (262141 * 4) / 512 = 2047.9 (sector) SF = 2048 sector Mâu thuẫn với giả thiết SF = Vậy kích thước bảng FAT vol khơng thể sector Giả sử SF = 2048 (sector): (*) SD = 2097112 - 4SF = 2088924 (sector) = 261115 (cluster) Vùng liệu có 261115 cluster, nên bảng FAT phải có 261115 + = 261117 phần tử, SF = (261117 * 4) / 512 = 2039.9 (sector) SF = 2040 sector Trái với giả thiết SF = 2048 CuuDuongThanCong.com 19 https://fb.com/tailieudientucntt BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM Ta có: SB = (theo giả thiết) NF = (theo giả thiết) 03/2009 03/2009 Giả sử SF = 2040 (sector): (*) SD = 2097112 4SF = 2088952 (sector) = 261119 (cluster) Vùng liệu có 261119 cluster, nên bảng FAT phải có 261119 + = 261121 phần tử, SF = (261121 * 4) / 512 = 2040.007 (sector) SF = 2041 sector Trái với giả thiết SF = 2040 BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM Giả sử SF = 2041 (sector): (*) SD = 2097112 4SF = 2088948 (sector) = 261118.5 (cluster) Vùng liệu có 261119 cluster, nên bảng FAT phải có 261119 + = 261121 phần tử, SF = (261121 * 4) / 512 = 2040.007 (sector) SF = 2041 sector (Đúng) CuuDuongThanCong.com https://fb.com/tailieudientucntt 20 ... Sector bảng RDET CuuDuongThanCong.com BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM STT https://fb.com/tailieudientucntt 03/2009 BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM byte offset 0B là: 00, 02 Số... MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM (**) 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ố... https://fb.com/tailieudientucntt BM MMT&VT - KHOA CNTT - ĐH KHTN TP.HCM Ta có: SB = (theo giả thiết) NF = (theo giả thiết) 03/2009 CÁCH (XÁC ĐỊNH KÍCH THƯỚC BẢNG FAT) Gọi: x số phần tử FAT - y số cluster vùng