Tải bản đầy đủ (.ppt) (50 trang)

slide bài giảng kiến trúc máy tính và hệ điều hành chương 6 quản lý bộ nhớ, quản lý vào ra và quản lý tệp của hệ điều hành

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 (515.93 KB, 50 trang )

KI N TRÚ C MÁ Y Ế
TÍNH VÀ H ĐI U Ệ Ề
HÀNH
6.1. Qu n lý b nhả ộ ớ
CH NG 6: ƯƠ
QU N LÝ B NH , QU N LÝ VÀO RA Ả Ộ Ớ Ả
VÀ QU N LÝ T P C A H ĐI U HÀNHẢ Ệ Ủ Ệ Ề
6.2. Qu n lý vào raả
6.3. Qu n lý t pả ệ
6.1. Qu n lý b nhả ộ ớ
6.1.1. Gi i thi u:ớ ệ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
+ Một trong những nhiệm vụ quan trọng nhất của HĐH
+ Trong các hệ thống đa chương, HĐH phải đảm bảo các
yếu tố sau:
- Phương pháp chuyển đổi địa chỉ
- Phương pháp mở rộng bộ nhớ
- Phương pháp chia sẻ thông tin trong bộ nhớ
- Phương pháp bảo vệ vùng nhớ của các tiến trình
6.1. Qu n lý b nhả ộ ớ
6.1.1. Gi i thi u:ớ ệ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
+ Các nhiệm vụ của bộ phận quản lý bộ nhớ:
- Chia sẻ bộ nhớ (Sharing)
- Tổ chức bộ nhớ logic (Logical Organization)
- Tổ chức bộ nhớ vật lý (Physical Organiziation)
- Sự tái định vị (Relocation gồm swap-out và swap-in)
- Bảo vệ bộ nhớ (Protection)
6.1. Qu n lý b nhả ộ ớ
6.1.1. Gi i thi u:ớ ệ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ


+ Các cấu trúc chương trình:
- Cấu trúc chương trình Overlay
- Cấu trúc chương trình phân trang
- Cấu trúc chương trình phân đoạn
- Cấu trúc chương trình tuyến tính
- Cấu trúc chương trình động
6.1. Qu n lý b nhả ộ ớ
6.1.1. Gi i thi u:ớ ệ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Cấu trúc chương trình tuyến tính:
- Cấu trúc đơn giản, dễ viết, nhiều NNLT hỗ trợ
- Tập tin thực thi có tính độc lập cao, tốc độ thực hiện
chương trình cao
- Tốn bộ nhớ
- Các modun, thư viện được biên dịch lại thành 1 modun
- HĐH nạp toàn bộ modun chương trình vào bộ nhớ
6.1. Qu n lý b nhả ộ ớ
6.1.1. Gi i thi u:ớ ệ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Cấu trúc chương trình động:
- Modun chính có thể gọi các modun khác vào bộ nhớ
- HĐH chỉ nạp modun chính vào bộ nhớ khi bắt đầu
- Tiết kiệm bộ nhớ
- Chương trình được viết dưới dạng các modun riêng lẻ
- Các thư viện không được tích hợp trong modun chính
- Tính độc lập kém đi, chương trình thực hiện chậm hơn
6.1. Qu n lý b nhả ộ ớ
6.1.1. Gi i thi u:ớ ệ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Cấu trúc chương trình Overlay:

- Các modun lớp 0 có thể gọi nạp modun ở lớp 1, 2, 3,…
- Các modun trong 1 lớp không thể gọi lẫn nhau
- Chương trình được viết dưới dạng các modun riêng lẻ
và được phân thành các lớp khác nhau (0, 1, 2, 3,…)
- Kích thước của modun lớn nhất được xem là kích
thước của lớp
6.1. Qu n lý b nhả ộ ớ
6.1.1. Gi i thi u:ớ ệ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Cấu trúc chương trình Overlay:
- Người lập trình cung cấp đầy đủ các thông tin:
 Chương trình gồm bao nhiêu modun
 Mỗi modun bao gồm thư viện và thủ tục nào
 Kích thước của mỗi modun
 CT được chia thành bao nhiêu lớp modun
Xây dựng sơ đồ biên dịch và quản lý ⇒ sơ đồ Overlay
6.1. Qu n lý b nhả ộ ớ
6.1.1. Gi i thi u:ớ ệ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Cấu trúc chương trình Overlay:
- HĐH nạp sơ đồ Overlay, nạp các modun ở lớp 0
- Cơ chế nạp các modun khác:
 Các modun phải nạp đúng đoạn bộ nhớ của lớp
 Modun gọi nạp sau được quyền ghi đè modun
cùng lớp đã nạp vào bộ nhớ trước đó
- Tiết kiệm bộ nhớ hơn cấu trúc động
- Công tác cấp phát bộ nhớ đơn giản
6.1. Qu n lý b nhả ộ ớ
6.1.1. Gi i thi u:ớ ệ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ

* Cấu trúc chương trình phân trang:
- CT được biên dịch thành 1 modun duy nhất
- Chia modun thành các phần bằng nhau ⇒ trang CT
- Bộ nhớ cũng được phân trang ⇒ khung trang (frame)
- HĐH nạp các trang CT vào các khung trang bộ nhớ
- HĐH xây dựng bảng điều khiển trang PCT
- Tiết kiệm bộ nhớ nhưng tốc độ truy xuất dữ liệu chậm
6.1. Qu n lý b nhả ộ ớ
6.1.1. Gi i thi u:ớ ệ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Cấu trúc chương trình phân đoạn:
- CT biên dịch thành các modun riêng lẻ ⇒ đoạn CT
- Bộ nhớ cũng được phân đoạn (segmentation)
- HĐH nạp các đoạn CT vào các phân đoạn bộ nhớ
- HĐH xây dựng bảng điều khiển trang SCT
- Tiết kiệm bộ nhớ nhưng tốc độ truy xuất dữ liệu chậm
6.1. Qu n lý b nhả ộ ớ
6.1.2. Các chi n l c qu n lý b nhế ượ ả ộ ớ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
+ Các chiến lược nạp (fetch):
- Các chiến lược nạp yêu cầu
- Các chiến lược nạp phòng ngừa
+ Các chiến lược sắp xếp
- Best - fit
- Worst - fit
+ Các chiến lược thay thế
- First - fit
6.1. Qu n lý b nhả ộ ớ
6.1.3. C p phát liên t cấ ụ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ

