Cơ chế ghi dữ liệu trên Windows:

Một phần của tài liệu ĐỒ ÁN PHÂN MẢNH MÁY TÍNH (Trang 31 - 39)

I. Vấn đề phân mảnh:

b. Cơ chế ghi dữ liệu trên Windows:

Chiến lược ghi dữ liệu lên ổ cứng của Windows:

HÌNH 17: CƠ CHẾ GHI DỮ LIỆU TRÊN WINDOWS.

Trong Windows tồn tại hai hệ thống tập tin phổ biến nhất là FAT (FAT12, FAT13, FAT32…) và NTFS. Tuy nhiên NTFS đã thay thế cho hệ thống tập tin FAT vốn là hệ thống tập tin ưa thích cho các hệ điều hành Windows của Microsoft. NTFS có nhiều cải tiến hơn so với FAT và HPFS như hỗ trợ cải tiến cho các siêu dữ liệu và sử dụng các cấu trúc dữ liệu tiên tiến để cải thiện hiệu suất, độ tin cậy, và sử dụng không gian ổ đĩa, cộng thêm phần mở rộng như các danh sách kiểm soát truy cập bảo mật (access control list-ACL) và bản ghi hệ thống tập tin.

32 Chiến lược ghi dữ liệu của hệ thống tập tin FAT 32 (chỉ tồn tại ở các phiên bản

Windows XP trở về trước):

 FAT là viết tắt của "File Allocation Table" tạm dịch là "Bảng cấp phát tập tin". FAT được giới thiệu lần đầu tiên vào năm 1977 với phiên bản FAT12. Sau đó là các phiên bản FAT16 và FAT32.

 Bảng FAT gồm nhiều phần tử. Chiều dài mỗi phần tử được tính bằng số bit, biểu thị số đếm của bảng FAT.

FAT32:

Được giới thiệu trong phiên bản Windows 95 Service Pack 2 (OSR 2), được xem là phiên bản mở rộng của FAT16. Do sử dụng không gian địa chỉ 32 bit nên FAT32 hỗ trợ nhiều cluster trên một partition hơn, do vậy không gian đĩa cứng được tận dụng nhiều hơn. Ngoài ra với khả năng hỗ trợ kích thước của phân vùng từ 2GB lên 2000GB và chiều dài tối đa của tên tập tin được mở rộng đến 255 ký tự đã làm cho FAT16 nhanh chóng bị lãng quên. Tuy nhiên, nhược điểm của FAT32 là tính bảo mật và khả năng chịu lỗi (Fault Tolerance) không cao.

33

HÌNH 18: CƠ CHẾ GHI DỮ LIỆU TRÊN WINDOWS.

Với FAT thì nó có 1 khái niệm là bảng FAT. Sự quan trọng nhất của hệ thống FAT nằm ở cái bảng này. Bảng FAT nó thể hiện sự liên kết giữa các cluster để giúp HDH hiểu dãy cluster cần thiết để đọc 1 file. Ví dụ như file A nó có dữ liệu nằm trên các cluster như 10 11 12 _ _ _ 16 17 EOF (ký tự _ giả sử là sự phân mảnh, còn EOF chỉ vị trí kết thúc file). Như vậy bảng FAT nó sẽ có rất nhiều dòng. Ví dụ như ở file trên thì tại dòng 10 của bảng FAT thì giá trị nó là 11, tại dòng 11 thì giá trị nó là 12, tại 12 thì là 16 và ... OEF. Cách ghi file như trên được gọi là cấp phát dữ liệu bằng danh sách liên kết.

HĐH sẽ tra lần lượt từng dòng của bảng FAT như vậy và suy ra được vị trí của những khối chứa nội dung của file ta cần truy cập.

34

HÌNH 19: CƠ CHẾ GHI DỮ LIỆU TRÊN WINDOWS.

Chú thích: bắt đầu từ ô có vị trí là 0. Ô có kí tự “xxxxxxxx” là ô không còn trống, ô có kí tự “00000000” là những ô còn trống.

