Tải bản đầy đủ (.doc) (23 trang)

Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM PC

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 (377.34 KB, 23 trang )

Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC

mục lục
Phần I:

I. Giới thiệu chung...............................................................................................................2
1 .Công việc quản lý bộ nhớ................................................................................................2
2 .Quản lý bộ nhớ ở chế độ bảo vệ......................................................................................2
II. Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC.................3
1.Không gian địa chỉ vật lý.................................................................................................3
2.Các địa chỉ logic và tuyến tính.........................................................................................4
3.Các thanh ghi điều khiển..................................................................................................5
4.Việc phân trang................................................................................................................5
5.Các tuỳ chọn phân trang...................................................................................................6
6.Các bảng trang và các th mục trang...............................................................................6
6.1 Chuyển đổi địa chỉ tuyến tính (các trang 4-Kbyte)............................................7
6.2 Chuyển đổi địa chỉ tuyến tính(các trang 4-MByte)...........................................8
6.3 Kết hợp các trang 4-Kbyte và 4-MByte.............................................................9
7.Địa chỉ cơ sở của một th mục trang................................................................................9
8.Các điểm vào th mục trang và các điểm vào bảng trang................................................9
9.Những điểm vào th mục trang và bảng trang không có mặt........................................13
10. Bộ đệm dùng để chuyển đổi địa chỉ ...........................................................................13
11.Sự mở rộng địa chỉ vật lý.............................................................................................14
11.1 Chuyển đổi địa chỉ tuyến tính với việc đánh địa chỉ mở rộng đợc kích
hoạt(với các trang 4-Kbyte)...................................................................................15
11.2 Chuyển đổi địa chỉ tuyến tính với việc đánh địa chỉ mở rộng đợc kích
hoạt(với các trang 2-Mbyte hoặc 4-Mbyte)...........................................................16
11.3 Truy nhập vào toàn bộ không gian địa chỉ vật lý mở rộng với cấu trúc bảng
trang mở rộng.........................................................................................................17
11.4 Các điểm vào th mục trang và bảng trang với chế độ đánh trang mở rộng đợc
kích hoạt........................................................................................................17


12.Sự mở rộng kích thớc trang 36-bit..............................................................................19
12.1 Sự miêu tả của đặc tính mở rộng kích thớc trang 36-bit..............................19
12.2 Phát hiện lỗi...................................................................................................22
13.Anh xạ các đoạn sang các trang..................................................................................22

Phần II:
Chơng trình minh hoạ.
Phần III:
Tài liệu tham khảo.

I.Giới thiệu chung:

phần i: nội dung lý thuyết

1.Công việc quản lý bộ nhớ

Bộ nhớ là tài nguyên mà không có nó thì không thể thực hiện chơng trình . Trên
thực tế ở mỗi thời điểm hầu hết bộ nhớ không tham gia vào việc thực hiện chơng trình mà
chỉ đóng vai trò lu giữ thông tin để xử lý sau này. Tuy vậy vai trò của các bytes tích cực là
vô cùng to lớn. Nếu hạn chế dung lợng bộ nhớ trong thì không thể tăng tốc độ thực hiện
của bất kỳ chơng trình nào cũng nh không thể đơn giản hóa cấu trúc của chơng trình đó.
Các chơng trình chờ đợi phân phối bộ nhớ trong đợc lu trữ ở bộ nhớ ngoài. Tồn tại nhiều
phơng pháp cho phép sử dụng bộ nhớ ngoài nh là sự mở rộng của bộ nhớ trong, tạo cảm
giác có một bộ nhớ trong với dung lợng lớn hơn nhiều bộ nhớ trong hiện có. Sự tồn tại tài

1


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC
nguyên ảo này đã làm cho công tác lập trình trở nên dễ dàng, đơn giản vì ngời sử dụng

không phải lo lắng tính toán khối lợng sử dụng. Tuy tốc độ thực hiện có phần nào giảm
sút nhng hiệu quả chung là hết sức lớn và đáp ứng nhu cầu của ngời sử dụng. Một phần
của bộ nhớ trong phải đợc dùng để lu trữ nhân của hệ thống. Đó là tập hợp các chơng
trình điều khiển phải thờng xuyên có mặt ở bộ nhớ trong để có thể thực hiện ngay lập tức
khi cần thiết.
Một chức năng quan trọng của hệ điều hành là bảo vệ chơng trình và dữ liệu khỏi
bị h hỏng, bị truy nhập một cách không hợp thức khi các chơng trình khác hoạt động.
Trong phần này ta luôn giả thiết rằng các chơng trình điều khiển của hệ điều hành làm
việc hợp lý và không ảnh hởng đến chơng trình và dữ liệu của ngời sử dụng. Trên thực tế
cũng có tồn tại những sai sót trong hệ điều hành khi gặp các tổ hợp đặc biệt hiếm có của
chơng trình và dữ liệu. Nhng những sai sót loại này thờng đợc ghi nhận kịp thời và đợc
khắc phục ở các phiên bản cải tiến của hệ điều hành.
Đối với các máy IBM-PC thì phơng pháp tổ chức và quản lý bộ nhớ đợc thực hiện
nh sau:
PC XT chỉ thực hiện một chế độ quản lý gọi là chế độ thực ( real mode) . Không
gian và bộ nhớ vật lý và không gian bộ nhớ logic là trùng nhau.
PC AT 286 thực hiện đợc cả hai chế độ quản lý bộ nhớ là chế độ thực (real mode)
và chế độ bảo vệ (protect mode). Cách quản lý ở chế độ bảo vệ là theo kiểu phân đoạn.
PC AT 386 có hai chế độ quản lý bộ nhớ là chế độ thực (real mode) và chế độ bảo
vệ(protect mode). Ơ chế độ bảo vệ, cách quản lý đợc thực hiện theo hai kiểu phân đoạn và
phân trang. Trong các phần sau ta xét cách tổ chức của các hệ thống từ PC AT 386 trở
lên.

2. Quản lý bộ nhớ ở chế độ bảo vệ

Các kiến trúc của Intel từ 80386 trở lên cung cấp hai cơ chế phân đoạn và phân
trang. Trong cơ chế phân đoạn , chơng trình của ngời sử dụng đợc biên tập riêng từng
môdul độc lập. Kết quả tập hợp chơng trình là một bảng điều khiển cho biết chơng trình
có thể sử dụng những modul nào, độ dài mỗi môdul là bao nhiêu. Bảng điều khiển này
còn gọi là bảng quản lý đoạn và ký hiệu là SCB(segment control block). SCB còn chứa

các thông tin trợ giúp định vị chơng trình . ở mỗi giai đoạn thực hiện, hệ thống sẽ dựa vào
SCB để nạp các modul cần thiết vào trong bộ nhớ. Trong cấu trúc này, chừng nào còn chỗ
thì hệ thống còn nạp tiếp các modul mới. Gặp trờng hợp thiếu bộ nhớ, thì cơ chế phân
đoạn cần phải đợc bố trí lại bộ nhớ. Đa bớt ra ngoài một số môdul có khả năng không còn
sử dụng lại nữa.Nh vậy cấu trúc này không đòi hỏi ngời sử dụng phải khai báo thêm bất
kỳ một thông tin phụ nào, mọi công việc đều do hệ thống đảm nhiệm và khi dung lợng bộ
nhớ tự do tăng thì nói chung tốc độ thực hiện chơng trình cũng tăng theo. Nhợc điểm của
cấu trúc này là hiệu quả sử dụng bộ nhớ phụ thuộc nhiều vào cách phân chia chơng trình
thành các modul độc lập. Cũng nh cấu trúc Overlay, chỉ cần tồn tại vài modul độ dài lớn
là hiệu qủa sử dụng bộ nhớ sẽ giảm một cách đáng kể. Cấu trúc này chỉ áp dụng đ ợc khi
bộ nhớ đợc quản lý theo kiểu phân đoạn.
Trong cấu trúc phân trang, chơng trình đợc tập hợp nh trong trờng hợp có cấu trúc
tuyến tính , nhng sau đó đợc chính chơng trình biên tập chia thành từng phần có độ dài
bằng nhau gọi là trang. Sản phẩm biên tập là một bảng quản lý trang (PCB-page control
block), mỗi phần tử của bảng ứng với một trang của chơng trình ngời sử dụng. Khi thực
hiện, supervisor quản lý trang sẽ theo dõi , đảm bảo đa trang cần thiết vào bộ nhớ trong.
Cấu trúc phân trang nói chung chỉ phát huy đợc hiệu qủ khi bộ nhớ đợc quản lý theo các
chiến lợc phân trang . Trong thực tế , chiến lợc phân trang thờng đợc áp dụng với từng
modul chơng trình và với phơng pháp quản lý dữ liệu kiểu phân trang.
Dới đây là hình 1 minh hoạ cơ chế phân đoạn và phân trang trong bộ nhớ.

2


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC

trang.

Hình 1: Phân đoạn và phân trang.
Trong phần kế tiếp chúng ta sẽ tìm hiểu cấu trúc phục vụ cho việc quản lý phân


II.Cấu trúc dữ liệu phục vụ việc quản lý bộ nhớ phân trang trong IBM-PC
1. Không gian địa chỉ vật lý

