Bài giảng Nguyên lí hệ điều hành - Chương 3: Quản lý bộ nhớ

Bộ nhớ tác động nhiều lên độ phức tạp của giải thuật,

Phải giải quyết 2 v/đ trái ngược nhau:

Tiết kiệm bộ nhớ,

Tận dụng tối đa bộ nhớ cho phép.

Phần lớn các chương trình: viết trên ngôn ngữ lập trình: Assembler, VB, JAVA, VC++, . . .

Với người lập trình: CT và thực hiên CT là ánh xạ từ tên sang giá trị.

 

pptx 50 trang kimcuc 11440
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Nguyên lí hệ điều hành - Chương 3: Quản lý bộ nhớ", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Nguyên lí hệ điều hành - Chương 3: Quản lý bộ nhớ

Bài giảng Nguyên lí hệ điều hành - Chương 3: Quản lý bộ nhớ
1 
Chương 3 – QUẢN LÝ BỘ NHỚ 
Bộ nhớ tác động nhiều lên độ phức tạp của giải thuật, 
Phải giải quyết 2 v/đ trái ngược nhau: 
Tiết kiệm bộ nhớ, 
Tận dụng tối đa bộ nhớ cho phép. 
Phần lớn các chương trình: viết trên ngôn ngữ lập trình: Assembler, VB, JAVA, VC++, . . . 
Với người lập trình: CT và thực hiên CT là ánh xạ từ tên sang giá trị . 
2 
QUẢN LÝ BỘ NHỚ 
Với hệ thống: 
3 
$1 – CÁC BƯỚC XỬ LÝ CT 
I + J 
A + B 
A + I 
4 
CÁC BƯỚC XỬ LÝ CT 
Vai trò của Biên tập (Input/Output), 
Khái niệm bộ nhớ lô gíc. 
5 
CÁC BƯỚC XỬ LÝ CT 
6 
$2 – CẤU TRÚC CHƯƠNG TRÌNH 
Bộ nhớ lô gíc: 
Không gắn với máy tính cụ thể, 
Không giới hạn về kích thước, 
Chỉ chứa 1 mô đun hoặc 1 CT, 
Chỉ phục vụ lưu trữ , không thực hiện. 
Quản lý bộ nhớ lô gíc ~ tổ chức chương trình, 
Mỗi cách tổ chức CT cấu trúc CT, 
Mọi cấu trúc: đều được sử dụng trong thực tế. 
7 
CẤU TRÚC CHƯƠNG TRÌNH 
Đặc trưng mô đun đích ( Object Modul ): chứa thông tin về các moduls khác liên quan (các móc nối)  kích thước lớn. 
Nhiệm vụ biên tập ( Linked ): Giải quyết các móc nối. 
Các loại cấu trúc chính: 
Cấu trúc tuyến tính, 
Cấu trúc động (Dynamic Structure), 
Cấu trúc Overlay, 
Cấu trúc mô đun, 
Cấu trúc phân trang. 
Một chương trình thực hiện có thể chứa nhiều cấu trúc khác nhau. 
8 
CẤU TRÚC CHƯƠNG TRÌNH 
A) Cấu trúc tuyến tính : CT biên tập tìm và lắp ráp các mô đun thành một mô đun duy nhất, chứa đầy đủ thông tin để thực hiện CT, 
9 
Cấu trúc tuyến tính 
Đặc điểm : 
Đơn giản, 
Thời gian thực hiện: min, 
Lưu động (mobilable) cao, 
Tốn bộ nhớ: với mỗi bộ dữ liệu chỉ có 13% - 17% câu lệnh đóng vai trò tích cực. 
Không dùng chung mô đun CT. 
10 
B) CẤU TRÚC ĐỘNG 
Trong CT nguồn: phải dùng các lệnh macro hệ thống để nạp, móc nối, xoá (Load, Attach, Delete) . . . các mô đun khi cần thiết, 
11 
CẤU TRÚC ĐỘNG 
Đặc điểm: 
Đòi hỏi user phải biết cơ chế và công cụ quản lý bộ nhớ, 
Thời gian thực hiện lớn: song song thực hiện với tìm kiếm, nạp và định vị, 
Tiết kiệm bộ nhớ, 
Kém lưu động  khó nạp, cập nhật, xoá. 
Được sử dụng rộng rãi những năm 60-70 và từ 90 đến nay. 
Thích hợp cho các CT hệ thống. 
12 
CẤU TRÚC ĐỘNG 
Các mô đun nạp trong quá trình thực hiện  vào các files .DLL ( dynamic Link Library) 
WIDOWS 98, WINDOWS XP – thư mục SYSTEM, SYSTEM32 , 
Biên bản cài đặt, uninstall. 
Winword, Excel, Vietkey . . . 
Các ngôn ngữ lập trình:  công cụ tổ chức DLL. 
13 
C) CẤU TRÚC OVERLAY 
Moduls  các lớp, lớp = {các moduls không tồn tại đồng thời} 
Moduls lớp i được gọi bởi moduls lớp i-1, 
Thông tin về các lớp: Sơ đồ tổ chức overlay , do user cung cấp cho Link, 
Link tạo sơ đồ quản lý overlay, 
Supervisor Overlay tổ chức thực hiện. 
Đặc điểm: 
Phân phối bộ nhớ theo sơ đồ tĩnh, 
Files .OVL 
Ví dụ: FOXPRO, PCSHELL. . . . 
14 
15 
D) CẤU TRÚC MODULS 
Biên tập riêng từng mô đun, 
Tạo bảng quản lý mô đun để điều khiển thực hiện, 
Đặc điểm : 
Tự động hoàn toàn, 
Không cần phân phối bộ nhớ liên tục, 
Hiệu quả phụ thuộc vào cấu trúc ban đầu của CT nguồn, 
Dễ dàng sử dụng chung mô đun. 
16 
E) CẤU TRÚC PHÂN TRANG 
CT biên tập như cấu trúc tuyến tính, 
Chia thành các phần bằng nhau – trang, 
Tạo bảng quản lý trang. 
Đặc điểm : 
Tiết kiệm bộ nhớ, 
Hiệu quả không phụ thuộc và cấu trúc ban đầu của CT nguồn. 
17 
$3 - QUẢN LÝ BỘ NHỚ VẬT LÝ 
Đặc điểm: 
Có kích thước cụ thể, 
Có cấu hình sử dụng cụ thể. 
Phục vụ giai đoạn thực hiện CT: 
Bảo vệ thông tin, 
Bộ nhớ cho dữ liệu. 
Vấn đề: 
Cách tổ chức? 
Xác lập quan hệ với bộ nhớ lô gíc: như thế nào và khi nào? 
Tình huống thiếu bộ nhớ? 
18 
QUẢN LÝ BỘ NHỚ VẬT LÝ 
Các chế độ quản lý bộ nhớ vật lý: 
Chế độ phân vùng cố định, 
Chế độ phân vùng động, 
Chế độ mô đun, 
Chế phân trang, 
Chế độ kết hợp mô đun và phân trang. 
Mọi chế độ: đều đang được sử dụng. 
19 
a) Chế độ phân vùng cố định 
Bộ nhớ  n phần , 
mỗi phần có kích 
thước cố định 
(không nhất thiết 
bằng nhau), 
sử dụng như một 
bộ nhớ độc lập , 
phục vụ thực hiện 
1 CT . 
20 
Chế độ phân vùng cố định 
Đặc điểm : 
Mỗi vùng có một danh sách quản lý bộ nhớ tự do, 
Mỗi vùng: thực hiện một CT ứng dụng, 
Sơ đồ bảo vệ thông tin: theo toàn vùng. 
Một số CT điều khiển phải dược copy vào từng vùng. 
Phân lớp CT phục vụ để hạn chế lãng phí bộ nhớ, 
Mô hình : Tổ chức đĩa cứng. 
21 
Chế độ phân vùng cố định 
Công cụ phân bố lại bộ nhớ ( SWAPPING ): 
Lệnh OP, 
Do OP thực hiện, 
Những vùng nào biên thay đổi: mất thông tin . Lý do: làm lại DSQL bộ nhó tự do. 
Ví dụ: với đĩa cứng: FDISK. 
CT điều khiển hệ thống: đơn giản . 
Hệ số song song cố định . 
22 
b) CHẾ ĐỘ PHÂN VÙNG ĐỘNG 
CT  Phân phối vùng bộ 
 nhớ liên tục đủ thực hiện 
 và quản lý như bộ nhớ 
 độc lập. 
 một danh sách QL bộ 
 nhớ tự do duy nhất. 
