Trong phần này chúng ta xem xét các cơ chế khác nhau mà hệ điều hành sử dụng để theo dõi (tổ chức lưu trữ tập tin lên đĩa và đọc lại nội dung tập tin đang lưu trữ) danh sách các block đĩa mà hệ điều hành đã cấp phát cho một tập tin, để chứa hết các block của một tập tin, của tất cả các tập tin đang được lưu trữ tên đĩa.
Cơ chế cấp phát liên tục (contiguous allocation):
Trong cơ chế này, các block tập tin được lưu trữ tại các block đĩa liên tục nhau. Tức là, nếu mỗi block đĩa là 1K thì một tập tin 50K sẽ được lưu trữ tại 50 block liên tiếp nhau trên đĩa.
Cơ chế này đơn giản, dễ cài đặt và thời gian đọc tập tin giảm xuống đáng kể, vì hệ điều hành chỉ cần biết block đĩa đầu tiên chứa các block tập tin và tổng số block đĩa chứa tập tin là có thể tiến hành đọc nội dung của tập tin mà không cần dò tìm danh sách các block đĩa chứa nội dung của tập tin.
Tuy nhiên, cơ chế này chỉ có thể được sử dụng với các tập tin có kích thước cố định, không thay đổi so với thời điểm tạo ra tập tin, hoặc với các tập tin mà hệ điều hành biết trước được kích thước tối đa của nó, trong trường hợp này hệ điều hành phải dự trữ block đĩa cho tập tin, điều này dễ dẫn đến tình trạng lãng phí trong việc sử dụng block đĩa.
Cơ chế này có thể dẫn đến hiện tượng phân mảnh trên đĩa, tức là trên đĩa có thể xuất hiện các đoạn block trống nhỏ, không đủ để chứa một tập tincó kích thước tối thiểu, nằm giữa các đoạn block chứa tập tin, các đoạn block trống này có thể là nơi lưu trữ của một tập tinnào đó mà tập tinnày đã bị xoá khỏi đĩa. Hiện tượng phân mảnh đĩa sẽ làm chậm tốc độ đọc tập tincủa hệ điều hành.
Các hệ điều hành hiện nay, hệ điều hành WindowsNT/2000 chẳng hạn, cải tiến cơ chế này để khắc phục các hạn chế và tận dụng những thuận lợi của nó. Bằng cách, vẫn cấp phát các block đĩa liên tục để chứa vừa đủ kích thước ban đầu của tập tin, và sau đó nếu kích thước của tập tin tăng lên thì hệ điều hành sẽ tìm và cấp phát một đoạn block khác tại một vị trí bất kỳ trên đĩa để chứa vừa đủ phần kích thước tăng lên này. Tức là, nội dung của tập tin được lưu trữ tại các đoạn block đĩa rời rạc nhau trên đĩa. Nếu kích thước tập tin giảm xuống thì hệ điều hành phải tổ chức lại việc lưu trữ tập tin để sao cho có thể giải phóng được một đoạn block đĩa chứa tập tin trước đó.
Với việc cải tiến này, hệ điều hành có thể đọc tập tin nhanh hơn, ít xảy ra phân mảnh hơn nhưng việc tổ chức lưu trữ sẽ phức tạp hơn. Chúng ta sẽ thấy cách tổ chức này trong hệ thống tập tincủa hệ điều hành windowsNT/2000 trong phần sau của chương này.
» Tin mới nhất:
» Các tin khác: