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

COMPUTER SYSTEM - Phuong-Giang Nguyen ď BaitapBonhoao

4 153 1

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 4
Dung lượng 249,7 KB

Nội dung

Bài tập Bộ nhớ ảo Bài 1: Một hệ thống máy tính sử dụng nhớ ảo với chế phân trang, cấu sau : đòa logic 32 bits, 512MB RAM; kích thước trang 4096 byte Trong hệ thống trên, xét tiến trình P1, P2, P3 với bảng trang tương ứng: Frame #300 Valid bit V I #301 V I Bảng trang P1 Frame #300 Valid bit V I #302 V #400 V Baûng trang cuûa P2 Frame Valid bit I I I Bảng trang P3 Câu 1.a: Cho biết hệ thống có khung trang ? Số lượng trang không gian đòa tiến trình ? Câu 1.b: Mô tả cách thức hệ thống thực truy xuất nhớ đến đòa sau, phân biệt vai trò MMU (Memory Management Unit) Hệ Điều Hành: a) P1 truy cập đến đòa 13000 b) P2 truy cập đến đòa 13000 c) P1 truy cập đến đòa 16383 d) P3 truy cập đến đòa 4096 e) P3 truy cập đến đòa 13000 f) P2 truy cập đến đòa 16383 g) Cho biết có hai tiến trình cấp phát khung trang #300 ? Biết : - Hiện hệ thống khung trang tự #0 - Nhằm đảm bảo tính hiệu thi hành, HĐH neo số trang nhớ (không phép swap out trang này), bao gồm : page 0, page cuûa P1; page 0, page cuûa P2 - Khi có lỗ trang, sử dụng chiến lược thay trang LRU (Least Recently Used) Giải: Câu 1.a: + Số khung trang = × 20 512 MB = = 217 = 128kb 4096b × 210 + Kích thước không gian nhớ ảo: 232b + Số trang: Caâu 1.b: 32 b = 220b (=1MB) 4096b 3 a P1 truy cập đòa 13000 => p = 13000 DIV 4096, d = 13000 MOD 4096 ====> p =3, d= 712 Như P1 truy xuất trang MMU dò bảng trang, trang invalid -> phát sinh lỗi trang HĐH cấp cho tiến trình P1 khung trang #0 để lưu trang 3, nạp trang, cập nhật bảng trang P1, trang ứng với khung trang #0 Frame Valid bit Frame Valid bit Frame Valid bit #300 V #300 V I I I I #301 V #302 V I #0 V #400 V Baûng trang P1 Bảng trang P2 Bảng trang P3

-> MMU dò bảng trang, trang ứng với khung trang 0, truy cập nhớ đ/c 712 khung trang #0 b P2 truy cập đòa 13000:

MMU dò bảng trang P2 :

> MMU truy cập nhớ đòa chỉ: khung trang #400, offset 712

c P1 truy cập đ/c 16383 : MMU dò bảng trang P1 :

> MMU truy cập nhớ đòa chỉ: khung trang #0, offset 4095

d P3 truy cập đ/c 4096: MMU dò bảng trang, trang không hợp lệ, lỗi trang HĐH: Tìm trang trống: không còn, phải chọn trang nạn nhân Các trang: (P1.0 #300 P1.2#301 P2.0#300 P1.2#302) bò neo Chỉ trang #0 #400 Theo chiến lược LRU, HDH chọn khung trang #400 chu kỳ gần sủ dụng #0 Cấp cho trang P3 khung trang #400, nạp trang cập nhật bảng trang Frame Valid bit Frame Valid bit Frame Valid bit #300 V #300 V I I I #400 V #301 V #302 V I #0 V I Baûng trang P1 Bảng trang P2 Bảng trang P3 MMU dò bảng trang P1

-> MMU truy cập nhớ đ/c cua khung trang #400 g Đó chế chia sẻ nhớ Trang P1 trang P2 ánh xạ vào #300 Nếu P1 sửa trang 0, trang P2 bò sửa đổi ngược lại Câu 2: Một hệ thống máy tính giả lập sử dụng nhớ ảo áp dụng chế cấp phát trang toàn cục (nghĩa chọn trang nạn nhân, hệ thống chọn trang tiến trình khác) Hệ thống có khung trang, kích thước trang 200 byte Trong hệ thống có tiến trình vừa nạp vào (nghĩa hệ thống chưa cấp phát khung trang cho tiến trình) Quá trình truy xuất nhớ tiến trình P1.200, P1.399, P2.400, P1.2000, P2.199, P1.350, P2.499, P1.2000, P2.0 a Tính chuỗi truy xuất trang b Mơ tả trình cấp phát trang hệ thống biết chiến lược sử dụng chiến lược tối ưu (sử dụng thông tin tương lai) Cho biết số lỗi trang c Diễn giải chi tiết cách thức hệ điều hành & MMU thực hiên truy cập nhớ đến trường hợp truy xuất cuối P1.2000, P2.0 câu b, biết bảng trang P1 có 10 phần tử, bảng trang P2 có 11 phần tử Giải: a) Chuỗi truy xuất trang Chia cho địa cho 200 200 P1.1 b) #0 #1 #2 #3 399 P1.1 400 P2.2 2000 P1.10 199 P2.0 350 P1.1 499 P2.2 2000 P1.10 P2.0 Chiến lược tối ưu: trang lâu dùng tương lai * P1.1 P1.1 P1.1 P1.1 * P2.2 P2.2 * P1.10 P1.10 * P2.0 P2.0 P1.1 P1.1 P2.2 P2.2 P1.10 P1.10 P2.0 P2.0 *: lỗi trang Ỵ lỗi c) *) Trường hợp P 1.2000 kế cuối MMU đổi P1.2000 Ỵ P1 < p =10, d = > MMU dò bảng trang p = P1.10 ứng với f = #2 MNU truy cập địa 〈f = #2, d= 0〉 *) Trường hợp P2.0 cuối MMU đổi P2.0 Ỵ P1

MMU dò bảng trang P = P1 ứng với f = #3 MMU truy cập địa Coi sai: ghi lỗi trang trang không thuộc tiến trình dừng Câu 3: Cho chương trình sau: Double A[10] = { 2, 3, 5, 7, 11, 13, 17, 19, 23, 29 }; double x = 10; void main() { int l = 0, r = 9; while (l a[mid]) l = mid+1; else if (x < a[mid]) r = mid-1; else break; } } thi hành máy tỉnh giả lập sử dụng nhớ ảo có kích thước trang 24 byte Các biến l, r, mid sử dụng biến ghi (không chiếm nhớ) Biến x cấp phát địa 216, A cấp phát địa 240 Yêu cầu xác định chuỗi truy xuất trang tiến trình (không xét trang chứa mã thi hành) Ghi chú: sizeof(double) = ... 4096, d = 13000 MOD 4096 ====> p =3, d= 712 Như P1 truy xuất trang MMU dò bảng trang, trang invalid -> phát sinh lỗi trang HĐH cấp cho tiến trình P1 khung trang #0 để lưu trang 3, nạp trang, cập nhật... I #301 V #302 V I #0 V #400 V Bảng trang P1 Bảng trang P2 Bảng trang cuûa P3

-> MMU dò bảng trang, trang ứng với khung trang 0, truy cập nhớ đ/c 712 khung... V #302 V I #0 V I Bảng trang P1 Bảng trang P2 Bảng trang P3 MMU dò bảng trang P1

-> MMU truy cập nhớ đ/c cua khung trang #400 g Đó chế chia sẻ nhớ Trang P1 trang

Ngày đăng: 11/12/2017, 18:35

TỪ KHÓA LIÊN QUAN

w