QUẢN Lí BỘ NHỚ TRONG INTEL PENTIUM

Một phần của tài liệu Bài giảng Hệ Điều Hành_HVCNBCVT_PGS.TS Từ Minh Phương (Trang 99 - 102)

Vi xử lý Pentium của Intel hỗ trợ cơ chế quản lý bộ nhớ, trong ủú phõn ủoạn ủược kết hợp với phõn trang. Khụng gian nhớ của tiến trỡnh bao gồm nhiều ủoạn, mỗi ủoạn cú thể cú kớch thước khỏc nhau và ủược phõn trang trước khi ủặt vào bộ nhớ. Nhưủó phõn tớch ở trờn, việc kết hợp cho phộp kết hợp ưu ủiểm của hai phương phỏp quản lý bộ nhớ vật lý.

Ánh xạủịa chỉ. địa chỉ lụ gic ủược ỏnh xạ thành ủịa chỉ vật lý qua hai giai ủoạn (hỡnh 3.16). Giai ủoạn thứ nhất do khối phõn ủoạn chịu trỏch nhiệm, ủịa chỉ lụ gic ủược dịch thành

ủịa chỉ tuyến tớnh (linear address). Giai ủoạn hai do khối phõn trang chịu trỏch nhiệm, ủịa chỉ

tuyến tớnh ủược biến ủổi thành ủịa chỉ vật lý.

Phõn ủoạn

Vi xử lý Pentium cho phộp tiến trỡnh cú tối ủa 16KB (hơn 16000) ủoạn, mỗi ủoạn cú kớch thước tối ủa 4GB. đõy là số lượng lớn hơn rất nhiều so với khả năng thực của bộ nhớ

mỏy tớnh hiện nay.

Hỡnh 3.16: Ánh xạủịa chỉ trong Intel Pentium

Khụng gian nhớ lụ gic ủược chia thành hai phần. Phần thứ nhất dành riờng cho tiến trỡnh, bao gồm tối ủa 8KB ủoạn. Phần thứ hai ủược dựng chung cho tất cả tiến trỡnh, bao gồm cả hệủiều hành, và cũng gồm tối ủa 8KB ủoạn. Thụng tin quản lý tiến trỡnh thuộc phần thứ

nhất và phần thứ hai ủược chứa lần lượt trong hai bảng gọi là bảng mụ tả cục bộ (local descriptor table Ờ LDT) và bảng mụ tả toàn thể (global descriptor table Ờ GDT). Mỗi ụ trong cỏc bảng này cú kớch thước 8 byte và chứa thụng tin vềủoạn tương ứng, bao gồm cả ủịa chỉ

cơ sở và giới hạn (ủộ dài) ủoạn.

để tăng tốc ỏnh xạ ủịa chỉ, Pentium cú 6 thanh ghi ủoạn, cho phộp tiến trỡnh truy cập

ủồng thời 6 ủoạn. Ngoài ra thụng tin vềủoạn ủược chứa trong 6 thanh ghi kớch thước 8 byte

ủể trỏnh việc ủọc cỏc ụ của LDT và GDT mỗi khi truy cập bộ nhớ.

địa chỉ lụ gic bao gồm hai phần (selector, offset), phần thứ nhất cho phộp chọn ụ tương ứng từ hai bảng mụ tả LDT, GDT, phần thứ hai là ủộ dịch trong ủoạn kớch thước 32bit.

Phần selector ủộ dài 16 bit cú cấu trỳc như sau:

s g p

13 bit 1 bit 2 bit

Trong ủú: s là số thứ tựủoạn, g cho biết ủoạn thuộc GDT (g=0) hay LDT(g=1), p cho biết chếủộ bảo vệ (p=0 là chếủộ nhõn, p=3 là chếủộ người dựng).

địa chỉ tuyến tớnh ủược tạo ra như sau: trước hết phần selector ủược sử dụng ủể tỡm ụ tương ứng trong GDT, LDT chứa mụ tảủoạn (descriptor) (hỡnh 3.17 a); phần mụ tảủoạn sau

ủú ủược kết hợp với ủộ dịch trong ủoạn ủể tạo ra ủịa chỉ tuyến tớnh theo cơ chế mụ tả trờn hỡnh 3.17 b.

địa chỉ

lụ gic phõn Khủốoi ạn

địa chỉ

(a)

{

(b)

Hỡnh 3.17: Biến ủổi ủịa chỉ lụ gic thành ủịa chỉ tuyến tớnh

Phõn trang

Vi xử lý Pentium hỗ trợ bảng kớch thước trang bằng 4KB hoặc 4MB, tựy thuộc giỏ trị cờ

kớch thước trang (Page Size flag). Trong trường hợp kớch thước trang bằng 4KB, bảng trang

ủược tổ chức thành hai mức, bảng trang mức một và mức hai ủều cú kớch thước 4KB. địa chỉ

tuyến tớnh kớch thước 32 bit cú cấu trỳc như sau:

p1 p2 o

10 bit 10 bit 12 bit

Phần p1 cho phộp tỡm bảng trang mức hai (trong Pentium ủược gọi là page directory), phần p2 cho phộp tỡm ụ tương ứng trong bảng trang mức hai ủể kết hợp với ủộ dịch o tạo ra

ủịa chỉ vật lý. Cơ chế biến ủổi từủịa chỉ tuyến tớnh thành ủịa chỉ vật lý ủược thể hiện trờn hỡnh 3.18.

Trong trường hợp trang nhớ kớch thước trang bằng 4MB, bảng trang chỉ cú một mức với phần p kớch thước 10bit và phần ủộ dịch o kớch thước 22 bit cho phộp trỏ tới vị trớ cụ thể trong trang nhớ 4MB.

Toàn bộ cơ chế ỏnh xạ từ ủịa chỉ lụ gic sang ủịa chỉ vật lý ủược thể hiện chi tiết trờn hỡnh 3.19

Hỡnh 3.18: Cơ chế ỏnh xạủịa chỉ tuyến tớnh thành ủịa chỉ vật lý của Pentium

Hỡnh 3.19. toàn bộ cơ chế ỏnh xạủịa chỉ trong Pentium

Một phần của tài liệu Bài giảng Hệ Điều Hành_HVCNBCVT_PGS.TS Từ Minh Phương (Trang 99 - 102)

Tải bản đầy đủ (PDF)

(140 trang)