Thứ Sáu, 30 tháng 9, 2011

UNIX



UNIX có thể được sao chép sang CD_ROM và ngược lại, chuẩn mở rộng này được gọi là Rock Ridge can dien tu.
Rock Ridge giữ lại tất cả các trường của ISO 9660, và sử dụng trường System để đưa thêm vào các trường mới, các hệ thống file khác không nhận biết các trường này và xem CD_ROM như một đĩa CD_ROM thông thường. Rock Ridge bổ sung thêm các trường, theo thứ tự là: PX: Posix Attributes, PN: Major and miror device number, SL: Symbolic link, NM: Alternative name, CL: Child location, PL: Parent location, RE: Relocaltion, TF: Times stamps, trong  đó trường quan trọng nhất là NM, trường này cho phép sử dụng 2 tên file cho một file, một tên file trong mục vào của thư mục và một tên file kết hợp, tên này không phụ vào tập kí tự hoặc giới hạn chiều dài của chuẩn ISO 9660 va mang trinhdo choi tinh ducam dao gia phau thuat tham my .

Mở rộng Joliet: Cũng như các chuyên viên thiết kế của UNIX, các chuyên viên thiết kế của Microsoft muốn mở rộng ISO 9660 sao cho các file được tạo từ  Windows  có thể được sao chép sang CD_ROM và ngược lại và họ đã thành công với mở rộng Joliet. Mở rộng Joliet cho phép: Tên file dài đến 64 kí tự; Sử dụng tập kí tự Unicode nên tên file có thể dài đến 128 kí tự; Có nhiều hơn 8 cấp thư mục lồng nhau; Sử dụng tên thư mục với phần mở rộng.

 

TÀI LIỆU THAM KHẢO


1.     Nguyễn Thanh Tùng. Bài giảng Hệ điều hành. Đại học Bách khoa Hà Nội, 1996.
2.     Trần Hạnh Nhi. Giáo trình Hệ điều hành Nâng Cao. Đại học Khoa học Tự nhiên, TP Hồ Chí Minh, 1998. 
3.     Dương Quang Thiện. Hệ điều hành MSDOS 6.22. Văn phòng SAMIS, TP Hồ Chí Minh, 1995.
4.     Lê Mạnh Thạnh - Nguyễn Kim Tuấn. Hướng dẫn lập trình với Assembly. Nhà xuất bản Khoa học Kỹ thuật Hà Nội, 2001.
5.     
Michael Tischer. Cẩm nang Lập trình Hệ thống (tập I và tập II). Nguyễn Mạnh Hùng và Phạm Tiến Dũng dich. Nhà xuất bản Thống Kê, 1995.
6.     William Stalting. Operating Systems. Prentice Hall, 1995.
7.     Andrew S. Tanenbum. Modern Operating Systems. Prentice Hall, 1995.
8.     David A. Solomon – Mark E. Russinovich. Inside Microsoft Windows 2000. Microsoft Press, 2000can dien tu

Trong MFT


Cấu trúc dữ liệu cây b+ là một kiểu cây cân bằng, nó là ý tưởng cho việc tổ chức sắp xếp dữ liệu được lưu trữ trên đĩa bởi vì nó cực tiểu số lần truy cập đĩa cần thiết để tìm đến một entry. Trong MFT va mang trinhdo choi tinh ducam dao gia phau thuat tham my  một thuộc tính index root của thư mục chứa nhiều filename mà nó đóng vai trò như là các chỉ mục vào cấp thư hai của cây b+. Mỗi filename trong thuộc tính index root có một con trỏ tùy chọn được kết hợp với nó để chỉ đến index buffer. Index buffer mà nó chỉ đến chứa các filename với giá trị (về mặt tự điển) ít hơn sở hữu của nó. Trong hình trên, file4 là entry cấp đầu tiên trong cây b+, nó chỉ đến một index buffer chứa các filename mà ít hơn chính nó, đó là cá filename file0, file1, và file3.
          Lưu trữ tên file trong cây b+ mang lại nhiều thuận lợi. Việc tìm kiếm thư mục sẽ nhanh hơn vì filename được lưu trữ theo thứ tự được sắp xếp. Và khi một phần mềm cấp cao đếm các file trong thư mục, NTFS sẽ trả lại tên file vừa được sắp xếp.    
          NTFS cũng cung cấp sự hỗ trợ cho chỉ mục dữ liệu bên cạnh filename. Một file có thể có một đối tượng ID được gán cho nó, ID của file được lưu trữ trong thuộc tính $OBJECT_ID của file. NTFS cung cấp một API cho phép các ứng dụng mở file bằng các đối tượng ID của file thay vì dùng tên file của nó. Do đó, NTFS phải tạo ra một tiến trình để chuyển đổi một đối tượng ID thành số file của file một cách hiệu quả. Để thực hiện được điều này NTFS lưu trữ một ánh xạ của tất cả các đối tượng ID của volume thành số tham chiếu file của chúng trong một file metadata \$Extend\$ObjID. NTFS sắp xếp các đối tượng ID trong file nói trên như chỉ mục filename mà ta đã dề cập ở trên. Chỉ mục đối tượng ID được lưu trữ như là cây b+. 
