Giáo trình tổng hợp các hình thức quản lý thông tin và dữ liệu trong DOS phần 2 pot - Pdf 22

mục gốc của đĩa hay phần tử trong bảng thư mục của thư mục con, chứa thông tin
của một thư mục (con), đều có trường Filename là tên của thư mục (con), trường
Attribute = 16, trường Start cluster = cluster đầu tiên của thư mục (con), trường
Filesize = 0, … Chỉ có hai phần tử đầu tiên trong bảng thư mục của các thư mục
con là có chứa các giá trị đặc biệt.
Ngay sau khi có một thư mục con được tạo ra, hệ điều hành tạo ngay bảng
thư mục cho nó và khởi tạo 2 phần tử đầu tiên trong bảng thư mục này:
 Phần tử thứ nhất, chứa mã ascii của kí tự dấu chấm (.) ở byte đầu tiên
của trường filename, phần tử này chỉ đến chính thư mục hiện hành. Trường
Start cluster cho biết cluster bắt đầu của thư mục này.
 Phần tử thứ hai, chứa 2 mã ascii của 2 kí tự dấu chấm ( ) ở 2 byte đầu
tiên của trường filename, phần tử này chỉ đến thư mục cha của nó. Trường
Start cluster cho biết cluster bắt đầu của thư mục cha của nó. Nhưng nếu cha
của nó là thư mục gốc thì trường này chứa giá trị 0.

0

0

sub


LTOS0

55

sub



.

0

25

sub


tailieu


.

0

65

sub


Btap1

doc

99

72…


Một phần bảng
thư mục của thư
mục con ASS 0

0





Một phần bảng
thư mục của thư
mục con LT 0

7

sub


Ch2
doc

19

97

sub



.

0


-
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
.

-
t
r
a
c
k
.
c
o
m

Để thấy rõ hơn mối quan hệ giữa bảng thư mục gốc và bản thư mục của các
thư mục con, cũng như các phần tử trong 2 bảng thư mục này, ta hãy xem sơ đồn
minh họa 4.12 trên đây. Trong sơ đồ này ta giả sử: trên thư mục gốc có hai thư
mục con là ASS và OS, trong thư mục ASS có hai thư mục con LT và TH, trong OS
có chứa tập tin tailieu.txt và thư mục con LTOS, trong LT có chứa 2 tập tin ch1.txt
và ch2.txt, trong TH có chứa 2 tập tin btap1.txt và btap2.txt.
Hình 4.12.a ở trên cho thấy trên thư mục gốc có 2 thư mục con OS và ASS,
tổ chức của bảng thư mục con của thư mục OS được lưu trữ bắt đầu tại block 25, tổ
chức của bảng thư mục con của thư mục ASS được lưu trữ bắt đầu tại block 7.
Hình 4.12.b cho thấy thư mục cha của thư mục OS là thư mục gốc, phần tử có tên
là hai dấu chấn “ ” chứa giá trị 0 ở trường start cluster, tập tin tailieu.doc được
lưu trữ bắt đầu tại cluster 2Bh và có kích thước là 7Fh, tổ chức bảng thư mục con
của thư mục LTOS được lưu trữ bắt đầu tại cluster 55. Hình 4.12.c & 4.12.d cho

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

m
(Bắt đầu từ khi máy tính được cung cấp nguồn điện)
1. Các thanh ghi segment được gán giá trị 0FFFFh, các thanh ghi còn lại
bằng 0.
2. Cặp thanh ghi CS:IP chứa giá trị 0FFFh:0000h, địa chỉ này chứa một
lệnh nhảy xa (JMP Far) chuyển quyền điều khiển đến một đoạn chương trình
ở đầu ROM_BIOS. Đoạn chương trình này sẽ thực hiện quá trình POST
máy.
3. POST sẽ lần lượt kiểm tra các thanh ghi, bộ nhớ khởi tạo các chip điều
khiển DMA, bộ điều khiển ngắt, đĩa, . Nếu có thiết bị nào bị lỗi thì thông
báo lỗi lên màn hình và dừng quá trình khởi động, nếu không thì đoạn code ở
cuối chương trình POST sẽ đọc nội dung của boot sector của đĩa mềm/ hoặc
master boot record của đĩa cứng vào RAM tại địa chỉ 0000:7C00h và bắt đầu
quá trình khởi động hệ điều hành (tìm và nạp hệ điều hành vào bộ nhơ
RAM). Nếu không tìm thấy boot setor hoặc master boot record thì sẽ xuất
hiện thông báo lỗi hoặc dừng quá trình khởi động.
Giai đoạn tìm nạp hệ điều hành vào bộ nhớ:
(Kết thúc khi màn hình xuất hiện dấu nhắc hệ điều hành)
4. Nếu đĩa khởi động là đĩa mềm: chuyển sang bước 7.
5. Nếu đĩa khởi động là đĩa cứng: dò tìm tại offset 00 của các phần tử trong
bảng partition giá trị 80h. Nếu tìm thấy thì partition tương ứng là partition
active (partition chứa sector khởi động), chuyển sang bước 7. Nếu không tìm
được giá trị 80h tại offset 00 trên tất cả các phần tử trong bảng partition thì
xuất hiện thông báo lỗi hoặc dừng quá trình khởi động.
6. Boot code trong master boot record sẽ nạp boot sector (sector đầu tiên)
của partition active vào RAM tại địa chỉ 0000:7C00h đồng thời với việc
chuyển chính nó đi nơi khác.
7. Quyền điều khiển quá trình khởi động tiếp theo được chuyển cho boot
sector, boot sector thực hiện ngay lệnh nhảy (JMP) tại offset đầu tiên của nó,
để nhảy đến thực hiện chương trình bootstrap loader ở cuối bootsector.

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

