Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 51 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
51
Dung lượng
0,9 MB
Nội dung
1 HTMT 25/06/2020 QUẢN LY BỘ NHỚ ❑ Quản lý nhớ nhiệm vụ quan trọng phức tạp hệ điều hành ❑ Bộ phận quản lý nhớ xem nhớ tài nguyên hệ thống dùng để cấp phát chia sẻ cho nhiều tiến trình trạng thái active ❑ Các hệ điều hành mong muốn có nhiều tiến trình nhớ Cơng cụ quản lý nhớ phân trang (paging) phân đoạn (segmentation) HTMT 25/06/2020 Nhiệm vụ quản lý nhớ ❑ Trong hệ thống đơn chương trình (uniprogramming), nhớ ngồi hệ điều hành, có chương trình thực ❑ Trong hệ thống đa chương (multiprogramming) nhớ ngồi hệ điều hành, có nhiều tiến trình hoạt động ◼ Trong hệ thống đa chương phận quản lý nhớ phải có nhiệm vụ đưa tiến trình vào nhớ có u cầu, kể nhớ khơng cịn khơng gian trống Nó phải bảo vệ hệ điều hành tiến trình nhớ tránh trường hợp truy xuất bất hợp lệ xảy HTMT 25/06/2020 Nhiệm vụ quản lý nhớ Bộ phận quản lý nhớ phải thực nhiệm vụ sau đây: • Sự tái định vị (Relocation): Trong hệ thống đa chương, không gian nhớ thường chia sẻ cho nhiều tiến trình khác yêu cầu nhớ tiến trình lớn không gian nhớ vật lý mà hệ thống có • Bảo vệ nhớ (Protection): Mỗi tiến trình phải bảo vệ để chống lại truy xuất bất hợp lệ vơ tình hay có chủ ý tiến trình khác HTMT 25/06/2020 Nhiệm vụ quản lý nhớ Chia sẻ nhớ (Sharing): Bất kỳ chiến lược cài đặt phải có tính mềm dẻo phép nhiều tiến trình truy cập đến địa nhớ VD: có nhiều tiến trình thực chương trình việc cho phép tiến trình truy cập đến copy chương trình thuận lợi cho phép tiến trình truy cập đến copy sở hữu riêng • HTMT 25/06/2020 Nhiệm vụ quản lý nhớ • • Tổ chức nhớ logic (Logical organization): Bộ nhớ hệ thống máy tính tổ chức dịng mảng, không gian địa bao gồm dãy có thứ tự byte word Tổ chức nhớ vật lý (Physical organization): Như biết nhớ máy tính tổ chức theo cấp: - Bộ nhớ cung cấp tốc độ truy cập liệu cao - Bộ nhớ phụ có tốc độ truy xuất chậm rẻ tiền so với nhớ HTMT 25/06/2020 Kỹ thuật cấp phát nhớ (nạp chương trình vào nhớ chính) Kỹ thuật phân vùng cố định (Fixed Partitioning) Kỹ thuật phân vùng động (Dynamic Partitioning) HTMT 25/06/2020 Kỹ thuật cấp phát nhớ (nạp chương trình vào nhớ chính) Kỹ thuật phân vùng cố định (Fixed Partitioning) Trong kỹ thuật không gian địa nhớ chia thành phần cố định, phần nằm vùng địa thấp dùng để chứa hệ điều hành, phần cịn lại, tạm gọi phần user program, sẵn sàng cho việc sử dụng tiến trình tiến trình nạp vào nhớ HTMT 25/06/2020 Kỹ thuật cấp phát nhớ (nạp chương trình vào nhớ chính) Có hai trở ngại việc sử dụng phân vùng cố định với kích thước nhau: - Thứ nhất: kích thước chương trình q lớn so với kích thước partition người lập trình phải thiết kế chương trình theo cấu trúc overlay, theo phần chia cần thiết chương trình nạp vào nhớ khởi tạo chương trình, sau người lập trình phải nạp tiếp modun cần thiết khác vào partition chương trình ghi đè lên chương trình liệu Cấu trúc chương trình overlay tiết kiệm nhớ yêu cầu cao người lập trình HTMT 25/06/2020 Kỹ thuật cấp phát nhớ (nạp chương trình vào nhớ chính) 10 - Thứ hai: kích thước chương trình nhỏ kích thước partition lớn so với kích thước partition khơng phải bội số kích thước partition dễ xảy tượng phân mảnh bên (internal fragmentation) nhớ, gây lãng phí nhớ Ví dụ: có khơng gian trống kích thước 30K nằm rãi rác nhớ, khơng nạp modun chương trình có kích thước 12K, tượng gọi tượng phân mảnh bên → Cả hai vấn đề khắc phục cách sử dụng phân vùng có kích thước khơng HTMT 25/06/2020 Bộ nhớ ảo 37 ❑ Hỗ ❑ trợ OS Page-replacement algorithm : Chọn process thay trang nhớ ◼ ◼ ◼ frame Mục tiêu: số lượng page fault nhỏ Được đánh giá cách thực thi giải thuật chuỗi tham chiếu nhớ (memory reference string) xác định số lần xảy page fault Frame-allocation algorithm : Cấp phát cho process frame? Bộ nhớ ảo 38 ❑ Hỗ − trợ OS Frame-allocation algorithm : OS phải định cấp cho process frame ◼ ◼ Cấp frame => nhiều page fault Cấp nhiều frame => giảm mức độ multiprogramming Lỗi trang thay trang 39 Truy suất đến trang đánh dấu bất hợp lệ (invalid) làm phát sinh lỗi trang, hdh thực : Xác định vị trí trang muốn truy suất đĩa Tìm khung trang trống nhớ ❑ a b c Nếu tìm thấy -> đến bước Nếu ko khung trang trống -> sử dụng thuật toán thay thể trang để chọn nạn nhân Ghi nội dung trang nạn nhân vào đĩa; cập nhật nội dung bảng trang, bảng khung trang Chuyển trang cần truy suất từ đĩa vào nhớ chính; cập nhật nội dung bảng trang, bảng khung trang Tái kích hoạt tiến trình người dùng 40 Các thuật toán thay trang 41 ❑ Mục tiêu : chọn trang “nạn nhân” trang mà sau thay gây lỗi trang ❑ Các thuật toán : − FIFO ◼ − OPT (OPTimal) ◼ − Ghi nhận thời điểm trang vào bnc => trang lâu chọn Thay trang lâu sử dụng tương lai => ko khả thi LRU (least recently used) ◼ Ghi nhận thời điểm cuối trang truy cập =>trang lâu chưa truy suất trang chọn Các thuật toán thay trang 42 ❑ Bài tâp Xét chuỗi truy xuất nhớ sau: 1, 2, 3, 4, 2, 1, 5, 6, 2, 1, 2, 3, 7, 6, Giả sử nhớ vật lí có khung trang Minh họa kết trình thay trang với thuật toán thay sau: a) FIFO b) OPT c) LRU Các thuật toán thay trang 43 ❑ FIFO : số lỗi trang 11 * * * * 1 1 2 - * * * * 5 2 3 3 4 4 Sử dụng khung trang Ban đầu khung trang trống * : có lỗi trang : trang nạp từ đĩa vào nhớ * * * 3 6 7 2 2 1 1 Các thuật toán thay trang 44 * ❑ OPT : số lỗi trang * * * 1 4 * * 2 3 6 6 * 6 7 Các thuật toán thay trang 45 ❑ LRU : số lỗi trang * * * * 1 1 2 * * 1 1 2 2 3 4 * * * 1 2 2 2 5 3 6 6 7 Các thuật toán thay trang 46 ❑ Đánh − Số lỗi trang : FIFO > LRU > OPT ❑ Nhận − − − giá xét : FIFO : dễ cài đặt OPT : Không khả thi LRU : cần hỗ trợ phần cứng để lưu thông tin thời gian page tham chiếu ◼ ◼ Ghi nhận nhãn thời gian Hoặc dùng stack Các thuật toán thay trang 47 thuật toán (LRU-Approximation) ❑ Các − − − − xấp xỉ LRU Thuật toán với bit reference phụ trợ Thuật toán “cơ hội thứ hai” (Clock or secondchance) Thuật toán “cơ hội thứ hai” nâng cao (Not Recently Used - NRU) Các thuật toán thống kê Tham khảo : http://blog.vnamct.com/2014/04/he-dieu-hanh-chuong-7-bo-nho-ao.html Các thuật toán thay trang 48 Các thuật toán thay trang 49 tập Xem xét chuỗi tham chiếu trang sau: 1,2,3,4,2,1,5,6,2,1,4,5,7,6,3,1 Bao nhiêu page_fault xuất giải thuật thay page FIFO, OPT, LRU (giả thuyết cấp frame) ❑ Bài Tóm tắt 50 ❑ Các − − Ưu/ nhược điểm Cách chuyển đổi địa logic sang địa vật lý ❑ Bộ − − mơ hình tổ chức nhớ nhớ ảo Khái niệm / ưu điểm Các thuật tốn thay trang Ơn tập quản lý process + quản lý nhớ 51 ❑ Thuật toán điều phối tiến trình (chương quản lý process ) ❑ Chuyển đổi địa mơ hình cấp phát nhớ ❑ Khái niệm nhớ ảo ❑ Bài toán thay trang