Giải thích: 3 file được ghi lên bảng FAT với 3 màu khác nhau để ta dễ phân biệt. Bắt đầu truy cập vào file thứ nhất ,như ta thấy ở vị trí địa chỉ ô nhớ thứ 2 có giá trị 4, tức là khối tiếp theo cần đọc là ở vị trí ô thứ 4, trong ô thứ 4 lại có giá trị 8, đầu đọc sẽ tiếp tục di chuyển tiếp tới ô số 8, ở ô số 8 có giá trị “FFFFFFFF”, lúc này đầu đọc sẽ dừng lại vì không thể xác định được khối tiếp theo cần đọc nữa và khối này được dùng như lệnh kết thúc quá trình. Sau khi kết thúc, ta đã có được nội dung của file thứ nhất có địa chỉ các khối là 2,4,8. Tương tự như vậy ta có nội dung của file thứ 2 nằm rải rác ở các khối 10,12,13,14. Và file thứ 3 nằm ở các khối 6,7,9,15.

Nhận xét:

Ưu điểm: Chiến lược ở đây là nội dung của file được lưu trữ ở những khối không liên tục , các khối này tạo thành môt chuỗi thống nhất qua các địa chỉ lien kết. Với cách này, hệ thống chỉ cần quản lí các khối bắt đầu của mộ tập tin, ít gây lãng phí không gian đĩa.

Nhược điểm:

 Hệ thống sẽ cần một khoảng thời gian rất lâu để truy xuất vào một file bất kì do đầu đọc ổ cứng phải di chuyển nhiều giữa các khối không liên kết, nằm rải rác trên ổ cứng.

35  Các khối chứa dữ liệu bị thu hẹp lại do mỗi khối phải dùng một phần dung lượng để lưu

địa chỉ liên kết đến khối kế tiếp.

 Nhược điểm lớn nhất là cần thường xuyê chống phân mảnh vì ổ cứng bị phân mảnh ngay từ đầu, nguyên nhân là ngay lúc đầu, dữ liệu đã bị nằm rải rác khắp nơi trên ổ cứng. Chiến lược ghi dữ liệu của hệ thống tập tin NTFS:

 NTFS là hệ thống tập tin tiêu chuẩn của Windows NT, bao gồm cả các phiên bản sau này của Windows như Windows 2000, Windows XP, Windows Server 2003, Windows Server 2008, Windows Vista, và Windows 7.

 NTFS sử dụng bảng quản lý tập tin MFT (Master File Table) thay cho bảng FAT (File Allocation Table) quen thuộc nhằm tăng cường khả năng lưu trữ, tính bảo mật cho tập tin và thư mục, khả năng mã hóa dữ liệu đến từng tập tin. Ngoài ra, NTFS có khả năng chịu lỗi cao, cho phép người dùng đóng một ứng dụng “chết” (not responding) mà không làm ảnh hưởng đến những ứng dụng khác. Tuy nhiên, NTFS lại không thích hợp với những ổ đĩa có dung lượng thấp (dưới 400 MB) và không sử dụng được trên đĩa mềm.

 NTFS có một số tính năng cao cấp như bảo mật các file/directory, cấp hạn ngạch cho đĩa, nén file, mã hoá file, … Một trong những tính năng quan trọng của NTFS là khả năng phục hồi lỗi. Nếu hệ thống bị dừng một cách đột ngột, thì metadata của ổ đĩa FAT sẽ rơi vào tình trạng xung khắc dẫn đến làm sai lệch một lượng lớn dữ liệu tập tin và thư mục. Nhưng trên NTFS thì điều này không thể xảy ra, tức là cấu trúc của file/ Directory không bị thay đổi. Tên file trong NTFS có độ dài không quá 255 ký tự, đường dẫn đầy đủ đến file dài không quá 32.567 ký tự. Tên file sử dụng mã UniCode. Tên file trong NTFS có sự phân biệt giữa chữ hoa và chữ thường.

36

37  Với NTFS thì không còn khái niệm bảng FAT nữa mà tất cả mọi thứ trên đó đều là file. Hệ