Ánh xạ bad-cluster
Các thành phần quả lý đĩa logic trong windows 2000 như FDISK (đối với basic disk) và LDM (đối với các dynamics disk), có thể khôi phục dữ liệu tại các bad-sector trên các đĩa có khả năng chịu lỗi (fault tolearant disk), với điều kiện đĩa phải sử dụng chuẩn SCSI và còn các sector trống trên đĩa. Các volume chịu lỗi là các volume thuộc loại Mirrored và RAD-5. Hệ thống file FAT và thành phần quản lý đĩa logic của nó không thể đọc dữ liệu từ các bad-sector cũng như không thể phát sinh thông báo khi ứng dụng đọc dữ liệu tại bad-sector.
          NTFS thay thế một cách tự động các cluster chứa bad-sector và theo dõi bad-cluster vì thế nó không được sử dụng lại sau này. Khi bộ phận quản lý volume trả về cảnh báo bad-sector hoặc khi bộ điều khiển đĩa cứng trả về lỗi bad-sector, NTFS sẽ tìm một cluster mới để thay thế cluster chứa bad-sector. NTFS copy dữ liệu mà bộ phận quản lý volume khôi phục được vào cluster mới để thiết lập lại sự dư thừa dữ liệu.  
          Hình 4.24.a cho thấy một record MFT cho một file của người sử dụng với một bad-cluster trong một trong các Run dữ liệu của nó. Khi nó nhận được lỗi bad-sector, NTFS gán lại cluster chứa bad-sector vào tập bad-cluster của nó. Điều này ngăn cản hệ thóng cấp bad-cluster cho các file khác. Sau đó NTFS tìm một cluster mới cho file và thay đổi ánh xạ VCN-to-LCN để chỉ đến cluster mới. 
Hình 4.24.a: Record MFT cho một File có bad-cluster
Ánh xạ lại bad-cluster trong hình sau. Cluster 1357 có chứa bad-sector, được thay thế bằng cluster mới 1049.
Nếu bad-sector ở trên volume redundant, thì bộ phận quản lý volume sẽ khôi phục dữ liệu và thay thế sector nếu có thể. Nếu không thể thay thế sector thì nó sẽ trả về một cảnh báo cho NTFS và NTFS sẽ thay thế cluster chứa bad-sector đó va mang trinhdo choi tinh ducam dao gia phau thuat tham my        

một volume

Nếu một volume không được cấu hình là volume redundant thì dữ liệu trong bad-sector không thể khôi phục được. Khi một volume được định dạng như là một volume FAT và bộ phận quản lý volume không thể khôi phục dữ liệu thì việc đọc dữ liệu từ bad-sector sẽ không thành công và cũng không nhận được kết quả trả lời. Nếu các thành phần quan trọng của hệ điều hành đang được chứa tại các bad cluster thì có thể toàn bộ các file thư mục trên volume sẽ bị mất va mang trinhdo choi tinh ducam dao gia phau thuat tham my 
Giống như các hệ thống file khác, NTFS không thể khôi phục dữ liệu từ bad-sector  mà không có sự hỗ trợ từ bộ phận quản lý volume. Tuy nhiên, NTFS chứa nhiều sự hư hại mà các bad-sector có thể gây ra. Nếu NTFS phát hiện ra bad-sector trong quá trình đọc nó sẽ ánh xạ lại cluster chứa bad-sector trong nó, như trình bày trong hình 4.24.b2 sau đây:
Hình 4.24.b2: Ánh xạ lại bad-cluster    
Nếu volume không được cấu hình là volume redundant, NTFS trả lại thông báo lỗi “đọc dữ liệu” cho chương trình người sử dụng yêu cầu đọc dữ liệu. Nếu NTFS phát hiện bad-cluster trong thao tác ghi, thì NTFS sẽ ánh xạ lại cluster trước khi ghi, nên không bị mất dữ liệu cũng như không phát sinh lỗi.          

