BÀI 8 : CÁC MÔ HÌNH BỘ NHỚ ĐƠN GIẢN
Cầp phát liên tục :
Linker-Loader
Base & Bound
SinhVienZone.com
/>
1
Mô hình Linker-Loader
test.exe
OS
0x3000
jump 0x5000
jump 0x2000
0x1000
test.exe
0x7000
0x3000
(base)
Tại thời điểm Link, giữ lại các đòa chỉ logic
Vò trí base của tiến trình trong bộ nhớ xác đònh được vào thời
điểm nạp : đòa chỉ physic = đòa chỉ logic + base
SinhVienZone.com
/>
2
Mô hình Linker-Loader
Bảo vệ ?
Dời chuyển sau khi nạp ?
Không có vùng nhớ liên tục đủ lớn để chứa toàn bộ
tiến trình ?
SinhVienZone.com
/>
3
Mô hình Base & Bound
OS
Test.exe
0x3000
Test.exe
jump 0x2000
jump 0x2000
0x1000
Tại thời điểm Link, giữ lại các đòa chỉ logic
Vò trí base , bound được ghi nhận vào 2 thanh ghi:
Kết buộc đòa chỉ vào thời điểm thi hành => tái đònh vò được :
đòa chỉ physic = đòa chỉ logic + base register
Bảo vệ : đòa chỉ hợp lệ [base, bound]
SinhVienZone.com
/>
Bound
0x7000
Base
0x3000
4
Mô hình Base & Bound
Kết buộc đòa chỉ tại thời điểm thi hành=> hỗ trợ của phần cứng
Physical
addrs
logical addrs
CPU
MMU
memory
Tiến trình tăng trưởng ? Vẫn là vấn đề cấp phát liên tục !
Chia sẻ ?
Phân biệt code và data ?
SinhVienZone.com
/>
5