23 
CHẾ ĐỘ PHÂN VÙNG ĐỘNG 
Đặc điểm: 
Hệ số song song biến thiên, 
 hiện tượng phân đoạn ngoài (External Fragmentation)  SWAPPING, 
Công cụ SWAPPING: 
Lệnh OP, 
Do OP thực hiện, 
Không mất thông tin. 
Nội dung SWAPPING . 
Phức tạp của Swapping. 
Mô hình quản lý đĩa từ SUBST, DRVSPACE 
24 
CHẾ ĐỘ PHÂN VÙNG ĐỘNG 
25 
C) CHẾ ĐỘ QUẢN LÝ THEO MÔ ĐUN 
CT – cấu trúc mô đun, 
26 
CHẾ ĐỘ QUẢN LÝ THEO MÔ ĐUN 
Thực hiện CT: địa chỉ dữ liệu phải biểu diễn dưới dạng một cặp 
SCB  RAM, địa chỉ đầu của SCB  R s - Segment Register. 
Để đọc /ghi dữ liệu: cần 2 lần truy nhập tới bộ nhớ: 
	 * (R s ) + s  truy nhập tới phần tử thứ s SCB, 
	 ** Khi D = 1: A+d  truy nhập tới dữ liệu. 
27 
28 
CHẾ ĐỘ QUẢN LÝ THEO MÔ ĐUN 
Đặc điểm: 
Không cần phân phối bộ nhớ liên tục, 
Không đòi hỏi công cụ đặc biệt  có thể áp dụng cho mọi MTĐT, 
Dễ dàng sử dụng chung mô đun giữa các CT, 
Hiệu quả phụ thuộc vào cấu trúc CT nguồn, 
Tồn tại hiện tượng phân đoạn ngoài (External Fragmentation). 
Thiếu bộ nhớ, phận đoạn ngoài  Swapping 
29 
CHẾ ĐỘ QUẢN LÝ THEO MÔ ĐUN 
SWAPPING: 
Do hệ thống đảm nhiệm, 
Không mất thông tin, 
Nội dung swapping: đưa một hoặc một số mô đun ra bộ nhớ ngoài, giải phóng chổ nạp mô đun mới. 
Cách chọn mô đun đưa ra: Option 
Mô đun tồn tại lâu nhất trong bộ nhớ, 
Mô đun có lần sử dụng cuối cùngcách đây lâu nhất, 
Mô đun có tần xuất sử dùng thấp nhất. 
IBM PC 286 trở lên : 
Một trong 2 chế độ của 286 và một trong 3 chế độ của 386 trở lên, 
Swapping - ngầm định – tiêu chuẩn 2. 
30 
D) CHẾ ĐỘ PHÂN TRANG 
Bộ nhớ được chia thành các phần bằng nhau – các trang (Pages), 
Các trang – đánh số 0, 1, 2, . . . - địa chỉ trang. 
31 
CHẾ ĐỘ PHÂN TRANG 
CT - cấu trúc phân trang, 
 Bảng quản lý trang PCB (Page Control Block), 