10. Kết thúc quá trình khởi động bằng việc xuất hiện dấu nhắc hệ điều hành
lên màn hình.
Đối với người sử dụng thông thường thì việc chuyển từ giai đoạn khởi động
máy sang giai đoạn nạp hệ điều hành, được đánh dấu bằng thông báo: Starting
MSDOS …. trên màn hình. Xét về mặt bản chất thì điều này không chính xác.
Người sử dụng có thể bỏ qua việc thực hiện các khai báo trong Config.sys và
Autoexec.bat trong quá trình khởi động ở bước 9, bằng cách gõ phím F5 khi màn
hình vừa xuất hiện thông báo: Starting MSDOS …. Người sử dụng cũng có thể chỉ
định thực hiện hay không thực hiện một khai báo nào đó trong Config.sys và
Autoexec.bat trong quá trình khởi động ở bước 9, bằng cách gõ phím F8 khi màn
hình vừa xuất hiện thông báo: Starting MSDOS …. Điều này cũng có thể áp dụng
trong quá trình khởi động máy tính với hệ điều hành windows9x.
Qua việc phân tích quá trình khởi động máy tính ở trên ta có thể biết được
nguyên nhân và cách khắc phục một số lỗi xảy ra trong quá trình khởi động máy và
nạp hệ điều hành vào bộ nhớ RAM.
Tổ chức bảng thư mục gốc của Windows98
Trong phần này chúng tôi chỉ trình bày về tổ chức của bảng thư mục gốc của
windows98 để các bạn thấy được cách tổ chức lưu trữ tên file dài của windows98
và sự tương thích của tên file dài trong DOS và các windows trước đó, mà không
trình bày về cấu trúc của hệ thống FAT32. Vì, FAT32 tương thích với FAT16, chỉ
có một điểm khác nhỏ cần chú ý ở đây là: mỗi phần tử trong FAT chiếm 2 byte, do
đó theo lý thuyết mỗi phần tử có thể chứa trong nó một giá trị lên đến 65536 (2
16
)
hay bảng FAT có 65536 phần tử, nhờ vậy mà windows98 quản lý được một không
gian đĩa cứng lớn hơn nhiều so với hệ điều hành DOS. Còn nhiều khác bịêt nữa
của FAT32 so với FAT12&FAT16 chúng tôi đã chỉ ra ở mục IV.3 ở trên.
Phiên bản windows95 thứ nhất và các phiên bản trước đó đều sử dụng hệ
thống file của hệ điều hành DOS (tên file theo chuẩn 8.3 với FAT12 hoặc FAT16),
bắt đầu từ phiên bản Windows95 thứ 2 đến Windows98, hệ điều hành windows sử

-
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

của một phần tử trong bảng thư mục gốc của hệ điều hành DOS. Như vậy bảng thư
mục của Windows 98 cũng là một danh sách gồm nhiều phần tử, mỗi phần tử dài
32 byte, nhưng không giống với DOS (mỗi phần tử chứa thông tin về 1 file hay thư
mục đang lưu trữ trên thư trong mục) ở đây Windows 98 có thể sử dụng nhiều phần
tử trong bảng thư mục để chứa thông tin về một file đang lưu trữ trong thư mục hay
trên đĩa. Đây là sự khác biệt lớn giữa cấu trúc bảng thư mục của Windows98 và
MS_DOS và cũng chính nhờ điều này trong MS_DOS ta vẫn có thể truy xuất đến
các file được tạo ra từ Windows 98.
Hình vẽ sau đây là cấu trúc của một phần tử trong bảng thư mục của
windows98.
Điều ghi nhận đầu tiên ở cấu trúc này là 10 byte bắt đầu tại offset 0Ch mà hệ
điều hành DOS chưa sử dụng nay đã được Windows98 sử dụng, Windows98 dùng
10 byte này để tạo ra 5 trường mới: NT, Sec, Creation Date/Time (ngày giờ tạo
file/directory), Last Access (thời điểm file/directory được truy xuất gần đây nhất)
và Upper 16 bítof Staring block (16 bít cao của block đầu tiên).
 Trường NT: tương thích với WindowsNT, trong trường hợp hiển thị tên
file đúng như khi tạo file ban đầu (chỉ dùng với windowsNT).
 Trường Sec: kết hợp cùng với trường Creation Date/Time để lưu chính
Base name

Ext

N



4

2

4

