1. Trang chủ
  2. » Thể loại khác

Chương 3: Quản lý bộ nhớ

59 3 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 59
Dung lượng 1,92 MB

Nội dung

Chương Quản lý nhớ Dẫn nhập: • Bộ nhớ thiết bị lưu trữ thơng qua CPU trao đổi thơng tin với mơi trường ngồi • Bộ nhớ tổ chức mảng chiều từ nhớ (word), từ nhớ có địa • Hầu hết hệ điều hành đại cho phép chế độ đa nhiệm => có nhiều process nhớ thời điểm => cần vai trò quản lý nhớ OS Chức quản lý nhớ OS • Sự tương ứng địa logic địa vật lý (physic) : làm cách để chuyển đổi địa tượng trưng (symbolic) chương trình thành địa thực nhớ chính? • Quản lý nhớ vật lý: làm cách để mở rộng nhớ có sẵn nhằm lưu trữ nhiều tiến trình đồng thời? • Chia sẻ thông tin: làm phép hai tiến trình chia sẻ thơng tin nhớ? • Bảo vệ: làm để ngăn chặn tiến trình xâm phạm đến vùng nhớ cấp phát cho tiến trình khác? Địa chuyển đổi địa (1) • Địa – Logic => không gian địa logic – Vật lý => không gian đia vật lý • Chuyển đổi địa logic => vật lý – thời điểm chuyển đổi • Được thực ai? • Ưu nhược điểm ? Địa chuyển đổi địa (2) Test.cpp Bộ nhớ Địa chuyển đổi địa (4) Địa chuyển đổi địa (3) • Các bước chuyển đổi chương trình Các loại địa Chuyển đổi địa (1) • Việc chuyển đổi địa logic -> địa vật lý thực vào thời điểm – compile time – load time – execution time • Nhận xét – Compile time : • Thực vào thời điểm biên dịch • Phải biết trước vị trí nap tiến trình nhớ -> biêndịchlại cho lần nạp sau Chuyển đổi địa (2) • Nhận xét • load time – Thựchiện loader, nạp vào nhớ – Khi có thay đổi vị trí tiến trình (sau đó) cần load lại để tính tốn lại địa • execution time – Nếu trình thực thi tiến trình có di chuyển vị trí tiến trình thời điểm chuyển đổi địa run time – Cần dùng chế phần cứng đặc biệt 10 Cấp phát không liên tục Paging (9) 45 Cấp phát không liên tục Paging (10) • Bảng trang nghịch đảo : – Sử dụng bảng trang nghịch đảo cho tất tiến trình – Mỗi phần tử bảng trang nghịch đảo mơ tả frame có cấu trúc • : số hiệu page mà frame chứa • : id tiến trình sở hữu trang – Địa ảo 46 Cấp phát không liên tục Paging (11) 47 Bộ nhớ ảo • Các mơ hình quản lý nhớ học : – Nạp tồn tiến trình vào nhớ thi hành Vấn đề : (1) Nếu kích thước tiến trình lớn dung lượng nhớ (2) Tại thời điểm có thị thi hành • Mơ hình nhớ ảo : – Nạp thi hành phần tiến trình 48 Bộ nhớ ảo • Bộ nhớ ảo với chế phân trang – Phân chia Không gian địa logic thành page – Dùng nhớ phụ (disk) để mở rộng nhớ chính, lưu trữ phần tt chưa nạp – Bổ sung bit cờ hiệu Page Table để nhận dạng tình trạng page nạp vào nhớ chưa – Cơ chế chuyển đổi BNC BNP : swapping 49 50 51 52 Lỗi trang thay trang • 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ớ Nếu tìm thấy -> đến bước Nếu ko khung trang trống -> chọn nạn nhân Chuyển trang từ đĩa vào bnc; 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 53 Các thuật tốn thay trang • Mục tiêu : chọn trang “nạn nhân” trang mà sau thay gây lỗi trang • Các thuật tốn : – FIFO • Ghi nhận thời điểm trang vào bnc => trang lâu chọn – OPT ( tối ưu) • 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 54 • 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 tốn thay sau: a) FIFO b) OPT c) LRU 55 • FIFO * * * *  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 56 • OPT * * * *  1 1  2  2 * * 1 1 1 2 2 2 3 3 3  4   6  7 2 2 3 3 6 6 * 57 • LRU * * * *  1 1  2  * * 1 1 2 2 3   4  * * * 1  2 2 2 5  3 6 6  7 58 • Đánh giá – Số lỗi trang : FIFO > LRU > OPT – FIFO : dễ cài đặt ; 59

Ngày đăng: 15/08/2022, 22:45

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w