Tổ chức lưu trữ file trên đĩa CD_ROM

Về nguyên tắc hệ thống file trên CD_ROM đơn giản hơn so với những hệ thống file khác,  vì các đĩa CD_ROM chỉ được ghi một lần (write-once media), do đó các file ghi trên nó không thể xóa bỏ hay thay đổi sau khi đĩa đã được chế tạo, chính vì vậy thành phần quản lý File/đĩa của hệ điều hành sẽ không lo đến việc quản lý các Block còn tự do trên đĩa cũng như việc cấp phát và thu hồi các Block cho các file, trong trường hợp các file được lưu trữ trên đĩa CD_ROM. 
Sau đây chúng ta xem xét hệ thống file chính trên CD_ROM và 2 hệ thống mở rộng của chúng:
Hệ thống file ISO 9660: Đây là chuẩn phổ biến nhất đối với các hệ thống file CD_ROM và đã được chấp nhận như một chuẩn quốc tế  vào năm 1988 với cái tên ISO 9660. Một trong những mục đích của chuẩn này là làm cho tất cả các CD_ROM đều có thể đọc được trên các máy tính khác nhau, nó không phụ thuộc vào thứ tự byte cũng như hệ điều hành đang sử dụng, kể cả hệ điều hành yếu nhất như MS_DOS.
Trên CD_ROM không có track, cylinder như trên các đĩa từ, nó chỉ có một đường xoắn ốc đi từ tâm đĩa ra bên ngoài, đường xoắn ốc này được chia thành các khối (block) logic có kích thước bằng nhau và bằng 2352 byte, đôi khi cũng được gọi là các sector logic. Một vài byte trong khối dành cho phần mở đầu, sửa chữa lỗi, và những việc khác. Phần chính của mỗi khối logic còn lại khoảng 2048 byte.
ISO 9660 hỗ trợ cho một tập đĩa CD_ROM với một tập gồm 216-1 đĩa, một CD_ROM riêng lẽ có thể được chia thành nhiều partition. Trong phần này chúng ta chỉ tìm hiểu chuẩn ISO 9660  với một CD_ROM và không được chia thành các Partition.
·                    Mỗi CD_ROM đều có phần đầu của đĩa, dài 16 block, chức năng của phần này không  được định nghĩa trong chuẩn ISO 9600. Các nhà sản xuất CD_ROM có thể sử dụng phần đầu này để ghi vào đó chương trình BootStrap cho phép máy tính có thể khởi động được từ đĩa CD_ROM, hoặc dùng cho những mục đích va mang trinhdo choi tinh ducam dao gia phau thuat tham my  khác 
·                    Phần tiếp theo là 1 block chứa bộ mô tả Volume chính, bộ mô tả này chứa một số thông tin chung về CD_ROM, bao gồm: định danh hệ thống (32byte), định danh volume (32byte), định danh nhà sản xuất (128byte) và định danh dữ liệu (128byte). Khi chế tạo có thể lấp đầy những trường trên theo ý muốn. Trong phần này còn chứa phần giới thiệu, bản quyền tác giả, thông tin thư mục, kích thước của một khối logic (2048, 4096, 8192, ...), số các block trên CD_ROM, và thời gian tạo và kết thúc của CD_ROM. Cuối cùng, trong bộ mô tả Volume chính còn chứa một tập các mục vào (directory entry) cho thư mục gốc, tại đây chứa địa chỉ của block bắt đầu của thư mục gốc trên CD_ROM. Trên CD_ROM có 2 bộ mô tả volume chính, có nội dung hoàn toàn giống nhau, sử dụng một bộ và một bộ để dự phòng.
·                    Sau các phần trên là phần bắt đầu của CD_ROM dùng để chứa các file đang được ghi trên đĩa.
·                    Thư mục gốc và tất cả các thư mục khác, chỉ gồm một số mục vào, phần cuối của chúng chứa một bít đánh dấu (mark). Mỗi mục vào chứa từ 10 đến 12 trường, trong đó có một số thuộc ASCII và số khác là những trường số thuộc số nhị phân.
Mở rộng Rock Ridge: Các chuyên viên thiết kế của UNIX nhận thấy ISO 9660 còn một vài hạn chế, do đó họ đã mở rộng ISO 9660 với mục đích là cho nó có thể thay thế cho hệ thống file của UNIX trên các đĩa CD_ROM và các file được tạo từ can dien tu 

MFTMFT