32 
CHẾ ĐỘ PHÂN TRANG 
Thực hiện CT: địa chỉ dữ liệu phải biểu diễn dưới dạng một cặp 
PCB  RAM, địa chỉ đầu của PCB  R P - Page Register. 
Để đọc /ghi dữ liệu: cần 2 lần truy nhập tới bộ nhớ: 
	 * (R P ) + p  truy nhập tới phần tử thứ p PCB, 
	 ** Khi D p = 1: A  d  truy nhập tới dữ liệu. 
33 
34 
CHẾ ĐỘ PHÂN TRANG 
Đặc điểm: 
Không cần phân phối bộ nhớ liên tục, 
Phải có công cụ kỹ thuật hõ trợ định vị trang, 
Không sử dụng chung mô đun giữa các CT, 
Hiệu quả không phụ thuộc vào cấu trúc CT nguồn, 
Bảng PCB có thể rất lớn, 
Không bị phân đoạn ngoài. 
Thiếu bộ nhớ (mọi trang đều đã được sử dụng)  Swapping 
35 
CHẾ ĐỘ PHÂN TRANG 
SWAPPING: 
Do hệ thống đảm nhiệm, 
Không mất thông tin, 
Nội dung swapping: đưa một trang ra bộ nhớ ngoài, giải phóng chổ nạp trang mới. 
Cách chọn trang đưa ra: Option 
Trang tồn tại lâu nhất trong bộ nhớ, 
Trang có lần sử dụng cuối cùngcách đây lâu nhất, 
Trang có tần xuất sử dùng thấp nhất. 
IBM PC 386 trở lên: ngầm định – tiêu chuẩn 2. 
36 
E) CHẾ ĐỘ KẾT HỢP MÔ ĐUN – PHÂN TRANG 
Bộ nhớ vật lý – phân trang, 
CT – cấu trúc mô đun, 
Mỗi mô đun – phân trang: 
37 
CHẾ ĐỘ KẾT HỢP MÔ ĐUN – PHÂN TRANG 
38 
CHẾ ĐỘ KẾT HỢP MÔ ĐUN – PHÂN TRANG 
Thực hiện CT: địa chỉ dữ liệu phải biểu diễn dưới dạng một nhóm 3: 
SCB  RAM, địa chỉ đầu của SCB  R s - Segment Register. 
Để đọc /ghi dữ liệu: cần 3 lần truy nhập tới bộ nhớ: 
	 * (R s ) + s  truy nhập tới phần tử thứ s SCB, 
	 ** Khi D = 1: A+d  truy nhập tới PCB s SCB, 
	 *** Khi D p = 1 : A  d  truy nhập tới dữ liệu. 
