Tải bản đầy đủ (.pdf) (5 trang)

Giáo trình phân tích khả năng ứng dụng giá trị dữ liệu tại những cluster tương ứng p6 docx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (588.06 KB, 5 trang )

Một số chức năng được hỗ trợ bởi NTFS của windows
2000
Hệ thống NTFS được thiết kế bao gồm những tính năng được yêu cầu một hệ thống
file chuyên nghiệp. Để giảm tối đa việc mất dữ liệu do hệ thống bị ngưng đột ngột
hoặc bị phá hỏng, hệ thống file phải đảm bảo metadata của hệ thống phải luôn ở
trạng thái nguyên vẹn. Để bảo vệ dữ liệu tránh những truy xuất bất hợp lệ, hệ thống
file phải có các mô hình bảo mật thích hợp. Cuối cùng, một hệ thống file phải tính
đến việc dư thừa dữ liệu, và cho phép ngăn chặn dư thừa dữ liệu dựa trên phần
mềm, đây là một giải pháp mang lại hiệu quả về mặt kinh tế hơn so với các giải
pháp phần cứng.
Với những mục tiêu trên, NTFS đã cung cấp cho người sử dụng và chương
trình của người sử dụng những tính năng cao cấp: Tên dựa trên mã Unicode; Chỉ
mục chung; Ánh xạ động các Bad cluster; Nén và giải nén File; Cấp hạn ngạch đĩa;
Chống phân mảnh; Mã hoá các File; vv. Sau đây chúng ta sẽ xem xét một vài tính
năng trong số đó:
Chỉ mục chung: Kiến trúc NTFS được cấu trúc để cho phép chỉ mục các thuộc
tính của file trên volume đĩa. Cấu trúc này cho phép hệ thống file tìm kiếm các file
trên đĩa một cách hiệu quả dựa trên các điều kiện kết hợp. Hệ thống file FAT chỉ
chỉ mục theo tên file và không có sự sắp xếp trong đó nên hiệu quả của việc tìm
kiếm file trong các thư mục lớn sẽ rất thấp.
Ánh xạ tự động các Bad Cluster: Thông thường nếu một chương trình cố gắng
đọc dữ liệu từ một sector hỏng trên đĩa, thì việc đọc đó sẽ thất bại và dữ liệu trên
cluster được định vị sẽ trở thành không thể truy cập được. Nhưng nếu volume được
cài đặt hệ thống NTFS có khả năng sửa lỗi thì trình điều khiển lỗi của windows
2000 sẽ tự động tìm một bản sao dữ liệu tốt của dữ liệu tại sector hỏng đó và báo
cho NTFS biết là sector đó đã bị hỏng. NTFS sẽ cấp một cluster mới thay cho
cluster chứa sector hỏng và sao chép dữ liệu vào sector mới đó. Và sector này sẽ
được chỉ báo để không được sử dụng nữa.
Nén file: NTFS hỗ trợ việc nén dữ liệu các tập tin. Bởi vì NTFS thực hiện việc nén
và gải nén một các trong suốt, nên các ứng dụng không cần thay đổi để có được
những thuận lợi từ tính năng này. Các thư mục cũng có thể được nén, tức là tất cả


các file được tạo ra trong thư mục cũng đều được nén.
Cấp hạn ngạch (Quotas) đĩa cho người sử dụng: Người quản trị hệ thống thường
muốn theo dõi hoặc giới hạn không gian lưu trữ trên volume mà họ đã chia sẻ cho
người sử dụng, vì thế NTFS đã cung cấp các công cụ quản lý hạn ngạch để họ thực
hiện điều này. Với công cụ quản lý hạn ngạch, NTFS cho phép chỉ định không gian
đĩa mà nỗi người sử dụng được phép sử dụng và thông báo cho người sử dụng biết
không gian đĩa còn lại mà họ được phép sử dụng để lưu trữ, một cách tức thời.
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.