+ Mỗi CT chiếm một dải vị trí nhớ liên tục
- Kỹ thuật phủ Overlay
- Đa chương với phân vùng cố định
- Các hệ đơn chương
+ Thích hợp với các hệ thống máy đầu tiên:
- Đa chương với phân vùng động
- Đa chương với kỹ thuật chuyển đổi (swapping)
Người sử dụng
Hệ điều hành
Không sử dụng
0
a
b
c
CPU
Thanh
ghi giới
hạn
a
6.1. Qu n lý b nhả ộ ớ
6.1.3. C p phát liên t cấ ụ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Các hệ đơn chương:
6.1. Qu n lý b nhả ộ ớ
6.1.3. C p phát liên t cấ ụ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Kỹ thuật phủ (Overlay):
+ Nạp vào bộ nhớ những phần CT cần dùng
+ Những phần CT chưa cần tới được lưu ở bộ nhớ phụ
+ Cung cấp cho lập trình viên phương pháp mở rộng giới

hạn bộ nhớ chính
+ Yêu cầu phải có kế hoạch cẩn thận và thời gian chi phối
chặt chẽ
6.1. Qu n lý b nhả ộ ớ
6.1.3. C p phát liên t cấ ụ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Kỹ thuật phủ (Overlay):
Hệ điều hành
Vùng phủ
0
a
b
c
Pha khởi
nhập
Pha tiến
hành
Phần đoạn mã và dữ liệu
phải được tồn tại trong bộ
nhớ chính trong suốt thời
gian thực thi
b
b
b
Pha xuất
1
2
3
6.1. Qu n lý b nhả ộ ớ
6.1.3. C p phát liên t cấ ụ

CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Các hệ thống đa chương với phân vùng cố định:
+ Bộ nhớ chính chia thành các phần có kích cỡ nhất định
+ CPU được chuyển giao nhanh chóng giữa những NSD
+ Các công việc được dịch ra bằng assembler và compiler
được thực thi trên một phần riêng
+ Các công việc được sắp xếp vào các hàng đợi ứng với
mỗi phần của bộ nhớ chính
6.1. Qu n lý b nhả ộ ớ
6.1.3. C p phát liên t cấ ụ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Các hệ thống đa chương với phân vùng cố định:
+ Hạn chế của phân vùng cố định kích thước bằng nhau:
- Kích thước CT quá lớn so với kích thước 1 phân vùng:
- Kích thước CT quá nhỏ so với kích thước 1 phân vùng:
 Thiết kế CT theo cấu trúc overlay
 Phân mảnh bộ nhớ
 Lãng phí bộ nhớ
Sử dụng các phân vùng có kích thước không bằng nhau
6.1. Qu n lý b nhả ộ ớ
6.1.3. C p phát liên t cấ ụ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Các hệ thống đa chương với phân vùng cố định:
Hệ điều hành
Phần 1
Phần 2
Phần 3
Hàng đợi cho vùng 1
Hàng đợi cho vùng 2
Hàng đợi cho vùng 3

0
a
b
c
d
6.1. Qu n lý b nhả ộ ớ
6.1.3. C p phát liên t cấ ụ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Các hệ thống đa chương với phân vùng cố định:
Hệ điều hành
Phần 1
Phần 2
Phần 3
Hàng đợi cho vùng 1
Hàng đợi cho vùng 2
Hàng đợi cho vùng 3
0
a
b
c
d
6.1. Qu n lý b nhả ộ ớ
6.1.3. C p phát liên t cấ ụ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Các hệ thống đa chương với phân vùng cố định:
Hệ điều hành
Phần 1
Phần 2
Phần 3
Hàng đợi

0
a
b
c
d
6.1. Qu n lý b nhả ộ ớ
6.1.3. C p phát liên t cấ ụ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Các hệ thống đa chương với phân vùng động:
Tiến trình A cần 15K
Tiến trình B cần 20K
Tiến trình C cần 10K
Tiến trình D cần 25K
Tiến trình E cần 14K
Tiến trình F cần 32K
Hệ điều hành
Tự do
Hệ điều hành
Tự do
6.1. Qu n lý b nhả ộ ớ
6.1.3. C p phát liên t cấ ụ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Các hệ thống đa chương với phân vùng động:
Tiến trình A cần 15K
Tiến trình B cần 20K
Tiến trình C cần 10K
Tiến trình D cần 25K
Tiến trình E cần 14K
Tiến trình F cần 32K
Tiến trình A 15K

Hệ điều hành
Tự do
6.1. Qu n lý b nhả ộ ớ
6.1.3. C p phát liên t cấ ụ
CH NG 6: QU N LÝ B NH , VÀO RA, T PƯƠ Ả Ộ Ớ Ệ
* Các hệ thống đa chương với phân vùng động:
Tiến trình B cần 20K
Tiến trình C cần 10K
Tiến trình D cần 25K
Tiến trình E cần 14K
Tiến trình F cần 32K
Tiến trình G cần 11K
Tiến trình A 15K
Tiến trình B 20K

×