Cần chú ý rằng không có giới hạn trên cho kích thước của các file được trình bày theo cách này. Trong trường hợp thiếu địa chỉ nén, mỗi cặp cần có 2 số 64-bít trong tổng số 16 byte. Tuy nhiên một cặp có thể tượng trưng cho một triệu hoặc hơn nữa các block đĩa liên tiếp. Trên thực tế, một file 20 Mb bao gồm 20 Run của 1 triệu block 1 Kb, mỗi Run được đặt trong một record can dien tu.
Khi lưu trữ một file có kích thước lớn (số lượng block lớn) hoặc thông tin của file có sự phân mảnh lớn thì các lưu trữ các block của nó trong MFT được trình bày như trong hình sau: va mang trinhdo choi tinh ducam dao gia phau thuat tham my 
Trong hình sau ta thấy record cơ sở của file nằm ở record  MFT 102. Nó có quá nhiều Run trên một record MFT, vì thế hệ thống cần phải có nhiều record mở rộng, ở đây là thêm 2 record mở rộng, và đặt chúng vào record cơ sở. Phần còn lại của record cơ sở được sử dụng cho k Run đầu tiên.       
Khi tất cả các byte trong record 102 đã được dùng hết, thì các run được tích lũy sẽ tiếp tục với record MFT 105. Khi nhiều run được sắp xếp vào hết trong record này hay khi record này đã đầy thì phần run còn lại sẽ vào record MFT 108. Theo cách này, nhiều record MFT có thể được dùng để quản lý các file lớn khác .





109










108


 Run n+1
 ...

Run#m

  Record mở rộng 2




107












106












105


 Run #k+1
 ...


 Run #n
  Record mở rộng 1




104












103












102


 MFT 105
 MFT108
 Run#1
 ...
 Run #k
 Record cơ sở




101








Hình 4.22: Các record MFT của một file lớn
Một vấn đề nảy sinh là nếu cần quá nhiều record MFT thì sẽ không đủ chổ trong MFT cơ sở để liệt kê tất cả các chỉ mục của chúng. Có một giải pháp cho vấn đề này là thực hiên không lưu danh sách phần đuôi mở rộng của các record MFT (chẳng hạn, được lưu trử trên đĩa thay vì trên bản ghi MFT cơ sở). Lúc đó, kích thước của file có thể phát triển lớn đến một mức cần thiết.

Một số kỹ thuật được hỗ trợ bởi hệ thống file NTFS

Lập bảng chỉ mục
Trong hệ thống file NTFS, một danh mục file là một chỉ mục đơn của các tên file, đó là một tập các tên file (cùng với các tham chiếu file của chúng) được tổ chức theo một cách đặc biệt để tăng tốc độ truy xuất file. Để tạo một danh mục, NTFS lập chỉ mục cho thuộc tính filename của các file trong thư mục. Một record cho thư mục gốc của volume được đưa ra ở hình 4.23 sau đây.

Hình 4.23: Chỉ mục tên file cho  thư mục gốc của volume
          Một emtry MFT cho một thư mục chứa trong thuộc tính index root của nó một danh sách được sắp xếp của các file trong thư mục. Đối với các thư mục lớn, tên file thực tế được lưu trữ trong các vùng đệm chỉ mục (index buffer) có kích thước cố định là 4Kb, index buffer này chứa và tổ chức các tên file. Index buffer cài đặt cấu trúc dữ liệu cây b+, nhờ đó mà cực tiểu được số lần truy cập trực tiếp đĩa cần thiết để tìm đến một file, đặc biệt là đối với các thư mục lớn. Thuộc tính Index root chứa cấp đầu tiên của cây b+ và trỏ đến Index buffer chứa cấp tiếp theo.
Hình 4.23 trình bày các tên file trong thuộc tính index root và index buffer (file5), nhưng mỗi entry trong index cũng chứa tham chiếu file trong MFT, nơi chứa các thông tin mô tả, kích thước, timestamp của file. NTFS nhân đôi thông tin về timestamp và kích thước file từ record MFT của file. Kỹ thuật này được sử dụng bởi FAT và NFTS, yêu cầu được cập nhật thông tin để ghi vào cả hai nơi. Do đó, nó tăng tốc độ đáng kể cho các thao tác duyệt thư mục vì nó cho phép hệ thống file hiển thị timestamp và kích thước file của mỗi file mà không cần mở mỗi file trong thư mục.   
Thuộc tính index allocation ánh xạ các VCN của cả Run index buffer mà nó chỉ báo nơi index buffer thường trú trên đĩa. Thuộc tính bitmap theo dõi các VCN trong index buffer là đang được sử dụng hay đang rỗi. Hình trên cho thấy một entry file trên VCN, nhưng các entry filename thực tế được đóng gói trong mỗi cluster. Một index buffer 4Kb có thể chứa từ 20 đến 30 entry filenamecan dien tu.                    