d
o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e

w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
IV.9.2. Cấu trúc của MFT
Trong hệ thống file NTFS, tất cả dữ liệu lưu trữ trên volume đều được chứa trong
các tập tin, bao gồm cấu trúc dữ liệu được dùng để định vị và đọc lại các file, dữ
liệu của bootstrap, và bitmap mà nó dùng để ghi lại trạng thái cấp phát của tất cả
các block (cluster) trên volume (gọi là metadata NTFS). Việc lưu trữ mọi dữ liệu
trong các tập tin cho phép hệ thống file dễ dàng tìm kiếm và bảo trì dữ liệu, và mỗi
tập tin riêng có thể được bảo vệ bởi một mô tả an toàn dữ liệu riêng.
MFT (Master File Table) là trung tâm trong cấu trúc của các volume NTFS.
Windows 2000 sử dụng MFT để quản lý việc lưu trữ các file và thư mục trên một

volume. MFT bao gồm một dãy các record (còn gọi là record file hay entry), có
kích thước cố định là 1Kb. Mỗi record trong MFT dùng để mô tả về một file hoặc
thư mục trên volume, kể cả record của chính nó. Nó chứa những thuộc tính của file,
như tên file, timestamps (các đặc trưng về thời gian tạo và thay đổi tập tin), và danh
sách địa chỉ đĩa (cluster) nơi lưu trữ các block của file. Nếu kích thước file quá lớn
hệ điều hành cần phải sử dụng 2, hoặc nhiều hơn một record MFT để lưu danh sách
địa chỉ tất cả các block đĩa chứa file trên volume. Trong trường hợp này, record
MFT đầu tiên của file được gọi là record cơ sở, nó trỏ đến các record MFT mở
rộng khác.
Hệ thống file của Windows 2000 sử dụng một bitmap để theo dõi các toàn bộ
MFT còn trống. Số lượng record của MFT có thể tăng lên khi cần và có thể tăng
đến 2
48
record vì bản thân MFT là một file, nó như có thể đuợc xuất hiện ở mọi nơi
trong volume.
Hình sau cho thấy một đoạn đầu tiên của MFT của một volume.

……………

16

Các file và thư mục đầu tiên của người sử
dụng

15

Unused


14


Unused


13

Unused


12

Unused


11

$Extend: Extentions: quotas,
10

$Upcase: Case conversion table
9

$Secure: Security descriptor for all files
8

$BadClus: List of bad of block Metadata File
7

$Boot: Bootstrap Loader
6


$Bitmap: Bitmap of blocks used
5

\ Root directory
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o

c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e

r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
4

$AttrDef Attribute definitions
3

$Volume Volume file
2

$ LogFile Log file to recovery
1


$MftMirr Mirror copy of MFT
0

$MFT Master File Table
Hình 4.6: Các record đầu tiên trong MFT
Mỗi record MFT bao gồm một tập các cặp (attribute header, value). Mỗi
thuộc tính thường biểu diển bởi phần bắt đầu của giá trị thuộc tính, hoặc là tất cả, vì
giá trị này có chiều dài thay đổi. Nếu giá trị thuộc tính ngắn thì nó sẽ được lưu ở
record MFT, ngược lại nếu nó quá dài thì sẽ được lưu ở một nơi khác trên đĩa và
tại record có một con trỏ trỏ đến địa chỉ này.
Mười sáu record đầu tiên của MFT được dành riêng cho các file metadata
NTFS. Mỗi một record mô tả 1 file có thuộc tính và các block dữ liệu, giống như
các file khác. Tên các file metadata này được bắt đầu bởi dấu ‘$’:
 Record đầu tiên (tên là $MFT) mô tả chính bản thân MFT. Đặc biệt, nó
