Bài giảng Nguyên lí hệ điều hành - Chương 3: Quản lý bộ 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ị.  
1
QUẢN LÝ BỘ NHỚ  
Với hệ thống:  
Giá trị  
Tên biến  
Địa chỉ  
Quản lý bộ nhớ  
Quản lý tiến trình  
Quản lý Processor  
2
$1 – CÁC BƯỚC XỬ LÝ CT  
Lý thuyết chương trình dịch  
Ph.tích cú pháp + ph. tích ngữ nghĩa + Sinh mã + Tối ưu hoá  
Mô đun  
đích  
Tên user’s  
Tên trong  
CT  
.OBJ  
Hàm địa chỉ  
Hàm tên  
I + J  
A + B  
A + I  
3
CÁC BƯỚC XỬ LÝ CT  
QL  
Tiến trình  
Quản lý bộ nhớ  
QL  
Processor  
Mô đun  
đích  
CT  
thực hiện  
Mô đun  
thực hiện  
KQ  
Thực hiện  
.COM  
.EXE  
Biên tập  
(Link)  
Nạp và định vị  
(Fetch)  
Vai trò của Biên tập (Input/Output),  
Khái niệm bộ nhớ lô gíc.  
4
CÁC BƯỚC XỬ LÝ CT  
Tổ chức bộ  
nhớ lô gíc?  
Lô gíc  
h
n
B
h
c
í
đ
l
u
d
o
M
c
g
i
a
L
n
g
n
h
ô
I
t
h
K
t
N
ê
l
K
n
u
n
d
o
i
h
n
M
ê
s
T
r
e
s
u
Xác lập quan hệ:  
Như thế nào?  
Khi nào?  
Tên trong  
Tổ chức bộ  
A
nhớ vật lý?  
Chương trình thực hiện  
5
Bộ nhớ vật lý  
$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ế.  
6
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.  
7
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,  
m0  
m1 m2  
. . . . . .  
mn  
l
8
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.  
9
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,  
m0  
m0  
m0  
m0  
m2  
m2  
m2  
m1  
10  
m0  
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.  
11  
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)  
.DLL  
m0  
m0  
m0  
m2  
m2  
m2  
m1  
m0  
m0  
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.  
12  
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. . . .  
13  
RAM  
80  
KB  
80  
KB  
MỨC 0  
80  
KB  
Moduls  
mức 1  
60  
KB  
90  
KB  
100  
KB  
100  
KB  
MỨC 1  
MỨC 2  
40  
KB  
Moduls  
mức 2  
60  
KB  
60  
KB  
40  
KB  
70  
KB  
110  
KB  
110  
KB  
Moduls  
mức 3  
MỨC 3  
Tổng cộng:  
270 KB  
730 KB  
.OVL  
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,  
m0  
RAM  
m0  
m1  
m1  
m2  
m3  
Đặ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.  
15  
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.  
p0 p1 p2 p3 p4 p5 p6  
p0  
p2  
RAM  
Đặ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.  
16  
$3 - QUẢN LÝ BỘ NHỚ VẬT LÝ  
Đặc điểm:  
Có kích thước cụ thể,  
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ớ?  
17  
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.  
18  
a) Chế độ phân vùng cố định  
5 KB  
Bộ nhớ n phần,  
A
mỗi phần có kích  
thước cố định  
(không nhất thiết  
bằng nhau),  
C,B  
sử dụng như một  
bộ nhớ độc lập,  
phục vụ thực hiện  
1 CT.  
B
19  
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.  
20  
Tải về để xem bản đầy đủ
pptx 50 trang Thùy Anh 27/04/2022 6100
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

File đính kèm:

  • pptxbai_giang_nguyen_li_he_dieu_hanh_chuong_3_quan_ly_bo_nho.pptx