Hình 4.13
Phần tử thư mục mở rộng của MS-DOS sử dụng trong windows 98

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

V
i
e
w
e
r
w

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
xác thời điển tạo ra file bao gồm ngày giờ và giây (chính xác đến 10msec).
 Trường Last access: lưu trữ thời gian truy cập đến file cuối cùng trước
đó.
 Trường Upper 16 bítof Staring block kết hợp cùng với trường Lower 16
bítof Staring block (16 bít thấp của block đầu tiên): để lưu số hiệu của block
đầu tiên trong dãy các block chứa nội dung của File tương ứng.

 Một hoặc nhiều entry kế tiếp sau đó để lưu tên file dài, số lượng các entry
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

.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
này phụ thuộc vào số kí tự của tên file (mỗi entry chứa được 13 kí tự
Unicode= 26byte).
Ví dụ: một file có tên file gồm 28 kí tự thì windows98 sẽ dùng 4 entry: một
entry dùng để lưu tên file theo chuẩn MS_DOS, 3 entry còn lại dùng để lưu tên file
dài, trong đó 2 entry đầu chứa 26 kí tự (13x2) đầu, entry cuối cùng chứa 2 kí tự còn
lại của tên file.
Hình 4.14 cho thấy cấu trúc của một entry trong bảng thư mục gốc của
windows98 dùng cho tên file dài:
 Trường Sequence: chiếm 1 byte dùng để ghi thứ tự của các entry chứa tên


45 ký tự

0
6 ký tự

0 2 ký t ự
Sequen
ce

Attributes

Checksum

Hnh 4.14 Một entry cho một tên file dài của windows 98
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

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


y e
A

0
K

n V a T
0
r a
C1
N

g u y e
A

0
K

n L e T
0
r a
N

N

G

file thu gọn NGUYEN~1, và 3 entry đánh số thứ tự 1, 2, và 67 theo kiểu
windows98 để lưu toàn bộ phần tên file dài.
Chú ý: Vì bảng FAT quá lớn nên windows98 không nạp hết bảng FAT vào bộ nhớ
mà chỉ nạp những phần tử cần thiết, các phần tử được sử dụng hiện tại, nhưng các
phần tử này luôn thay đổi, do đó Windows 98 sử dụng một “cửa sổ” trên bảng FAT
để phục vụ cho mục đích này, theo đó chỉ các phần tử nằm trong “cửa sổ” mới
được nạp vào bộ nhớ để sử dụng tại thời điểm hiện tại.
Tổ chức đĩa của Windows 2000
Các loại Partition
Windows 2000 giới thiệu hai khái niệm: Basic Disk và Dynamic Disk. Windows
2000 gọi các đĩa được phân khu dựa vào sơ đồ phân khu của MS_DOS là các basic
disk. Basic là khái niệm mà windows 2000 kế thừa từ MS_DOS, dynamic disk là
một khái niệm mới của nó. Windows 2000 đã cài đặt thành công các dynamic disk
và nó có nhiều đặc tính nổi trội hơn so với basic disk. Sự khác nhau cơ bản giữa
dynamic disk và basic disk đó là dynamic disk hỗ trợ các multipartition volume.
Windows 2000 quản lý tất cả các đĩa như là basic disk trừ khi ta tạo một
dynamic disk bằng tay hoặc chuyển một basic disk đang tồn tại thành dynamic
disk. Để khuyến kích người quản trị hệ thống sử dụng dynamic disk, Microsoft đưa
ra một vài giới hạn sử dụng trên các basic disk, như: chỉ có thể tạo các
multipartition volume mới trên các dynamic disk, chỉ có thể chuyển thành dynmic
Click to buy NOW!
P
D
F
-
X
C
h
a
n

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

hệ điều hành của Microsoft đã phá bỏ giới hạn 4 partition trên một đĩa. Tiến trì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

.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
boot là một thể hiện đầu tiên trong Windows 2000 tạo nên sự khác biệt rõ rệt nhất
giữa các partition primary và extended. Hệ thống phải tạo một partition primary
trên đĩa primary là active. Trong qúa trình boot đoạn mã của Windows 2000 trong
MBR sẽ nạp đoạn mã được lưu trữ tại sector đầu tiên trong partition active (system
volume) vào bộ nhớ và trao quyền điều khiển cho đoạn mã này. Windows 2000 chỉ
định sector đầu tiên của bất kỳ partition nào đều là boot sector. Như đã biết ở trước,
trong Windows 2000 mọi partition được định dạng với một hệ thống file thì nó có
một boot sector, là nơi lưu trữ thông tin về cấu trúc của hệ thống file trên partition
đó.
 Dynamic Partitioning: Các đĩa động được định dạng trong Windows 2000
và là cần thiết đề tạo mới các volume multipartition. Hệ thống con Logical
Disk Manager (LDM) trong Windows 2000 bao gồm các thành phần trong
user mode và device driver giám sát các đĩa động. Cơ sở dữ liệu LDM thường
trú trong không gian dành riêng 1MB tại cuối mỗi dynamic disk.



Hình 4.17.a: Tổ chức bên trong của dynamic disk

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

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


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status