thống file có 1 file quan trọng gọi là Master File Table. File này tên là $MFT (file này khá lớn và mặc định bạn không thể thấy). Ngoài ra còn có các file khác như $bitmap (lưu trữ cluster đã sử dụng) và $security (lưu trữ sự phân quyền). Dữ liệu mọi tập tin trên ổ cứng đều ở file $MFT.

 Với file có kích thước tập tin bé hơn 512bytes thì dữ liệu của nó nằm trên $MFT luôn chứ không phải mất thêm 1 cluster như trên hệ thống tập tin FAT. Một file/folder khi tạo mặc định sẽ mất 1KB trên $MFT. Trong 1KB này sẽ lưu trữ tên file, thuộc tính và danh sách các cluster của file đó.

 NTFS đã khắc phục nhược điểm của FAT chính là không có sự liên kết trên cluster mà tất cả đều lưu ở 1KB trên $MFT. Nhờ vậy khả năng khôi phục dữ liệu như khi dữ liệu bị xóa khỏi thùng rác trên NTFS rất là cao, và việc dồn đĩa chống phân mảnh cũng nhanh hơn rất nhiều.

Tóm lại, chiến lược ghi dữ liệu trên hệ thống tập tin NTFS là tương tự nư cấp phát bằng danh sách liên kết (FAT32), nhưng thay vì sử dụng một phần nhỏ ở mỗi khối dữ liệu (cluster) để lưu địa chỉ liên kết đến khối tiếp theo thì NTFS lại sử dụng một khối riêng để lưu toàn bộ địa chỉ liên kết làm các khối còn lại chỉ chứ dữ liệu. Cách xử lý như vậy được gọi là “cấp phát vùng nhớ bằng danh sách liên kết kết hợp chỉ mục”.

Ví Dụ: Xét trường hợp ghi 2 file vào ổ cứng có định dạnh là NTFS:

38 Chú thích: bắt đầu từ ô có vị trí là 0. Ô có kí tự “xxxxxxxx” là ô không còn trống, ô có kí tự “00000000” là những ô còn trống.

Giải thích: Bắt đầu truy cập vào file thứ nhất, ta thấy ở vị trí khối (ô) số 1, đó chính là danh sách địa chỉ của các khối (cluster) chứ dữ liệu của file thứ nhất, theo đó file A sẽ nằm rải rác ở các khối có vị trí 4,5 và 7. Tương tự file B được cắt ra thành các khối và nằm ở các khối có vị trí 8,10 và 11.

Nhận xét: Tuy hệ thống tập tin NTFS tốt hơn so với FAT rất nhiều nhưng vấn đề phân mảnh vẫn chưa được cải thiện, Hệ thống tập tin NTFS chỉ làm ngắn thời gian dồn đĩa chống phân mảnh chứ chưa hoàn toàn phòng ngừa được phân mảnh triệt để. Trong khi NTFS khi ghi một file có kích thước lớn hơn 512kb thì hiện tượng phân mảnh bắt đầu xảy ra (cái này tùy thuộc vào block size khi bạn format ổ cứng). Chiến lượt ghi file của NTFS là hễ chỗ nào trống và tiện thì nó cứ ghi vào và cuối cùng là một chuỗi địa chỉ để liên kết dữ liệu rời rạc của file lại làm chậm quá trình truy xuất file do đầu đọc ổ cứng phải làm việc nhiều tương tự FAT. Tổng kết: Như vậy, với cả 2 hệ thống tập tin FAT và NTFS trên Windows đều không tránh khỏi hiểm họa phân mảnh, vì vậy người dung Windows phải cân nhắc để chọn và đặt thời gian để máy tính tự động dồn ổ cứng chống phân mảnh định kì nhầm duy trì hiệu năng hoạt động của máy tính và tránh làm ổ cứng bị hỏng trong một thời gian dài sử dụng. Lưu ý, đối với loại ổ cứng SSD thì việc chống phân mảnh là không cần thiết.

39

Một phần của tài liệu ĐỒ ÁN PHÂN MẢNH MÁY TÍNH (Trang 31 - 39)

Tải bản đầy đủ (PDF)

(56 trang)