1. Chế độ phân vùng cố định
a. Khái niệm
- Bộ nhớ đƣợc chia thành n phần, mỗi phần có kích thƣớc cố định (khơng nhất thiết phải bằng nhau)
- Mỗi phần đƣợc sử dụng nhƣ một bộ nhớ độc lập, phục vụ thực hiện cho một chƣơng trình b. Đặ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 chƣơng trình ứng dụng - Sơ đồ bảo vệ thơng tin: theo tồn vùng
- Một số chƣơng điều khiển phải dƣợc copy vào từng vùng
- Chƣơng trình ngƣời dùng sẽ đƣợc gắn 1 số hiệu đặc trƣng cho 1 lớp bài tốn nào đó. - Chƣơng trình ngƣời dùng chỉ đƣợc nạp vào trong các chƣơng cịn rảnh và có lớp bài tốn
phù hợp.
- Kích thƣớc chƣơng khơng nhỏ hơn kích thƣớc chƣơng trình ngƣời dùng u cầu. c. Ƣu, nhƣợc điểm:
- Ƣu điểm: Cách quản lí bộ nhớ đơn giản.
- Nhƣợc điểm: Hiệu suất sử dụng thấp, dễ gây hiện tƣợng thiếu bộ nhớ giả tạo.
2. Chế độ phân vùng động a. Khái niệm 4 0 K B 4 0 0 K B 2 0 0 K B 5 KB 6 4 0 K B A B C,B L ớ p C T p h ụ c v ụ
- Khi khởi tạo HĐH bộ nhớ là 1 vùng liên tục.
- Ở 1 thời điểm nào đó, chƣơng trình xin bộ nhớ, HĐH sẽ cấp cho nó 1 vùng bộ nhớ liên tục nếu có.
- Khi chƣơng trình kết thúc, vùng nhớ đƣợc giải phóng và có thể dùng để nạp chƣơng trình khác. (Không phân chƣơng trƣớc, dùng đến đâu tạo bộ nhớ đến đó)
b. Đặc điểm:
- Sau 1 thời gian thực hiện, bộ nhớ xuất hiện hiện tƣợng phân mảnh. - Dễ phát sinh hiện tƣợng thiếu bộ nhớ giả tạo.
- Để khắc phục: Đƣa ra phƣơng pháp dồn chỗ: tạm ngừng 1 số chƣơng trình, thực hiện dồn chỗ, để tạo vùng nhớ liên tục.
c. Ƣu và nhƣợc điểm:
- Ƣu điểm: linh hoạt, mềm dẻo.
- Nhƣợc điểm: Vẫn phát sinh hiện tƣợng thiếu bộ nhớ giả tạo, tuy khắc phục đƣợc (dồn chỗ) nhƣng làm chậm thời gian tính tốn.
3. Chế độ quản lý theo môđun
a. Khái niệm
- Phân đoạn: Ngƣời ta xây dựng một bảng quản lý đoạn. Mỗi khoảng này gọi là một khối, địa chỉ đoạn khối này đặt ở đầu mỗi đoạn
1 2 3 4 5 6 m0 m1 m2 m3 SCB
(Segment Control Block)
SCB = {Phần tử}
D A l
Dấu hiệu nạp mô đun: 0 - Chưa nạp,
1 - đã nạp.
Địa chỉ nạp mô đun
Độ dài mô đun - Cấp phát bộ nhớ, - Bảo vệ,
- Địa chỉ dữ liệu:
- SCB nạp vào các thành ghi đoạn (CS, DS, SS, ES) - Để đọc, ghi dữ liệu cần 2 lần truy nhập.
b. Đặc điểm
- Do khi nạp chƣơng trình, mỗi mơđun nạp vào 1 đoạn bộ nhớ chỉ cần thỏa mãn điều kiện là đoạn đó đang cịn rảnh và kích thƣớc đoạn ≥ kích thƣớc mơđun Không cần 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)
- Do các môđun nạp không liên tục nhau (khơng nhất thiết theo thứ tự) nên có thể xảy ra thiếu bộ nhớ, phân đoạn ngoài swapping
c. Swapping - Nội dung:
Đƣa một hoặc một số mơ đun ra bộ nhớ ngồi, giải phóng chổ nạp mô đun mới Do hệ thống đảm nhiệm
Không mất thông tin - Cách chọn mô đun đƣa ra
Mô đun tồn tại lâu nhất trong bộ nhớ
Mơ đun có lần sử dụng cuối cùng cách đây lâu nhất Mơ đun có tần xuất sử dùng thấp nhất.
d. Ƣu và nhƣợc điểm:
- Ƣu điểm: Sử dụng kĩ thuật này cho phép tận dụng lỗ trống trong bộ nhớ mà không phải dồn chỗ phù hợp với cấu trúc đa đoạn (Overlay).
- Nhƣợc điểm: để thực hiện 1 lệnh ta phải thực hiện qua ánh xạ nhiều bộ nhớ. Do đó tốn thời gian.
(s, d)
4. Chế độ phân trang
a. Khái niệm
- Chia chƣơng trình thành m trang có kích thƣớc bằng nhau. - Chia bộ nhớ thành n trang có kích thƣớc bằng nhau.
- Giả sử với điều kiện m >> n (tức là không thể nạp cùng lúc vào bộ nhớ) - Nạp:
Ở một thời điểm, chỉ nạp đƣợc tối đa là n trang chƣơng trình vào bộ nhớ
Khi cần đến 1 trang chƣơng trình nào ta nạp trang chƣơng trình đó bổ sung vào bộ nhớ (cần đến đâu nạp đến đó)
- Hiện tƣợng lỗi trang (Fault Page): Khi thực hiện một chƣơng trình mà tốn hạng của lệnh tham chiếu đến một trang chƣơng trình chƣa đƣợc nạp vào bộ nhớ. Để khác phục hiện tƣợng trên dừng thực hiện chƣơng trình, nạp trang bị tham chiếu vào trong bộ nhớ. Nhƣ vậy trang vừa nạp sẽ thay thế 1 trang trong bộ nhớ. Có 3 cách thay trang (swapping): Thay trang chƣơng trình cho trang trong bộ nhớ có tần suất sử dụng thấp nhất Thay trang chƣơng trình đã đƣợc nạp vào bộ nhớ và ở đó lâu nhất
Thay trang chƣơng trình đƣợc sử dụng cách đây lâu nhất b. Đặ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 chƣơng trình
- Hiệu quả khơng phụ thuộc vào cấu trúc chƣơng trình nguồn - Bảng PCB có thể rất lớn
- Khơng bị phân đoạn ngồi
- Thiếu bộ nhớ (mọi trang đều đã đƣợc sử dụng) Swapping c. Ƣu nhƣợc điểm - Ƣu điểm: Page 0 Kích thước trang: 256B 512B 1 KB 2 KB 4 KB 1 2 3 4 5 6 7 Địa chỉ trang
Tiết kiệm bộ nhớ
Tạo bộ nhớ có cảm giác vơ hạn
- Nhƣợc điểm: Tốc độ chậm do thời gian thay trang lớn. Để khắc phục là sử dụng cache để hỗ trợ
5. Chế độ kết hợp
- Kết hợp giữa 2 chiến lƣợc phân đọan và phân trang. Bộ nhớ đƣợc chia làm nhiều đoạn Logic. 1 Đoạn bao gồm nhiều trang
- Tích hợp ƣu điểm của cả 2 chiến lƣợc trên.
- Tuy nhiên cũng tích hợp nhƣợc điểm của 2 chiến luợc trên. - Khắc phục: Sử dụng phần cứng để hỗ trợ tra bảng.