Cuối cùng

·                    Cuối cùng, là thuộc tính dữ liệu. Một dãy tên file nằm trong thuộc tính heard. Tiếp theo header là một danh sách các địa chỉ đĩa mà chúng được gọi là block chứa file, hay chỉ cho các file vài trăm byte của riêng nó. Trong thực tế, đặt dữ liệu file vào record MFT được gọi là file trực tiếp. Phần lớn thì dữ liệu không đặt ở MFT record, vì vậy thuộc tính này thường không thường trú  
IV.9.3. Quản lý danh sách các block chứa File trên đĩa 
Trong Windows 2000 với NTFS thì nội dung của một File cần lưu trữ trên volume cũng được chia thành các block (tương ứng với một block hay cluster trên đĩa), các block file còn được gọi là các block logic. Các block file có thể được lưu tại một hoặc nhiều đoạn block không liên tiếp nhau trên đĩa, một đoạn block bao gồm n block liên tiếp nhau (n = 2, 3, 4, ...), một đoạn block trong trường hợp này được gọi là một Run. Ví dụ file A được lưu trữ trên 7 block liên tiếp: từ block 10 đến block 16 và file B được lưu trữ trên 35 block: từ block 30 đến block 44 và từ block 41 đến block 60. Như vậy file A được lưu trữ trên một đoạn block  va mang trinhdo choi tinh ducam dao gia phau thuat tham my (Run #1) còn file B được lưu trữ trên hai đoạn block (Run #1 và Run #2). Thông thường, nếu block logic đầu tiên của một file ghi ở block 20 trên đĩa thì block logic 2 được ghi vào block 21 trên đĩa và block logic thứ 3 được ghi vào block 22 trên đĩa, vv. Với cách lưu trữ này hệ điều hành có thể ghi nhiều blok logic vào các block đĩa cùng một lúc nếu có thể. Đây là một ưu điểm của Windows 2000.
Danh sách các block đĩa chứa nội dụng của một file được mô tả bởi một record trong MFT (đối với file nhỏ) hoặc bởi một dãy tuần tự các record trong MFT, có thể không liên tiếp nhau (đối với file lớn). Mỗi record MFT dùng để mô tả một dãy tuần tự các block logic kề nhau. Mỗi record MFT trong trường hợp này bắt đầu với một header lưu địa chỉ offset của block đầu tiên trong file. Tiếp đến là địa chỉ offset của block đầu tiên mà không nằm trong record. Ví dụ nếu có một file được lưu tại 2 đoạn block là: 0 – 49 và 60 – 79 thì record đầu tiên có một header của (0, 50) và sẽ cung cấp địa chỉ đĩa cho 50 block này và record 2 sẽ có một header của (60, 80) và sẽ cung cấp địa chỉ đĩa cho 20 block đó. Tiếp sau mỗi record header là một hay nhiều cặp, mỗi cặp lưu một địa chỉ của block đĩa bắt đầu đoạn block và số block có trong đoạn (độ dài của một Run).
Hình sau đây là một record MFT chứa thông tin của một file. 



























Hình 4.21 là một record MFT cho một file ngắn (ngắn ở đây có nghĩa là tất cả các thông tin về các block của file chứa vừa trong một record MFT). File này gồm 9 block, nó chứa 3 Run: Run #1 gồm 4 block từ 20 đến 23, Run #2 gồm 2 block từ 64 đến 65 và Run #3 gồm 3 block từ 80 đến 82. Mỗi Run được ghi vào record MFT theo từng cặp (địa chỉ block đĩa, tổng số block).can dien tu 

Tóm lại trong một record MFT có thể có các trường sau:

Tóm lại trong một record MFT có thể có các trường sau:
·            va mang trinhdo choi tinh ducam dao gia phau thuat tham my 
     Trường đầu tiên của một record MFT là record headercan dien tu, theo sau đó là các cặp header và value của các thuộc tính. Record header chứa 1 mã số sử dụng để kiểm tra tính hợp lệ, số kế tiếp được cập nhật mỗi khi record được sử dụng lại cho file mới, các tham chiếu đến file, số byte hiện tại trong record được sử dụng, nhận dạng (chỉ số, dãy số liên tiếp) của record cơ sở (chỉ sử dụng cho record mở rộng), và 1 số trường khác. Sau record header là header của thuộc tính thứ nhất và giá trị của thuộc tính thứ nhất, header của thuộc tính thứ hai và giá trị của thuộc tính thứ hai,...
·                    NTFS định nghĩa 13 thuộc tính có thể xuất hiện ở các record MFT. Chúng được liệt kê ở bảng sau đây. Mỗi record MFT bao gồm 1 dãy các header thuộc tính, chúng được đồng nhất với phần đầu của thuộc tính và cho biết độ dài và vị trí của trường giá trị cùng với trạng thái cờ và một số thông tin khác. Thông thường, giá trị thuộc tính nằm ngay sau các header của chúng, nhưng nếu giá trị này quá dài để đặt trong 1 record MFT, thì chúng được đặt vào 1 block đĩa tách rời. Thuộc tính như vậy được gọi là thuộc tính không thường trú. Một vài thuộc tính như là tên, có thể được lặp lại, nhưng tất cả các thuộc tính phải được đặt trong 1 hàng cố định trong recorrd MFT. Các header cho thuộc tính thường trú có độ dài 24 byte; đối với những thuộc tính không lưu trú là dài hơn vì chúng lưu thêm những thông tin để tìm thuộc tính trên đĩa.
Thuộc tính
Mô tả
Standard information
Các bítcờ, timestamp,...
File name                  
Tên file trong Unicode: có thể lặp lại đối với tên DOS
Security descriptor  
Đã lỗi thời. Thông tin bảo mật trong $extend$Secure 
Attribute list            
Vị trí của các MFT record thêm vào nếu cần   
Object ID                 
64-bit, file được nhận biết là duy nhất trên volume
Reparse point      
Dùng cho các liên kết tăng dần và tượng trưng
Volume name             
Tên của volume này (chỉ sử dụng trong $Volume)
Volume information 
Phiên bản của Volume (chỉ sử dụng trong $Volume)
Index root                     
Được sử dụng cho các thư mục
Index allocation
Được sử dụng cho các thư mục rất lớn
Bitmap
Được sử dụng cho các thư mục rất lớn   
Logged utility stream 
Điều khiển kết nối đến $LogFile      
Data                            
Dữ liệu luồng; có thể lặp lại nhiều lần
Bảng 4.7:  Các thuộc tính sử dụng trong record MFT
·                    Trường thông tin chuẩn (Standard Information) của file bao gồm: thông tin bảo mật, timestamp, các liên kết cố định, bít chỉ đọc và bítlưu trữ, vv. Nó là trường có kích thước cố định và luôn hiện hữu.
·                    Trường tên file (File Name) là một chuỗi mã Unicode có độ dài thay đổi được. Để tạo các file với các tên không phải là tên MS-DOS gần với các ứng dụng 16-bítcũ, các file cũng có thể có tên 8+3 của MS-DOS. Nếu tên file thực sự tuân theo quy tắc đặt tên 8+3 của MS-DOS, thì tên file MS_DOS phụ sẽ không được sử dụng.
·                    Trong NT 4.0, thông tin bảo mật (Security) có thể đưa vào một thuộc tính nhưng trong Windows 2000 tất cả được đưa vào một file riêng, vì thế nhiều file có thể chia sẻ một phần bảo mật.
·                    Danh sách thuộc tính (Attribute List) là cần thiết nếu thuộc tính không đặt trong record MFT. Thuộc tính này là để tìm ra các record mở rộng. Mỗi mục vào của dãy thuộc tính chứa một chỉ số 48-bíttrong MFT gọi đó là record mở rộng và một dãy số 16-bítcho phép kiểm tra sự phù hợp của record mở rộng và record cơ sở.
·                    Thuộc tính định danh đối tượng ID (Object Identifer) của đối tượng làm cho tên file là duy nhất.
·                    Trường peparse point gọi là các thủ tục phân tách tên file để thực hiện một thao tác đặc biệt nào đó. Kỹ thuật này được sử dụng trong cài đặt và liên kết biểu tượng.
·                    Hai thuộc tính volume (Volume Name và Volume Information) chỉ sử dụng để xác định volume. 
·                    Ba thuộc tính tiếp theo (Index Root, Index Allocation và Bitmap) được sử dụng cho việc cài đặt các thư mục can dien tu.
·                    Thuộc tính Logged utility stream được sử dụng bởi hệ thống file mã hoá.