chỉ ra địa chỉ block, nơi lưu trữ bảng file (MFT), vì thế hệ thống có thể dễ
dàng tìm thấy file MFT. Rõ ràng, Window 2000 cần phải có cơ chế để tìm
thấy block đầu tiên của file MFT để tìm đến thông tin còn lại của hệ thống
file. Cơ chế trên sẽ tìm đến block khởi động, nơi mà địa chỉ của nó được cài
đặt lúc cài đặt hệ thống.
 Record 1 (tên là $MftMirr) chỉ đến một bản sao của phần đầu tiên của
file MFT. Thông tin này là rất quan trọng vì vậy phải có 1 bản sao khác để
khắc phục việc những block đầu tiên của file MFT thường bị bad.
 Record 2 (tên là $LogFile) chỉ đến một log-file. Khi thêm vào volume 1
thư mục mới hay khi xoá khỏi volume 1 thư mục thì hệ thống sẽ ghi lại sự
thay đổi này vào log file trước khi thực hiện. Sự thay đổi về thuộc tính của
các file cũng được ghi lại ở log file. Sự thay đổi về dữ liệu của người sử
dụng không được ghi ở đây.
 Record 3 (tên là $volume) chỉ đến file chứa những thông tin về volume
như kích thước volume, nhãn của volume và version của nó.
 Như đã đề vập ở trên, mỗi record MFT chứa dãy các cặp: thuộc tính

header, giá trị. File Attribute chứa một bảng định nghĩa thuộc tính, nó định
nghĩa các loại thuộc tính được hỗ trợ bởi windows 2000 trên volume. Thông
tin của file này được chỉ bởi record 4 (tên là $Attr Def) của MFT.
 Kế tiếp là thư mục gốc, nó là 1 file và có kích thước tăng tuỳ ý. Nó được
mô tả trong record 5 (tên là \) của MFT. Entry này được dự trữ cho thư mục
gốc. Nó là một file chứa một chỉ mục của các file và thư mục được lưu trữ
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d

o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w

e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
trong phần gốc của cấu trúc thư mục NTFS. Khi NTFS được yêu cầu để mở
một file, thì nó bắt đầu tìm kiếm trong file của thư mục gốc. Sau quá trình
mở file, NTFS lưu trữ sự tham chiếu MFT của file đó để nó có thể truy cập
trực tiếp record MFT của file khi nó đọc hoặc ghi file sau đó.
 Không gian trống trên volume được theo dõi bởi 1 bitmap. Bitmap này
là một file. Địa chỉ đĩa của file bipmap này được ghi ở record 6 (tên là
$bitmap) của MFT.
 Record 7 chỉ đến file Bootstrap (có tên là $Boot): File này chứa mã
bootstrap của windows 2000. Để hệ thống boot được, mã bootstrap phải
được nạp vào một vị trí đặc biệt trên đĩa. Trong quá trình format đĩa hệ điều

hành định nghĩa vùng này như là một byte bằng cách tạo ra một file record
cho nó. File boot cũng như các file metadata NTFS, cũng có thể được bảo vệ
riêng bằng các công cụ của mô tả bảo mật mà nó được áp dụng cho tất cả các
đối tượng windows 2000.
 Record 8 (có tên là $BadClus) chỉ đến một file, file này được dùng để
lưu trữ danh sách liên kết các block (cluster) bị bad trên volume.
 Record 9 (tên file là $Secure): chỉ đến file chứa thông tin bảo mật, file
này lưu trữ cơ sở dữ liệu về các mô tả bảo mật trên toàn bộ volume. Các file
và thư mục NTFS có thể có một thiết lập mô tả bảo mật riêng, nhưng NTFS
lưu trữ các thiết lập này trong một file chung, nó cho phép các file và các thư
mục có cùng thiết lập bảo mật tham chiếu đến cùng một mô tả bảo mật.
Trong nhiều môi trường, toàn bộ cây thư mục có cùng một thiết lập bảo mật,
nên cơ chế này mang lại nhiều thuận lợi trong việc tiết kiệm không gian lưu
trữ các mô tả bảo mật.
 Record 10 (tên là $Upcase): chỉ đến file case mapping, file này chứa