Trong chế độ bảo vệ, kiến trúc Intel cung cấp một không gian địa chỉ vật lý bình
thờng 4GByte(232 bytes). Đây là không gian địa chỉ mà bộ xử lý có thể đánh địa chỉ lên
các bit địa chỉ của nó. Không gian địa chỉ này là bằng phẳng( không bị phân đoạn), với
các điạ chỉ sắp xếp liên tiếp từ 0 đến FFFFFFFH. Không gian địa chỉ vật lý này có thể đợc ánh xạ đến bộ nhớ đọc-viết, bộ nhớ chỉ đọc, và bộ nhớ ánh xạ vào/ra. Những điều kiện
dễ dàng ánh xạ bộ nhớ này có thể đợc sử dụng để chia bộ nhớ vật lý này thành các đoạn
hoặc các trang.
Trong bộ xử lý Pentium Pro, kiến trúc Intel cũng hỗ trợ việc mở rộng không
gian địa chỉ vật lý đến 236 bytes(64 GBytes), với một địa chỉ vật lý tối đa là FFFFFFFH.
Sự mở rộng này đợc yêu cầu bởi cờ mở rộng địa chỉ vật lý( PAE), định vị trong bit 5 của
thanh ghi điều khiển CR4.

2 .Các địa chỉ logic và tuyến tính.

Tại mức kiến trúc hệ thống trong chế độ bảo vệ , bộ xử lý sử dụng hai giai đoạn
của việc chuyển đổi điạ chỉ để đến đợc một địa chỉ vật lý : chuyển đổi địa chỉ vật lý và
phân trang không gian địa chỉ tuyến tính.
Thậm chí với việc sử dụng tối thiểu các đoạn, mọi byte trong không gian địa chỉ
của bộ xử lý đợc truy nhập bởi một địa chỉ logic. Một địa chỉ logic bao gồm bộ chọn đoạn
16-bit và một khoảng trống (offset) 32-bit(hình 2). Bộ chọn đoạn xác định đoạn mà byte
đó đợc định vị vào và khoảng trống xác định rõ vị trí của byte đó trong đoạn đó quan hệ
với địa chỉ cơ sở của đoạn đó.
Bộ xử lý chuyển đổi mọi địa chỉ logic vào một địa chỉ tuyến tính. Một địa chỉ
tuyến tính là một địa chỉ 32-bit trong không gian địa chỉ tuyến tính của bộ xử lý. Giống
nh không gian địa chỉ vật lý , không gian địa chỉ tuyến tính là bằng phẳng(không phân
đoạn), một không gian địa chỉ 2 32 byte, với các địa chỉ nằm từ 0 đến FFFFFFFH. Không
gian địa chỉ tuyến tính chứa tất cả các đoạn và các bảng hệ thống xác định cho hệ thống.


3


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC
Để chuyển đổi một địa chỉ logic sang một địa chỉ tuyến tính, bộ xử lý làm các
công việc sau:
Sử dụng khoảng trống(offset) trong bộ chọn đoạn để định vị phần tử miêu tả đoạn
cho đoạn đó vào bảng các bộ mô tả toàn cục GDT(Global Descriptor Table) hoặc
bảng các bộ mô tả cục bộ LDT(Local Descriptor Table ) và đọc nó vào trong bộ
xử lý. (Bớc này chỉ cần khi một bộ chọn đoạn mới đợc nạp vào trong thanh ghi
đoạn.)
Kiểm bộ miêu tả đoạn để xem các quyền truy nhập và vùng bộ nhớ của đoạn đó
để chắc chắn rằng đoạn đó có thể truy nhập đợc và khoảng trống đó nằm trong
các giới hạn của đoạn.
Cộng địa chỉ cơ sở(đầu tiên) cảu đoạn từ bộ miêu tả đoạn đến địa chỉ tơng đối
(offset) rồi đến một cấu trúc địa chỉ tuyến tính.

Hình 2: Sự chuyển đổi địa chỉ logic sang địa chỉ tuyến tính.
Nếu việc phân trang không đợc sử dụng, bộ xử lý ánh xạ trực tiếp địa chỉ tuyến
tính đến một địa chỉ vật lý (có nghĩa là địa chỉ tuyến tính đó ra ngoài bus địa chỉ của bộ
xử lý.).Nếu không gian địa chỉ tuyến tính đợc phân trang, mức thứ hai của việc chuyển
đổi địa chỉ đợc sử dụng để chuyển đổi địa chỉ tuyến tính vào một địa chỉ vật lý.

3.Các thanh ghi điều khiển.

Các thanh ghi điều khiển xác chế độ hoạt động của bộ xử lý và các đặc tính của
các nhiệm vụ đang thực hiện .

4



Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC

1.
2.
3.
4.

5.

Hình 3: Các thanh ghi điều khiển.
Các thanh ghi điều khiển gồm có :
CR0 : chứa các cờ điều khiển hệ thống để điều khiển chế độ hoạt động và trạng
thái của bộ xử lý.
CR1 : đợc đặt trớc.
CR2 : chứa các địa chỉ tuyến tính của trang lỗi.
CR3: chứa địa chỉ vật lý đầu tiên của th mục trang. Chỉ có 20 bit nhiều ý nghĩa
nhất của thanh ghi này của địa chỉ đầu tiên của th mục trang đợc xác định rõ, còn
12 bit thấp nhất của CR3 luôn bằng 0 để đảm bảo rằng th mục trang đó có địa chỉ
bắt đầu cách nhau một trang, nói cách khác các th mục trang đợc xếp hàng theo
trang (4-Kbyte).
CR4: Chứa một nhóm cờ kích hoạt vài sự mở rộng cấu trúc cũng nh chỉ ra mức u
tiên của hệ điều hành hỗ trợ cho Streaming SIMD Extensions.

4.Việc phân trang(paging)

Khi chạy ở chế độ bảo vệ, các kiến trúc Intel cho phép không gian địa chỉ tuyến
tính( không gian bộ nhớ có thể đánh địa chỉ đợc) ánh xạ trực tiếp vào một bộ nhớ vật lý
lớn(ví dụ bộ nhớ RAM 4Gbytes) hay ánh xạ gián tiếp(sử dụng cơ chế phân trang) vào một