39 
40 
$4 - QUẢN LÝ BỘ NHỚ TRONG IBM PC 
Bốn mức ưu tiên 
(Privilege Levels) 
thực hiện CT: 0  3, cao nhất – 0, thấp nhất – 3. 
Nguyên tắc tuy nhập: một CT chỉ được quyền truy nhập tới CT và dữ liệu của CT bằng hoặc kém ưu tiên hơn. 
41 
IBM PC 
Bộ nhớ phân phối cho CT - 2 loại: bộ nhớ chung (G) và bộ nhớ riêng (L). 
42 
IBM PC 
2 chế độ: Chế độ thực (XT) và chế độ bảo vệ (AT). 
Chế độ Real Mode: 
43 
Chế độ Protected Mode 
44 
Chế độ Protected Mode 
Mỗi khối MCB (Memory Control Block) 
Bộ nhớ chung {MCB}  GDT 
(Global Descriptor Table). 
Bộ nhớ ri êng {MCB}  LDT 
(Local Descriptor Table). 
MCB: 8 Bytes/phần tử . 
Thực hiện CT: GDT  RAM, GDTR 
	 LDT  RAM, LDTR 
Lệnh: LGDTR , SGDTR , LLDTR , SLDTR 
45 
MCB 
46 
80286 
Địa chỉ tuyến tính: 32 bits. 
Khả năng: 
Vật lý : AR – 24 bits 
V ph = 2 24 
 = 16MB 
Lô gic: V lg =2 13 2 1 2 16 
 =2 30 
 = 1 GB 
47 
MCB 
48 
80386 - PENTUM 
G = 0 - Chế độ mô đun, đơn vị tính kích thước khối – Byte  L = 2 20 = 1 MB . 
G = 1 - Chế độ phân trang, đơn vị tính kích thước khối – trang (4 KB)  L = 2 20 P = 2 20 2 12 = 2 32 = 4 GB . 
D = 0 - Chế độ dữ liệu 16 bit, 
D = 1 - Chế độ dữ liệu 32 bit. 
49 
80386 - PENTUM 
Địa chỉ tuyến tính: 48 bits. 
Khả năng: 
Vật lý : AR – 32 bits 
V ph = 2 32 
 = 4GB 
Lô gic: V lg =2 13 2 1 2 32 
 =2 46 
 = 2 6 2 40 
 = 64 TB 
50 
80386 - PENTUM 
Chế độ kết hợp mô đun – phân trang: 
Phân phối bộ nhớ: 

File đính kèm:

  • pptxbai_giang_nguyen_li_he_dieu_hanh_chuong_3_quan_ly_bo_nho.pptx