bảng chuyển đổi giữa kí tự thường và kí tự hoa.
 Cuối cùng, record 11 (tên là $Extend) chỉ đến thư mục, thư mục này
chứa các file hỗn hợp như: hạn ngạch đĩa (Quotas), các định danh đối tượng
(Object identifier),
 4 record MFT cuối cùng dự trữ cho việc sử dụng sau này.
Khi lần đầu tiên truy cập volume, NTFS phải Mount nó, tức là đọc metadata
từ đĩa và xây dựng cấu trúc dữ liệu bên trong để nó có thể xử lý các truy cập từ các
ứng dụng. Để mount volume, NTFS tìm trong boot sector địa chỉ vật lý của MFT.
Theo trên, record file riêng của MFT là entry đầu tiên trong MFT, record file thứ
hai trỏ đến một file được định vị ở vùng giữa đĩa, đó là MFT mirror (tên là
$MftMir). Khi NTFS tìm thấy record file của MFT, nó lấy được những thông tin
ánh xạ từ VNC-to-LCN trong thuộc tính data và lưu vào bộ nhớ để chuẩn bị cho
các quá trình ghi/đọc file sau này.
Click to buy NOW!
P

D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c

k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o

c
u
-
t
r
a
c
k
.
c
o
m
Các Record File
Hệ thống file NTFS lưu trữ các file như là một tập các cặp thuộc tính/giá trị
(attribute/value), một trong số đó là dữ liệu nó chứa (được gọi là thuộc tính dữ liệu
không tên). Các thuộc tính của một file bao gồm tên file, thông tin time stamp và có
thể là các thuộc tính có tên được thêm vào. Hình 4.19.a sau đây cho thấy một
record MFT cho một file nhỏ: có 3 thuộc tính: Standard Information (thông tin
chuẩn), Filename (tên file) và Data (dữ liệu).
Mỗi thuộc tính file được lưu trữ như là một dòng tách biệt của các byte trong
phạm vi file. Nói cách khác NTFS không đọc ghi các file mà nó chỉ đọc ghi các
dòng thuộc tính. NTFS cung cấp các thao tác thuộc tính như: create, delete, read
(byte range), write (byte range). Các dịch vụ ghi đọc thường thao tác trên các thuộc
tính dữ liệu không đặt tên. Tuy nhiên, một lời gọi có thể chỉ ra một thuộc tính dữ
liệu khác bằng cách sử dụng cú pháp dòng dữ liệu được đặt tên.







Cả NTFS và FAT đều cho phép mỗi tên file trong đường dẫn có thể dài đến
255 kí tự, trong đó có cả các kí tự unicode và các dấu phân cách khác. Để tương
thích với các ứng dụng 16 bít của DOS, khi có file với tên file dài được tạo ra thì
windows 2000 sẽ tự động sinh ra một tên file theo kiểu của DOS (tên file 8.3). Tên
theo kiểu DOS được lưu trữ trong cùng một record trong MFT với tên file NTFS
(tên file dài), vì thế nó tham chiếu đến cùng một file.

Hình 4.19.b: Một record MFT có chứa tên MS_DOS
Windows 2000 tạo ra tên file theo kiểu DOS từ tên file dài tương tự như cách
mà hệ điều hành windows98 đã làm. Tên MS_DOS được dùng để ghi, đọc, copy
một file.
Thuộc tính thường trú và thuộc tính không thường trú
Với các file có kích thước nhỏ thì tất cả thuộc tính và giá trị của nó được
chứa trong một record trong MFT. Khi giá trị của thuộc tính được lưu trực tiếp
Standard
Information

File
name

D
ata

Hình 4.19.a: Một record MFT cho một file nhỏ, có 3 thuộc tính


Click to buy NOW!
P
D

F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k

.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c

u
-
t
r
a
c
k
.
c
o
m

×