bộ nhớ vật lý nhỏ hơn và vào đĩa lu trữ. Phơng pháp sau cùng này của việc ánh xạ không
gian địa chỉ tuyến tính đợc tham chiếu chung nh là bộ nhớ ảo hay bộ nhớ ảo phân trang
yêu cầu.
Khi cơ chế phân trang đợc sử dụng, bộ xử lý chia không gian điạ chỉ tuyến tính
thành những trang có kích thớc cố định ,thờng có độ dài 4Kbytes. Những trang này có thể
đợc ánh xạ vào trong bộ nhớ vật lý hay đĩa lu trữ. Khi một chơng trình(hay một nhiệm vụ)
tham chiếu đến một địa chỉ logic trong bộ nhớ, bộ xử lý chuyển đổi địa chỉ đó sang một
địa chỉ tuyến tính và sau đó sử dụng cơ chế phân trang của nó để chuyển đổi địa chỉ tuyến
tính này sang địa chỉ vật lý tơng ứng. Nếu trang đó có chứa địa chỉ tuyến tính đó không có
mặt hiện thời trong bộ nhớ vật lý, bộ xử lý sinh ra một ngoại lệ thông báo trang ch a có
trong bộ nhớ(#PF). Trình xử lý ngoại lệ này cho thông báo trang cha có trong bộ nhớ sẽ
chỉ dẫn cho hệ điều hành hay trình thực hiện để nạp trang đó từ đĩa lu trữ vào trong bộ

5


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC
nhớ vật lý. Khi một trang đợc nạp vào trong bộ nhớ vật lý , một tín hiệu đáp lại từ trình
quản lý ngoại lệ gây ra một lệnh để sinh ra một ngoại lệ đợc bắt đầu . Thông tin mà bộ xử
lý sử dụng để ánh xạ địa chỉ tuyến tính vào trong không gian địa chỉ vật lý và sinh ra
những thông báo trang cha có trong bộ nhớ(khi cân thiết) đợc chứa trong các th mục trang
và bảng trang trong bộ nhớ.
Phân trang khác so với phân đoạn bởi vì nó chỉ sử dụng các trang có kích thớc cố
định. Không giống với các đoạn có cùng kích thớc với mã hay cấu trúc dữ liệu mà chúng
chứa, các trang có kích thớc có định. Nếu việc phân đoạn chỉ là một dạng của việc chuyển
đổi địa chỉ sử dụng, một cấu trúc dữ liệu nằm trong bộ nhớ vật lý sẽ có tất cả các phần của
nó trong bộ nhớ. Nếu phân trang đợc sử dụng , một cấu trúc dữ liệu có thể nằm một phần
trong bộ nhớ và một phần trong đĩa lu trữ.
Để tối thiểu hoá số lợng các chu kỳ bus đòi hỏi cho việc chuyển đổi địa chỉ , th
mục trang đợc truy nhập gần đây nhất và các điểm vào bảng trang đa lu giữ kín trong bộ

xử lý (trong bộ đệm dùng để chuyển hoá địa chỉ). Bộ đệm này đáp ứng hầu hết các nhu
cầu cho việc đọc th mục trang hiện thời và các bảng trang mà không cần đòi hỏi một chu
kỳ bus. Các chu kỳ bus phụ chỉ xuất hiện khi bộ đệm không chứa điểm vào bảng
trang,điều này sẩy ra khi một trang không đợc truy nhập trong một thời gian dài .

5.Các tuỳ chọn phân trang.

Việc phân trang đợc điều khiển bởi ba cờ trong trong các thanh ghi điều khiển
của bộ xử lý:
Cờ PG(paging) , bit 31 của thanh ghi CR0
Cờ PSE(page size extensions), bit 4 của thanh ghi CR4
Cờ PAE(physical address extension) bit 5 của thanh ghi CR4
Cờ PG kích hoạt cơ chế chuyển đổi trang. Hệ điều hành hay trình thực hiện thờng
thiết lập cờ này trong khi khởi tạo bộ xửlý. Cờ PG cần đợc thiết lập nếu cơ chế chuyển đổi
trang của bộ xử lý đợc dùng để cung cấp hệ thống bộ nhớ ảo đợc yêu cầu đánh trang hay
nếu hệ điều hành đó đợc thiết kế để chạy nhiều hơn một chơng trình (hay nhiệm vụ) trong
chế độ 8086 ảo.
Cờ PSE kích hoạt các kích thớc trang lớn : các trang 4Mb hoặc 2Mb (khi cờ PAE
đợc thiết lập). Khi cờ PSE bị xoá, độ dài trang chung là 4Kbytes đợc sử dụng.
Cờ PAE kích hoạt các địa chỉ vật lý 36-bit. Sự mở rộng địa chỉ vật lý này chỉ có
thể đợc sử dụng khi việc phân trang đợc kích hoạt. Nó dựa vào các th mục trang và các
bảng trang để tham chiếu các địa chỉ vật lý trên FFFFFFFH.

6.Các bảng trang và các th mục trang

Thông tin mà bộ xử lý sử dụng để chuyển đổi các địa chỉ tuyến tính trong các địa
chỉ vật lý (khi chế độ phân trang đợc kích hoạt) đợc chứa trong 4 cấu trúc dữ liệu sau :
Th mục trang(page directory) : Một mảng các điểm vào th mục trang 32-bit(PDEpage directory entry) chứa trong một trang 4Kbytes. Đạt đến 1024 điểm vào th
mục trang nằm trong th mục trang.
Bảng trang(page table) : một mảng các điểm vào bảng trang 32-bit(PTE page

table entry) đợc chứa trong một trang 4Kbytes. Một bảng trang chứa 1024 điểm
vào bảng trang .(Bảng trang không đợc sử dụng cho các trang 4Mb hoặc 2Mb.
Những kích thớc trang này đợc ánh xạ trực tiếp từ một hay nhiều các điểm vào th
mục trang.)
Trang(page): Không gian địa chỉ 4Kbyte, 2Mbyte,4Mbyte.
Bảng con trỏ th mục trang( Page directory pointer table): Mảng của bốn điểm vào
64-bit,mỗi điểm vào chỉ đến một th mục trang. Cấu trúc dữ liệu này chỉ đợc sử
dụng khi sự mở rộng địa chỉ vật lý đợc kích hoạt.
Những bảng này cung cấp sự truy nhập đến cả các trang 4Kbyte hay các trang 4Mbyte khi
việc đánh địa chỉ vật lý 32-bit thông thờng đợc sử dụng và đến cả các trang 4KByte ,
2Mbyte, 4Mbyte khi việc đánh điạ chỉ mở rộng đợc sử dụng.Bảng sau sẽ minh hoạ các
kích thớc trang và kích thớc địa chỉ vật lý đạt đợc từ các thiết lập khác nhau của các cờ
điều khiển phân trang. Mỗi điểm vào th mục trang chứa một cờ kích thớc PS(page size) ,
cờ này sẽ xác định rõ liệu điểm vào đó có chỉ đến một bảng trang mà các điểm vào của nó
lần lợt chỉ đến các trang 4Kbyte( PS thiết lập giá trị 0) hay liệu điểm vào th mục trang đó
có chỉ trực tiếp đến trang 4Mbyte hay 2Mbyte(PSE hay PAE đợc thiết lập lên 1 và PSE
thiết lập lên 1).

6


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC

Bảng 1: Kích thớc trang và kích thớc địa chỉ vật lý.

6.1.Chuyển đổi địa chỉ tuyến tính(Các trang 4-Kbyte)

Hình 4 miêu tả một th mục trang và hệ thống đẳng cấp bảng trang khi ánh xạ
các địa chỉ tuyến tính đến các trang 4K-byte. Các điểm vào trong th mục trang này chỉ
đến các bảng trang, và các điểm vào trong một bảng trang chỉ đến các trang trong bộ nhớ

vật lý. Phơng pháp phân trang này có thể đợc sử dụng để đánh địa chỉ lên tới 220 trang, phơng pháp này mở ra một không gian địa chỉ tuyến tính 232 bytes (4 GbBytes).
Để chọn những điểm vào bảng khác nhau này, một địa chỉ tuyến tính đợc chia
thành ba vùng:
Điểm vào th mục trang (Page-directory entry): Từ bits 22 đến bit 31 cung cấp một
khoảng trắng để chứa một điểm vào trong th mục trang đó . Điểm vào đợc lựa
chọn địa chỉ vật lý cơ sở của một bảng trang.
Điểm vào bảng trang (Page-table entry): Từ bit 12 đến bit 21 của địa chỉ tuyến
tính cung cấp một khoảng trống cho một điểm vào trong bảng trang đợc lựa chọn
đó . Điểm vào này cung cấp địa chỉ vật lý cơ sở của một trang trong bộ nhớ vật lý.
Địa chỉ tơng đối trong trang(Page offset) Từ bit 0 đến bit 11 cung cấp một khoảng
trống cho một địa chỉ vật lý trong trang đó .
Phần mềm quản lý bộ nhớ có một tuỳ chọn trong việc sử dụng một th mục trang
cho tất cả các chơng trình và các nhiệm vụ, một th mục trang cho mỗi nhiệm
vụ,hay một cặp th mục trang nào đó .

Hình 4: Chuyển đổi địa chỉ tuyến tính (Các trang 4-Kbyte)

6.2 Chuyển đổi địa chỉ tuyến tính ( Các trang 4-Mbyte)

7


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC
Hình 5 chỉ ra cách mà một th mục trang có thể đợc sử dụng để ánh xạ đến các địa
chỉ tuyến tính đến các trang 4 M-byte. Các điểm vào trong th mục trang đó chỉ đến các
trang 4-Mbyte trong bộ nhớ vật lý. Phơng pháp phân trang này có thể đợc sử dụng để ánh
xạ lên đến 1024 trang vào trong một không gian địa chỉ tuyến tính 4-Gbyte. Kích th ớc
trang 4-Mbyte đó đợc chọn bởi sự thiết lập cờ PSE trong thanh ghi điều khiển CR4 và
thiết lập cờ kích thớc trang (PS) trong một điểm vào th mục trang. Với các cờ này, một địa
chỉ tuyến tính đợc chia thành hai phần:

Điểm vào th mục trang (page directory entry): Từ bit 22 đến bit 31 , cung cấp một
vùng trống cho một điểm vào trong th mục trang đó . Điểm vào đợc chọn đó cung
cấp địa chỉ vật lý đầu tiên của một trang 4-Mbyte.
Địa chỉ tơng đối trong trang (page offset) :Từ bit 0 đến bit 21, cung cấp một vùng
trống cho một địa chỉ vật lý trong trang đó.

Hình 5: Chuyển đổi địa chỉ tuyến tính với trang 4-Mbyte

6.3 Kết hợp các trang 4-Kbyte và 4-Mbyte

Khi cờ PSE trong CR4 đợc thiết lập lên 1, cả các trang 4-Mbyte và các bảng trang
cho các trang 4-Kbyte có thể đợc truy nhập từ cùng một th mục trang. Nếu cờ PSE bị xoá
, chỉ có các bảng trang cho các trang 4-Kbyte có thể đợc truy nhập (bất chấp sự thiết lập
của cờ PS trong một điểm vào th mục trang).
Một ví dụ tiêu biểu cho việc kết hợp các trang 4-Kbyte và 4-Mbyte là đặt hệ điều
hành hay trình thực hiện của nhân vào một trang lớn để làm giảm các thiếu sót của
TLB( bộ đệm dùng để chuyển hóa địa chỉ) và do đó cải thiện hiệu năng của toàn bộ hệ
thống.Bộ xử lý giữ cho khỏi gián đoạn các điểm vào trang 4-Mbyte và các điểm vào trang
4-KByte trong các bộ đệm TLB riêng rẽ. Vì thế, việc đặt thờng xuyên mã sử dụng nh là
nhân trong một trang lớn , làm trống các điểm vào TLB của các trang 4-KByte cho các
chơng trình ứng dụng và các nhiệm vụ.

7.Địa chỉ cơ sở của một th mục trang

Một địa chỉ vật lý của th mục trang hiện thời đợc chứa trong thanh ghi CR3(Cũng
đợc gọi là thanh ghi cơ sở th mục trang PDBR, the page directory base register ). Nếu
việc phân trang đợc sử dụng, thì thanh ghi CR3 cần đợc nạp nh là một phần của tiến trình
khởi tạo của bộ xử lý (trớc khi việc phân trang đợc kích hoạt). Thanh ghi CR3 sau đó có
thể đợc thay đổi hoặc một cách rõ ràng bởi vịêc nạp vào một giá trị mới với lệnh MOV
hoặc một cách hoàn toàn nh là một phần của một cơ chế chuyển đổi nhiệm vụ.

Không có cờ hiện thời trong thanh ghi này cho một th mục trang. Th mục trang đó
có thể không nằm hiện thời (đợc đánh trang ngoài bộ nhớ vật lý) trong khi nhiệm vụ liên
kết của nó đợc treo, nhng hệ điều hành cần phải chắc chắn rằng th mục trang đó đợc chỉ
ra bởi ảnh của thanh ghi này trong một đoạn trạng thái nhiệm vụ (Task-State SegmentTSS) của nhiệm vụ đợc thể hiện trong bộ nhớ vật lý trớc khi nhiệmvụ đó đợc kết thúc. Th
mục trang này cũng nằm lại trong bộ nhớ cho đến khi nhiệm vụ đó hoạt động.

8


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC

8.Các điểm vào th mục trang và các điểm vào bảng trang

Hình 6 miêu tả khuôn dạng của các điểm vào một th mục trang và bảng trang khi
những trang 4-KByte và các địa chỉ vật lý 32-bit đang đợc sử dụng.

Hình 6: Khuôn dạng của các điểm vào th mục trang và bảng trang cho các trang 4-KByte
và các địa chỉ vật lý 32-bit
Tiếp theo , hình 7 miêu tả khuôn dạng của các điểm vào th mục khi các trang 4MByte và các địa chỉ vật lý 32-bit đang đợc sử dụng.

Hình 7: Khuôn dạng của các điểm vào th mục trang cho các trang 4-MByte và các địa chỉ
vật lý 32-bit.
Chức năng của các cờ và các trờng trong các điểm vào trên hai hình 6 và 7 nh sau:
Vùng địa chỉ cơ sở của trang(Page base address): Từ bit 12 đến bit 31

9


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC
(Các điểm vào bảng trang cho các trang 4-KByte). Vùng này xác định rõ

địa chỉ vật lý của byte đầu tiên của một trang 4-KByte. Những bit trong trờng này đợc biểu diễn là 20 bits nhiều ý nghĩa nhất của một địa chỉ vật lý,
chúng bắt buộc các trang phải đợc canh lề vào trong các ranh giới 4KByte.
(Các điểm vào th mục trang cho các bảng trang 4-KByte.) Vùng này xác
định rõ địa chỉ vật lý của bit đầu tiên của một bảng trang. Những bit trong
trờng này đợc biểu diễn là 20 bits nhiều ý nghĩa nhất của một địa chỉ vật lý
, chúng bắt buộc các trang phải đợc canh lề vào trong các ranh giới 4KByte.
(Các điểm vào th mục trang cho các trang 4-MByte.) Vùng này xác định rõ
địa chỉ vật lý của byte đầu tiên của một trang 4-MByte. Chỉ những bit từ 22
đến 31 trong trờng này đợc sử dụng (và các bit từ 12 đến 21 đợc đặt trớc và
phải đợc thiết lập về 0 cho các bộ xử lý Intel từ bộ xử lý Pentium II).
Những bit địa chỉ cơ sở đợc biểu diễn là 10 bits nhiều ý nghĩa nhất của của
địa chỉ vật lý đó, chúng bắt buộc các trang 4-MByte đợc căn lề trong các
ranh giới 4-MByte.
Cờ P (present flag) : bit 0
Bit này chỉ ra rằng liệu một trang hay một bảng trang đang đợc chỉ đến
bởi một điểm vào có đợc nạp vào hiện thời trong bộ nhớ vật lý. Khi cờ này
đợc thiết lập lên 1, trang đó nằm trong bộ nhớ vật lý và việc chuyển đổi địa
chỉ đợc thực hiện . Khi cờ này bị xóa, trang đó không có trong bộ nhớ và
nếu bộ xử lý cố gắng để truy nhập vào trang này, nó sẽ sinh ra một thông
báo trang cha có trong bộ nhớ ( a page-fault exception - #PF).
Bộ xử lý không thiết lập hay xoá cờ này , mà hệ điều hành hay trình thực
hiện có tránh nhiệm giữ cho khỏi gián đoạn trạng thái của cờ này.
Bit này cần đợc thiết lập lên 1 bất cứ khi nào chế độ đánh điạ chỉ vật lý
mở rộng đợc kích hoạt.
Nếu bộ xử lý sinh ra một thông báo trang cha có trong bộ nhớ, thì hệ điều
hành cần phải thực hiện các thao táctheo trình tự sau:
1. Sao chép trang đó từ đĩa lu trữ vào trong bộ nhớ vật lý nếu cần.
2. Nạp địa chỉ trang vào một điểm vào bảng trang hay th mục trang và
thiết lập cờ P của nó. Những bit khác nh là bit D hay bit A cũng có
thể thiết lập lúc này.

3. Làm mất hiệu lực điểm vào bảng trang hiện tại trong bộ đệm TLB .
4. Trả lại từ trình xử lý trang không có mặt trong bộ nhớ đến khởi
động lại chơng trình bị ngắt hay nhiệm vụ bị ngắt.
Cờ R/W (Read/Write flag): bit 1
Chỉ rõ đặc quyền đọc/ghi của một trang hay một nhóm trang( trong trờng
hợp của một điểm vào th mục trang nó trỏ đến một bảng trang.).Khi cờ này
bị xoá, trang này chỉ đợc đọc (read-only).Khi cờ này đợc thiết lập lên 1 thì
trang đó có thể đợc đọc và ghi lên. Cờ này tác động lẫn nhau với cờ U/S và
cờ WP trong thanh ghi CR0.
Cờ U/S (User/Supervisor flag) : bit 2
Chỉ rõ đặc quyền của ngời sử dụng hay ngời quản trị hệthống cho một
trang hay một nhóm trang(trong trờng hợp của một điểm th mục trang nó
trỏ đến một bảng trang.). Khi cờ này bị xoá, trang đó đợc chỉ đến mức đặc
quyền của ngời quản trị hệ thống.Khi cờ này đợc thiết lập, trang đó đợc chỉ
đến mức đặc quyền của ngời sử dụng. Cờ này tác động lẫn nhau với các cờ
R/W và cờ WP trong thanh ghi CR0.
Cờ PWT (Page-level write-through flag): bit3

10


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC














Điều khiển chính sách giấu ghi thẳng (write-through) hay giấu ghi lại
(write-back) của mỗi trang hay mỗi bảng trang. Khi cờ này đợc thiết lập,
cache ghi thẳng đợc kích hoạt cho trang liên kết hay bảng trang. Bộ xử lý
bỏ qua cờ này nếu cờ CD(cache disable) trong CR0 đợc thiết lập.
Cờ PCD( Page-level cache disable flag) : bit 4
Điều khiển việc giấu của mỗi trang hay bảng trang. Khi cờ PCD đợc thiết
lập, việc giấu của các trang liên kết hay các bảng trang đợc ngăn chặn , khi
cờ này bị xoá thì trang hay bảng trang đó có thể đợc giấu. Cờ này cho phép
việc giấu bị mất hiệu lực cho những trang mà chứa cổng vào ra của bộ
nhớ đợc ánh xạ hay những trang này không cung cấp một sự tăng hiệu
năng khi giấu. Bộ xử lý bỏ qua cờ này nếu cờ CD trong CR0 đợc thiết lập.
Cờ A (Accessed flag): bit 5
Chỉ ra rằng liệu một trang hay một bảng trang đã đợc truy nhập khi cờ này
đợc thiết lập. Phần mềm quản lý bộ nhớ xoá cờ này khi một trang hay một
bảng trang đợc nạp lần đầu tiên vào trong bộ nhớ vật lý. Bộ xử lý sau đó
thiết lập cờ này lần đầu tiên khi trang hay bảng trang đợc truy nhập. Bộ xử
lý không xoá đợc hoàn toàn bit này chỉ có phần mềm làm đợc.
Cờ D (Dirty flag) : bit 6
Cờ này chỉ ra rằng liệu một trang vừa đợc ghi khi cờ này đợc thiết lập. Cờ
này không đợc dùng trong các điểm vào th mục trang chỉ đến những bảng
trang. Phần mềm quản lý bộ nhớ xoá cờ này khi một trang đợc nạp lần
đầu tiên vào trong bộ nhớ vật lý. Bộ xử lý sau đó thiết lập cờ này cho lần
đầu tiên khi một trang đợc truy bởi thao tác ghi. Bộ xử lý không xoá đợc
một cách hoàn toàn bit này. Chỉ có phần mềm mới xoá đợc nó. Bit Avà bit
D đợc cung cấp cho việc sử dụng bởi phần mềm quản lý bộ nhớ để quản lý

việc chuyển đổi của các trang và các bảng trang vào hay ra ngoài bộ nhớ
vật lý.
Cờ PS (Page size flag): bit 7
Cờ này xác định kích thớc trang. Cờ này chỉ đợc sử dụng trong các điểm
vào th mục trang. Khi cờ này bị xoá, kích thớc trang là 4-KByte và điểm
vào th mục trang chỉ đến một bảng trang. Khi cờ này đợc thiết lập, kích
thớc trang là 4-MByte cho việc đánh địa chỉ 32-bit (và 2MByte nếu việc
đánh địa chỉ vật lý mở rộng đợc kích hoạt.) và điểm vào th mục trang trỏ
đến một trang. Nếu điểm vào th mục trang trỏ đến một bảng trang, thì tất
cả các trang liên kết với bảng trang đó sẽ là những trang 4-Kbyte.
Cờ G (Global flag) : bit 8
Chỉ ra một trang chung khi cờ này đợc thiết lập. Khi một trang đợc đánh
dấu là chung và cờ kích hoạt trang chung (Page global enable flag) trong
thanh ghi CR4 đợc thiết lập, điểm vào bảng trang hay th mục trang cho
trang đó không bị làm mất hiệu lực trong TLB khi thanh ghi CR3 đợc nạp
hay khi một sự chuyển đổi nhiệm vụ xuất hiện. Cờ này đợc cung cấp để
ngăn chặn những trang sử dụng thờng xuyên(nh là những trang chứa nhân
hay hệ điều hành khác hay mã chạy đợc) đợc đa ra khỏi TLB. Chỉ phần
mềm mới có thể thiết lập hay xoá cờ này. Với các điểm vào th mục trang
chỉ đến các bảng trang, cờ này đợc bỏ qua và những đặc tính chung của
một trang đợc thiết lập trong các điểm vào bảng trang.
Những bit đợc đặt trớc và cung cấp cho phần mềm
Trong một điểm vào bảng trang, bit 7 đợc đặt trớc và thờng đợc xoá về 0;
trong một điểm vào th mục trang trỏ đến một bảng trang, bit 6 đợc đặt trớc
và cần xoá về 0. Với một điểm vào th mục trang cho một trang 4-MByte,
từ bit 12 đến bit 21 đợc đặt trớc và xoá về 0 với các bộ xử lý của Intel đến
Pentium II. Với cả hai loại điểm vào bit 9,10, 11 đợc cung cấp cho phần
mềm. Khi bit P bị xoá, từ bit 1 đến bit 31 đợc cung cấp cho phần mềm. Khi
cờ PSE và PAE trong thanh ghi điều khiển CR4 đợc thiết lập , bộ xử lý
sinh ra một thông báo trang cha có trong bộ nhớ nếu những bit đặt trớc này

không đợc thiết lập về 0.

9.Những điểm vào th mục trang và bảng trang không có mặt

11


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC
Khi cờ P bị xoá cho một điểm vào bảng trang hay một điểm vào th mục trang, thì
hệ điều hành hay trình thực hiện có thể sử dụng phần còn lại của điểm vào đó cho việc l u
trữ thông tin nh là vị trí của trang đó trên đĩa lu trữ hệ thống.

Hình 8: Khuôn dạng của điểm vào bảng trang và th mục trang cho nhng
trang không có mặt.

10.Bộ đệm để chuyển hóa địa chỉ (TLB Translation Lookaside Buffer)

Bộ xử lý lu trữ những điểm vào th mục trang và bảng trang đợc sử dụng gần đây
nhất vào một bộ nhớ cache trên chip đợc gọi là bộ đệm để chuyển hoá điạ chỉ . Các bộ xử
lý họ P6 và Pentium chia TLBs thành cache dữ liệu và cache lệnh. Họ P6 cũng giữ cho
khỏi gián đoạn việc chia TLBs cho các kích thớc trang 4-MByte và 4-KByte. Lệnh CPUID
có thể đợc sử dụng để xác định kích thớc của TLBs đợc cung cấp trong họ P6 và các bộ
xử lý Pentium .
TLB của MP 80386 có 32 entry, mỗi entry quy chiếu đến một trang nhớ có kích
thớc 4-KByte. Tổng cộng TLB phủ một vùng nhớ là 128 Kbyte. Đối với một số hệ thống
đa nhiệm tần suất truy nhập bộ nhớ qua TLB là 98% trong khi đó số lần quy chiếu bộ nhớ
qua th mục và bảng trang chỉ chiếm 2%.
Hầu hết việc phân trang đợc thực hiện bằng việc sử dụng nội dung của các TLB.
Các chu kỳ bus đến các th mục trang và các bảng trang trong bộ nhớ chỉ đợc thực hiện khi
các TLB không chứa thông tin chuyển đổi cho một trang đợc yêu cầu.

Các TLB không thể truy nhập đến các chơng trình ứng dụng và các nhiệm vụ (mức
đặc quyền u tiên lớn hơn 0), nhng chúng không thể làm mất hiệu lực các TLB. Chỉ có hệ
điều hành hay các thủ tục chạy chạy ở mức đặc quyền u tiên bằng 0 mới có thể làm mất
hiệu lực các TLB hay chọn các điểm vào TBL.Bất cứ khi nào một điểm vào th mục trang
hay bảng trang đợc thay đổi (nhập vào khi cờ P bị xoá), thì hệ điều hành cần ngay lập tức
làm mất hiệu lực điểm vào phù hợp trên TLB đó để nó có thể đợc cập nhật điểm vào tiếp
theo đợc tham chiếu đến.Mặc dù, đặc tính mở rộng địa chỉ vật lý (PAE) đợc kích hoạt để
sử dụng việc đánh địa chỉ 36-bit, thì một bảng mới đợc cộng vào hệ thống cấp bậc phân
trang. Bảng mới này đợc gọi là bảng con trỏ th mục trang. Nếu một điểm vào đợc thay đổi
trong bảng này(để trỏ tới một th mục trang khác), các TLBs sau đó cần phải đợc xoá bỏ
bằng việc ghi lên CR3.
Tất cả các TLB (không chung) bị làm mất hiệu lực một cách tự động bất kỳ lúc
nào khi thanh ghi CR3 đợc nạp (trừ phi cờ G cho một điểm vào trang hay điểm vào bảng
trang đợc thiết lập). Thanh ghi CR3 có thể đợc nạp vào bằng hai cách:
Một cách rõ ràng bằng việc sử dụng lệnh MOV nh sau:
MOV CR3, EAX
khi đó thanh ghi EAX chứa địa chỉ cơ sở (đầu tiên) của th mục trang phù hợp.
Một cách hoàn toàn bởi việc chạy sự chuyển đổi nhiệm vụ, nó sẽ thay đổi một
cách tự động nội dung của thanh ghi CR3.
Lệnh INVLPG đợc cung cấp để làm mất hiệu lực điểm vào bảng trang xác định trong
TLB. Bình thờng, lệnh này chỉ làm mất hiệu lực của một điểm vào TLB riêng, nhng trong
một vài trờng hợp, nó có thể làm mất hiệu lực của nhiều hơn một điểm vào đợc lựa chọn
và thậm chí có thể tất cả điểm vào của các TLB. Lệnh này bỏ qua việc thiết lập của cờ G
trong một điểm vào th mục trang hay bảng trang.
Trong bộ xử lý Pentium , cờ kích hoạt trang chung (PGE)trong thanh ghi CR4 và
cờ G của một điểm vào th mục trang hay bảng trang(bit 8) có thể đợc sử dụng để ngăn
chặn những trang đợc sử dụng thờng xuyên khỏi bị làm mất hiệulực một cách tự động
trong các TLB trên sự chuyển đổi nhiệm vụ hay việc nạp mới của thanh ghi CR3. Khi bộ
xử lý nạp một điểm vào th mục trang hay bảng trang cho một trang chung vào TLB, điểm
vào đó sẽ nằm lại trong TLB một cách không vô hạn định. Cách duy nhất để làm mất hiệu

lực các điểm vào trang chung một cách định mệnh là xoá cờ PGE và sau đó làm mất hiệu
lực các TLB đó hay sử dụng lệnh INVLPG để làm mất hiệu lực các điểm vào th mục
trang và bảng trang cá nhân trong các TLB.

12


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC

11. Sự mở rộng địa chỉ vật lý.

Cờ mở rộng địa chỉ vật lý (PAE) trong thanh ghi CR4 kích hoạt một sự mở rộng
của các địa chỉ vật lý từ 32-bits sang 36-bits. (Đặc tính này đợc giới thiệu trong kiến trúc
Intel trong các bộ xử lý Pentium Pro.). Ơ đây, bộ xử lý cung cấp thêm 4 pin dòng địa chỉ
(address line pins) để cung cấp vùng nhớ cho các bits thêm vào. Tuỳ chọn này chỉ có thể
đợc sử dụng khi chế độ phân trang đợc kích hoạt (đó là khi cả cờ PG trong thanh ghi CR0
và cờ PAE trong thanh ghi CR4 đợc thiết lập.)
Khi chế độ mở rộng địa chỉ vật lý đợc kích hoạt, bộ xử lý cho phép vài kích thớc
trang : 4-KByte,2-MByte, 4-MByte. Với việc đánh địa chỉ 32-bit, những kích thớc trang
này có thể đợc đánh địa chỉ cùng một tập hợp các bảng phân trang.(Đó là một điểm vào
th mục trang có thể trỏ tới cả trang 2-MByte và trang 4-MByte hay một bảng trang theo
thứ tự trỏ tới các trang 4-KByte.) . Để cung cấp các địa chỉ 36-bit, những sự thay đổi sau
đợc tạo ra cho cấu trúc dữ liệu của việc phân trang :
Các điểm vào bảng phân trang đợc tăng lên 64 bits để cung cấp vùng nhớ cho các
địa chỉ vật lý cơ sở 36 bit. Mỗi th mục trang và bảng trang của trang 4-KByte vì
thế có thể có đến 512 điểm vào.
Một bảng mới , đợc gọi là bảng con trỏ th mục trang, đợc thêm vào trong chế độ
cấp bậc chuyển đổi địa chỉ tuyến tính. Bảng này có 4 điểm vào , mỗi điểm vào 64
bit, và nó nằm trên th mục trang trong chế độ cấp bậc . Khi cơ chế mở rộng địa
chỉ vật lý, bộ xử lý cung cấp đến 4 th mục trang.

Trờng địa chỉ cơ sở của th mục trang 20-bit trong thanh ghi CR3(PDPR) đợc thay
thế bởi trờng địa chỉ cơ sở của bảng con trỏ th mục trang 27-bit.(Trong trờng hợp
này thanh ghi CR3 đợc gọi là PDPTR). Trờng này cung cấp 27 bits nhiều ý nghĩa
nhất của một địa chỉ vật lý của byte đầu tiên trong bảng con trỏ th mục trang,
những bits này bắt buộc bảng đó phải đợc định vị trên vùng ranh giới 32-byte.
Việc chuyển đổi địa chỉ vật lý đợc thay đổi để cho phép ánh xạ các địa chỉ tuyến
tính 32-bit vào một không gian địa chỉ vật lý lớn hơn.

Hình 9: Cấu trúc thanh ghi CR3 khi chế độ mở rộng địa chỉ vật lý đợc kích hoạt.

11.1 Chuyển đổi địa chỉ tuyến tính với việc đánh địa chỉ mở rộng đ ợc
kích hoạt (các trang 4-KByte)

Hình 10 miêu tả con trỏ th mục trang , th mục trang, và chế độ cấp bậc bảng trang
khi việc ánh xạ các địa chỉ tuyến tính đến các trang 4-KByte với chế độ đánh địa chỉ vật
lý mở rộng đợc kích hoạt. Phơng pháp phân trang này có thể đợc sử dụng để đánh địa chỉ
lên tới 220 trang, nó mở rộng một không gian địa chỉ tuyến tính 232 bytes (4 GBytes).

13


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC

Hình 10: Chuyển đổi địa chỉ tuyến tính với chế độ đánh địa chỉ vật lý mở rộng đợc kích
hoạt với các trang 4-KByte.
Để chọn các điểm vào bảng khác nhau, một địa chỉ tuyến tính đợc chia vào 3
vùng:
Điểm vào bảng con trỏ th mục trang(Page-directory-pointer-table-entry) : bit 30 và
bit 31 cung cấp một khoảng trống cho một trong 4 điểm vào trong bảng con trỏ th
mục trang. Điểm vào đợc chọn này cung cấp địa chỉ vật lý cơ sở (đầu tiên) của

một th mục trang.
Điểm vào th mục trang( Page- directory-entry) :từ bit 21 đến bit 29 cung cấp một
khoảng trống cho một điểm vào trong th mục trang đợc chọn. Điểm vào th mục
trang này cung cấp địa chỉ vật lý cơ sở (đầu tiên) của một bảng trang.
Điểm vào bảng trang (Page-table entry): từ bit 12 đến bit 20 cung cấp một khoảng
trống cho một điểm vào trong một bảng trang đợc chọn. Điểm vào này cung cấp
địa chỉ vật lý cơ sở (đầu tiên) của một trang trong bộ nhớ vật lý.
Địa chỉ tơng đối trong trang (Page offset): từ bit 0 đến bit 11 cung cấp một khoảng
trống cho một địa chỉ vật lý trong trang đó.

11.2 Chuyển đổi địa chỉ tuyến tính với chế độ đánh địa chỉ mở rộng đ ợc kích hoạt(các trang 2Mbyte hoặc 4Mbyte)

Hình 11 miêu tả một bảng con trỏ th mục trang và các th mục trang có thể đợc sử
dụng để ánh xạ các địa chỉ tuyến tính đến các trang 2-MByte và 4-MByte. Phơng pháp
phân trang này có thể đợc sử dụng để ánh xạ đến 2048 trang ( 4 điểm vào bảng con trỏ th
mục trang lần lợt chứa 512 điểm vào th mục trang.)vào trong một không gian địa chỉ
tuyến tính 4-GByte.

14


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC

Hình 11 :Chuyển đổi điạ chỉ tuyến tính với chế độ đánh điạ chỉ vật lý mở rộng đợc kích
hoạt với trang 2-Mbyte hoặc 4-MByte.
Kích thớc trang 2-MByte và 4-MByte đợc chọn bởi việc thiết lập cờ PSE trong
thanh ghi điều khiển CR4 và cờ PS trong một điểm vào th mục trang. Khi những cờ này đợc thiết lập, một địa chỉ tuyến tính đợc chia vào 3 vùng:
Điểm vào bảng con trỏ th mục trang(Page-directory-pointer-table entry) : bit 30 và
bit 31 cung cấp một khoảng trống cho một điểm vào trong bảng con trỏ th mục
trang. Điểm vào đợc lựa chọn cung cấp địa chỉ vật lý cơ sở (đầu tiên) của một th

mục trang.
Điểm vào th mục trang(Page-directory-table entry): từ bit 21 đến bit 29 cung cấp
một vùng trống cho một điểm vào trong th mục trang đó . Điểm vào đợc chọn này
cung cấp địa chỉ vật lý cơ sở (đầu tiên) của một trang 2-MByte hay 4-MByte.
Địa chỉ tơng đối trong trang (Page offset): từ bit 0 đến bit 20 cung cấp một khoảng
trống cho một địa chỉ vật lý trong trang đó.

11.3 Truy nhập vào toàn bộ không gian địa chỉ vật lý mở rộng với cấu
trúc bảng trang mở rộng.

Cấu trúc bảng trang đã miêu tả ở phần trớc đợc phân thành hai vùng cho phép đạt
đến 4 GBytes của một không gian địa chỉ vật lý mở rộng 64-GByte đợc đánh địa chỉ trong
một lần. Các vùng 4-Gbyte thêm vào của bộ nhớ vật lý có thể đợc đánh địa chỉ theo cả hai
cách sau:
Đổi con trỏ trong thanh ghi CR3 trỏ đến một bảng con trỏ th mục trang khác, bảng
này theo thứ tự trỏ đến một tập hợp các th mục trang và bảng trang khác.
Đổi các điểm vào trong bảng con trỏ th mục trang trỏ đến các th mục trang khác,
những th mục trang này theo thứ tự lại trỏ đến các tập hợp các bảng trang khác.

11.4 Các điểm vào th mục trang và bảng trang với chế độ đánh trang
mở rộng đợc kích hoạt.

Hình 12 miêu tả cấu trúc của bảng con trỏ th mục trang, th mục trang, và các điểm
vào bảng trang khi các trang 4-Kbyte và các địa chỉ vật lý mở rộng 36-bit đợc sử dụng.
Hình 13 miêu tả cấu trúc của bảng con trỏ th mục trang và các điểm vào th mục trang khi
các trang 2-MByte hoặc 4-MByte và các địa chỉ vật lý mở rộng 36-bit đợc sử dụng.
Những chức năng của những cờ trong những điểm vào này giống nh miêu tả trong
phần :Các điểm vào th mục trang và bảng trang.Những điểm khác chính trong những
điểm vào này nh sau:
Một điểm vào bảng con trỏ th mục trang đợc thêm vào.

Kích thớc của các điểm vào tăng lên từ 32-bits lên 64 bits.
Số tối đa các điểm vào trong một th mục trang hay một bảng trang là 512.

15


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC
Trờng địa chỉ vật lý cơ sở trong mỗi điểm vào đợc mở rộng lên 24 bits.
Địa chỉ vật lý cơ sở (đầu tiên) trong một điểm vào xác định nh sau tuỳ thuộc vào loại
điểm vào:
Điểm vào bảng con trỏ th mục trang : địa chỉ vật lý của byte đầu tiên của th mục
trang 4-KByte.
Điểm vào th mục trang: địa chỉ vật lý của byte đầu tiên của một bảng trang 4KByte hay một trang 2-MByte.
Điểm vào bảng trang: địa chỉ vật lý của byte đầu tiên của một trang 4-KByte.
Với tất cả các điểm vào trang (trừ các điểm vào th mục trang chỉ đến các trang 2-MByte
hay 4-MByte), những bits trong địa chỉ cơ sở (đầu tiên) của trang đợc biểu diễn là 24 bits
nhiều ý nghĩa nhất của địa chỉ vật lý 36-bit, chúng bắt buộc các bảng trang và các trang
phải đợc nằm trong các vùng ranh giới 4-Kbyte. Khi một điểm vào th mục trang trỏ tới
một trang 2-MByte hay 4-MByte, điạ chỉ cơ sở đợc biểu diễn là 15 bits nhiều ý nghĩa
nhất của địa chỉ vật lý 36 bit, chúng bắt buộc các trang phải đợc sắp đặt trong các vùng
ranh giới 2-MByte hoặc 4-MByte.

Hình 12: Cấu trúc của bảng con trỏ, th mục trang, và điểm vào bảng trang cho các trang
4-KByte và các địa chỉ vật lý mở rộng 36-bit.

16


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC


Hình 13: Cấu tạo của bảng con trỏ th mục trang, và các điểm vào th mục trang cho các
trang 2-MByte hoặc 4-MByte và các địa chỉ vật lý mở rộng 36-bit.
Bit P (present flag- bit 0) trong tất cả các điểm vào bảng con trỏ th mục trang cần
phải thiết lập lên 1 bất cứ lúc nào khi chế độ đánh địa chỉ vật lý mở rộng đợc kích hoạt.
Đó là khi bất cứ lúc nào cờ PAE (bit 5 trong thanh ghi CR4) và cờ PG(bit 31 trong thanh
ghi CR0 )đợc thiết lập. Nếu cờ P không đợc thiết lập trong tất cả 4 điểm vào bảng con trỏ
th mục trang trong bảng con trỏ th mục trang đó khi chế độ đánh địa chỉ vật lý mở rộng đợc kích hoạt, thì một ngoại lệ bảo vệ chung (general-protection exception ,#GP) đợc sinh
ra.
Cờ PS (page size flag- bit 7) trong một điểm vào th mục trang xác định nếu một
điểm vào trỏ đến một bảng trang hay một trang 2-MByte hoặc 4-MByte . Khi cờ này bị
xoá, điểm vào đó chỉ tới một bảng trang, khi cờ này đợc thiết lập lên 1 thì điểm vào đó
trỏ tới một trang 2-MByte hoặc 4-MByte. Cờ này cho phép các trang 4-KByte, 2-MByte,
4-MByte đợc xếp cùng nằm trong một tập hợp các bảng phân trang.
Các cờ A và D (bit 5 và 6) đợc cung cấp cho các điểm vào bảng trang chỉ đến các
trang.
Bits 9,10,11 trong tất cả các điểm vào trang cho chế độ mở rộng địa chỉ vật lý đợc
cung cấp cho phần mềm. (Khi cờ P đợc thiết lập, từ bit 1 đến bit 63 đợc cung cấp cho
phần mềm.) Tất cả các bit trong hình đợc đánh dấu đặt trớc hay là 0 thì cần xoá về 0 bởi
phần mềm và không truy nhập đợc bởi phần mềm .Khi cờ PSE và/hoặc cờ PAE trong
thanh ghi điều khiển CR4 đợc thiết lập lên 1, bộ xử lý sinh ra thông báo trang cha có
trong bộ nhớ (#PF),nếu các bit đặt trớc trong các điểm vào th mục trang và bảng trang
không đợc xoá về 0 , thì bộ xử lý sinh ra một thông báo ngoại lệ bảo vệ chung (#GP) nếu
các bits đặt trớc trong một điểm vào bảng con trỏ th mục trang trong bảng con trỏ th mục
trang không đợc xoá về 0 .

12. Sự mở rộng kích thớc trang 36-bit (page size extension- PSE)

Sự mở rộng kích thớc trang 36-bit mở rộng địa chỉ vật lý 36-bit cung cấp cho các
trang 4-MByte trong khi đang giữ cho khỏi gián đoạn một điểm vào th mục trang 4-byte.
Phơng pháp tiếp cận này cung cấp một cơ chế đơn giản cho các nhà cung cấp của hệ điều

hành để đánh địa chỉ bộ nhớ vật lý trên 4-GByte mà không đòi hỏi những thay đổi thiết kế
chính, nhng có sự giới hạn hiệu quả cho sự tôn trọng việc phân trang theo yêu cầu.
Họ P6 của đặc tính mở rộng địa chỉ vật lý của các bộ xử lý cung cấp sự truy nhập
chung vào không gian địa chỉ vật lý 36-bit. Mặc dù , nó đòi hỏi một sự mở rộng của các
điểm vào th mục trang và bảng trang đến một cấu trúc 8-byte(64 bits) , và có thêm một
bảng con trỏ th mục trang, dẫn đến kết quả là một cấp độ khác của hành động gián tiếp
chuyển đổi địa chỉ.
Với họ các bộ xử lý P6 cung cấp đặc tính mở rộng kích thớc trang 36-bit, kiến trúc
bộ nhớ ảo này đợc mở rộng để cung cấp kích thớc trang 4-MByte kết hợp với việc đánh
địa chỉ vật lý 36-bit. Cần nhớ rằng vài bộ xử lý của họ P6 không cung cấp đặc tính này.

17


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC

12.1 Sự miêu tả của đặc tính mở rộng kích thớc trang 36-bit.

Đặc tính mở rộng kích thớc trang 36-bit (PSE-36) đợc phát hiện bởi hệ điều hành
thông qua lệnh CPUID. Đặc biệt, hệ điều hành chạy lệnh CPUID với giá trị 1 trong thanh
ghi EAX và sau đó xác định sự hỗ trợ cho đặc tính này bằng việc kiểm tra bit 17 của
thanh ghi EAX trả lại giá trị. Nếu đặc tính PSE-36 đợc hỗ trợ , một hệ điều hành đợc cho
phép sử dụng đặc tính này, cũng nh sử dụng những bits đợc đặt trớc một cách hình thức.
Để sử dụng đặc tính PSE-36, cờ PSE cần phải đợc kích hoạt bởi hệ điều hành (bit 4 của
thanh ghi CR4). Cần nhớ rằng một bit phân chia điều khiển trong CR4 không tồn tại để
qui định việc sử dụng các trang 36-bit MByte, bởi vì đặc tính này trở thành mẫu cho các
trang 4-Mbyte trên các bộ xử lý hỗ trợ nó.
Bảng sau chỉ ra kích thớc trang và kích thớc địa chỉ vật lý đạt đợc từ những thiết
lập khác nhau của các cờ điều khiển trang cho các bộ xử lý họ P6 để hỗ trợ đặc tính PSE36. Vùng xám là sự thay đổi bảng này là kết quả từ đặc tính PSE 36-bit.


Bảng 2: Các chế độ phân trang và kích thớc địa chỉ vật lý.
Để sử dụng đặc tính PSE-36, đặc tính PAE cần đợc xoá. Mặc dù, đặc tính PSE-36
không ảnh hởng đến đặc tính PAE 36-bit. Hệ điều hành đang tồn tại và phần mềm sử
dụng đặc tính PAE sẽ tiếp tục có các đặc tính và chức năng tơng thích với các bộ xử lý
của họ P6, hỗ trợ đặc tính PSE 36-bit. Đặc biệt, cấu trúc điểm vào th mục trang khi PAE
đợc kích hoạt cho các trang 2-MByte hoặc 4-MByte là chính xác nh mô tả trong hình 13.
Bất kỳ đặc tính đánh địa chỉ 36-bit nào đợc sử dụng(PAE hay PSE 36-bit), không
gian địa chỉ tuyến tính của bộ xử lý còn lại 32 bits. Những ứng dụng cần phân vùng không
gian địa chỉ của công việc của chúng, công việc này nạp qua các tiến trình của hệ điều
hành đa nhiệm ,để tạo thuận lợi cho bộ nhớ vật lý thêm vào đợc cung cấp trong hệ thống
này.
Đặc tính PSE 36-bit mở rộng cấu trúc điểm vào th mục trang của kiến trúc Intel
cho các trang 4-MBytevà các địa chỉ 32-bit bằng việc sử dụng các bits 13 đến 16 (các bits
đợc đặt trớc một cách hình thức đợc yêu cầu ghi về 0) để mở rộng địa chỉ vật lý mà không
đòi hỏi một điểm vào th mục trang 8-byte. Vì thế, với đặc tính PSE-36, một th mục trang
có thể chứa đến 1024 điểm vào, mỗi điểm vào trỏ đến một trang 4-Mbyte , trang này có
thể tồn tại bất kỳ đâu trong không gian địa chỉ vật lý 36-bit của bộ xử lý.
Hình 14 cũng chỉ ra việc ánh xạ địa chỉ tuyến tính đến các trang 4-MByte khi đặc
tính PSE 36-bit đợc kích hoạt. Địa chỉ vật lý cơ sở của trang 4-MByte đó đợc chứa trong
th mục trang đó. PA-2(các bit từ 13 đến 16) đợc sử dụng để cung cấp 4 bits cao hơn (từ bit
32 đến bit 35) của một địa chỉ vật lý 36-bit. PA-1(từ bit 22 đến bit 31) tiếp tục cung cấp
10 bit tiếp theo (từ bit 22 đến 31) của địa chỉ vật lý đó cho trang 4-MByte. Địa chỉ offset
trong trang này cung cấp 22 bit thấp hơn của địa chỉ tuyến tính đó. Sơ đồ này loại bỏ mức
thứ hai của hành động gián tiếp bởi việc sử dụng các bảng trang 4-Kbyte.

18


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC


Hình 14: Sự khác nhau trong cấu trúc PDE giữa chế độ đánh địa chỉ 36-bit và 32-bit
Chú ý:
1. PA-2 = Các bit 32 đến 35 của địa chỉ cơ sở của các trang 4-MByte( tơng ứng với
các bit 13 đến 16)
2. PA-2 = Các bit 22 đến 31 của địa chỉ cơ sở của trang 4-MByte.
3. PAT = bit 12 đợc sử dụng là bit nhiều ý nghĩa nhất của chỉ số trong bảng thuộc
tính trang (Page Attribute Table-PAT).
4. PS = bit 7 là bit kích thớc trang (Page Size Bit) chỉ ra các trang 4MByte( bit này
cần thiết lập lên 1).
5. Reserved = các bit từ 17 đến 21 đợc đặt trớc cho việc mở rộng sau này.
6. Không thay đổi trong cấu trúc hoặc ý nghĩa của các bit 8 đến 11 và 0 đến 6 .
Đặc tính PSE-36 là trong suốt với hệ điều hành đang tồn tại mà sử dụng các trang
4-MByte, bởi vì các bit không sử dụng trong PA-2 hiện thời đợc làm cho về 0 bởi các bộ
xử lý Intel. Đặc tính này đòi hỏi các trang 4-MByte đợc sắp xếp trong vùng ranh giới 4MByte và bộ nhớ vật lý liên tiếp của các phần 4-MByte. Vì thế , 10 bit của PA-1 đủ để
xác định rõ địa chỉ vật lý cơ sở (đầu tiên) của bất kỳ trang 4-MByte nào dới 4GBytes. Một
hệ điều hành có thể dễ dàng hỗ trợ các địa chỉ lớn hơn 4 GByte một cách dễ dàng bởi việc
cung cấp 4 bit cao hơn của địa chỉ vật lý đó trong PA-2 khi tạo ra PDE (điểm vào th mục
trang) cho một trang 4-MByte.
Hình 15 miêu tả việc ánh xạ địa chỉ tuyến tính đến các trang 4-Mbyte khi đặc tính
PSE 36-bit đợc kích hoạt. Địa chỉ vật lý cơ sở của trang 4-MByte này đợc chứa trong PDE
của nó. PA-2(bit 13 đến 16) đợc dùng để cung cấp bốn bit cao hơn (từ bit 32 đến 35) của
địa chỉ vật lý 36 bit. PA-1(từ bit 22 đến bit 31) tiếp tục cung cấp 10 bit tiếp theo (từ bit 22
đến 31) của địa chỉ vật lý cho trang 4-MByte. Địa chỉ offset trong trang này đ ợc cung cấp
bởi 22 bit thấp hơn của địa chỉ tuyến tính. Sơ đồ này cũng loại bỏ mức thứ hai của hành
động gián tiếp gây ra bởi việc sử dụng các bảng trang 4KByte.

19


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC

Hình 15: Sự mở rộng kích thớc trang tuyến tính đến việc chuyển đổi vật lý
Đặc tính PSE-36 là trong suốt với hệ điều hành đang tồn tại mà sử dụng các trang
4-MByte, bởi vì các bit không sử dụng trong PA-2 hiện thời đợc làm cho về 0 bởi các bộ
xử lý Intel. Đặc tính này đòi hỏi các trang 4-MByte đợc sắp xếp trong vùng ranh giới 4MByte và bộ nhớ vật lý liên tiếp của các phần 4-MByte. Vì thế , 10 bit của PA-1 đủ để
xác định rõ địa chỉ vật lý cơ sở (đầu tiên) của bất kỳ trang 4-MByte nào dới 4GBytes. Một
hệ điều hành có thể dễ dàng hỗ trợ các địa chỉ lớn hơn 4 GByte một cách dễ dàng bởi việc
cung cấp 4 bit cao hơn của địa chỉ vật lý đó trong PA-2 khi tạo ra PDE (điểm vào th mục
trang) cho một trang 4-MByte.

12.2 Phát hiện lỗi.

Có vài điều kiện có thể gây ra cho các bộ xử lý họ P6 gây ra lỗi trang không có
trong bộ nhớ (page fault). Những điều kiện này có liên quan đến việc sử dụng , hoặc sự
chuyển đổi giữa các đặc tính quản lý bộ nhớ khác nhau:
Nếu đặc tính PSE đợc kích hoạt, một giá trị khác 0 trong bất kỳ các bit đặt trớc
còn lại (từ 17 đến 21) của một điểm vào th mục trang 4-MByte gây ra việc thông
báo trang không có trong bộ nhớ, với bit đặt trớc(bit 3) thiết lập trong mã lỗi.
Nếu đặc tính PAE đợc kích hoạt và thiết lập cho việc sử dụng các trang 2-MByte
hoặc 4-MByte(đó là các điểm vào bảng th mục trang 8byte đang đợc sử dụng.),
một giá trị khác 0 của bất kỳ bit đặt trớc nào từ 13 đến 20 gây ra việc trang không
có trong bộ nhớ (page fault), với bit đặt trớc (bit 3) thiết lập trong mã lỗi. Chú ý
rằng bit 12 bây giờ đang đợc sử dụng để hỗ trợ đặc tính PAT(page attribute table).

13. Anh xạ các đoạn sang các trang.

Cơ chế phân đoạn và phân trang đợc cung trong kiến trúc Intel hỗ trợ các phơng
pháp đa dạng để quản lý bộ nhớ. Khi cơ chế phân đoạn và phân trang đợc kết hợp, các
đoạn có thể đợc ánh xạ đến các trang trong vài trờng hợp. Để cung cấp một môi trờng
đánh địa chỉ không phân đoạn, ví dụ nh tất cả các mã, dữ liệu, và các modul ngăn xếp có
thể đợc ánh xạ đến một hay nhiều đoạn lớn( có thể đến 4-GByte) , mà chúng chia sẻ cùng

một vùng các địa chỉ tuyến tính. Ơ đây, các đoạn hoàn toàn không nhìn thấy đợc cho các
ứng dụng và hệ điều hành hay trình thực hiện. Nếu việc phân trang đợc sử dụng,
cơ chế phân trang có thể ánh xạ một không gian địa chỉ tuyến tính đơn(đợc chứa trong
một đoạn đơn) vào bộ nhớ ảo. Hay, mỗi chơng trình (hay nhiệm vụ) có thể có không gian
địa chỉ tuyến tính lớn của nó(đợc chứa trong đoạn của nó), chơng trình(hay nhiệm vụ )
này đợc ánh xạ vào trong bộ nhớ ảo qua th mục trang của nó và việc thiết lập các bảng
trang.
Các đoạn có thể nhỏ hơn kích thớc của một trang. Nếu một trong những đoạn này
đợc đặt vào trong một trang mà trang này không đợc chia sẻ với đoạn khác, thì bộ nhớ
phụ là lãng phí. Ví dụ, một cấu trúc dữ liệu nhỏ, giả dụ là 1-byte semanphore, chiếm 4KByte nếu nó tự đợc đặt trong một trang. Nếu nhiều semanphore đợc sử dụng, nó sẽ hiệu
quả hơn để xếp chúng vào trong một trang đơn.
Kiến trúc Intel không bắt làm cho phù hợp giữa các vùng ranh giới của các trang
và các đoạn. Một trang có thể chứa phần cuối của một đoạn và phần đầu của một đoạn
khác. Nh vậy, một đoạn có thể chứa phần cuối của một trang và phần đầu của một trang
khác.
Phần mềm quản lý bộ nhớ có thể đơn giản hơn và hiệu quả hơn nếu nó bắt buộc
vài sự sắp xếp theo hàng giữa các vùng ranh giới giữa trang và đoạn. Ví dụ, nếu một đoạn
có thể vừa trong một trang lại đợc đặt trang hai trang, thì có hai lần phí tổn phân trang để
hỗ trợ việc truy nhập vào đoạn đó .
Một phơng pháp để kết hợp việc phân trang và phân đoạn, việc này làm đơn giản
hoá phần mềm quản lý bộ nhớ , là cung cấp cho mỗi đoạn một bảng trang của nó nh trong
hình 14. Sự quy ớc này tạo cho một đoạn một điểm vào đơn trong th mục trang đợc cung
cấp thông tin điều khiển truy nhập cho việc phân trang toàn bộ một đoạn.

20


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC

Hình 16: Sự quy ớc quản lý bộ nhớ chỉ đến một bảng trang cho mỗi đoạn


phần II: Chơng trình Minh hoạ

Chơng trình minh hoạ đa ra một số thông tin về hệ thống:
1.Thông tin về phần cứng.
Page size : kích thớc trang tính theo byte.
Processor type: kiểu bộ xử lý.
Minimum application address: Địa chỉ nhỏ nhất có thể truy nhập đợc
cho ứng dụng và các th viện liên kết động(DLLs).
Maximum application address: Địa chỉ lớn nhất có thể truy nhập đợc
cho ứng dụng và các th viện liên kết động (DLLs).
2.Thông tin về bộ nhớ.
Memory load: Phần trăm bộ nhớ đang sử dụng (%).

21


CÊu tróc d÷ liÖu phôc vô cho viÖc qu¶n lý bé nhí ph©n trang trong IBM-PC








Total physical memory: Tæng bé nhí vËt lý (KB) .
Free physical memory: Bé nhí cha sö dông (KB).
Total paging file: Tæng bé nhí ®îc ph©n trang (KB).
Free paging file: Bé nhí ph©n trang cha sö dông (KB).

Total virtual memory: Tæng bé nhí ¶o (KB).
Free virtual memory : Bé nhí ¶o cha sö dông (KB).

22


Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM-PC

Phần III: Tài liệu tham khảo

1. Giáo trình cơ sở chuyên ngành Hệ điều hành Nguyễn Thanh Tùng.
2. INSIDE WINDOWS 2000 MSPRESS.
3. Intel Architecture Software Developers Manual - Volumn 3: System
Programming.

23



×