intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Chương 7: Bộ nhớ ảo

Chia sẻ: Sdfas Vfdtg | Ngày: | Loại File: PDF | Số trang:26

121
lượt xem
10
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Là hình ảnh của bộ nhớ thực Tách rời địa chỉ quá trình truy cập và địa chỉ trên bộ nhớ thực . Địa chỉ ảo V: tham khảo bởi process . Địa chỉ thực R : có trong bộ nhớ thực Địa chỉ ảo được ánh xạ thành địa chỉ thực mỗi khi quá được trình thực thi dynamic address translation

Chủ đề:
Lưu

Nội dung Text: Chương 7: Bộ nhớ ảo

  1. Chương 7 BỘ NHỚ ẢO
  2. KHÁI NIỆM BỘ NHỚ ẢO  Là hình ảnh của bộ nhớ thực  Tách rời địa chỉ quá trình truy cập và địa chỉ trên bộ nhớ thực  Địa chỉ ảo V: tham khảo bởi process  Địa chỉ thực R : có trong bộ nhớ thực  Địa chỉ ảo được ánh xạ thành địa chỉ thực mỗi khi quá được trình thực thi  dynamic address translation  Sự cần thiết của bộ nhớ ảo  Dễ phát triển ứng dụng  Lưu trữ được nhiều quá trình trong bộ nhớ được  Tái định vị (relocation) các quá trình  Cho các quá trình chia sẻ vùng nhớ dễ dàng 2
  3. BỘ NHỚ ẢO LỚN HƠN BỘ NHỚ VẬT LÝ (page table for demand paging) (cache for disk) kích thước bộ nhớ ảo chỉ bị giới hạn bởi dung lượng ổ đĩa 3
  4. ÁNH XẠ ĐỊA CHỈ  Cách thực hiện : ánh xạ khối (hình 1)  Dùng giả lập sự liên tục của bộ nhớù (hình 2) Không gian địa chỉ ảo Không gian địa chỉ thực Cơ chế ánh xạ địa chỉ Hình 1 Hình 2 4
  5. CÁCH THỰC HIỆN ÁNH XẠ KHỐI a Địa chỉ ảo + b d a+b a b Địa chỉ thực l b’ + r Bảng ánh xạ khối b = chỉ số khối a= địa chỉ bảng ánh xạ khối b’= chỉ số khối thực d= độ dời trong khối l = bít hiện diện 5
  6. KỸ THUẬT PHÂN TRANG (PAGING)  Các khối bộ nhớ có kích thước bằng nhau thư  Khối trên bộ nhớ ảo : trang (page) page)  Khối trên bộ nhớ thựïc : page frame  Mỗi địa chỉ ảo có hai thành phần: phần:  Chỉ số trang (page number) number)  Độ dời của ô nhớ trong trang đó (offset) offset)  Mỗi quá trình có một bảng ánh xạ trang (page table) table)  Mỗi mục (entry) của bảng ánh xạ trang chứa entry)  Present bit  Secondary storage address  Page frame number  Modified bit  Các bít điều khiển khác  Dùng 1 register chứa địa chỉ thực của bảng ánh xạ trang của quá trình đang chạy 6
  7. ÁNH XẠ ĐỊA CHỈ TRỰC TIẾPTRONG HỆ THỐNG PHÂN TRANG 7
  8. LƯU TRỮ BẢNG ÁNH XẠ TRANG  Không gian địa chỉ ảo rất lớn  Dùng 32  64 bit địa chỉ  Với 32 bít địa chỉ, trang có size 4KB, bảng ánh xạ trang sẽ có 2^20 mục  Làm sao lưu trữ bảng ánh xạ trang của mọi quá trình ?  Giải pháp  Lưu trữ page table trong bộ nhớ ảo và phân trang nó  Một số hiện thực  Bảng ánh xạ trang đa cấp  Bảng ánh xạ trang ngược ngư 8
  9. VẤN ĐỀ KÍCH THƯỚC TRANG  Phụ thuộc phần cứng (size của frame)  Kích thước trang nên lớn hay nhỏ thư  Tỉ lệ page fault phụ thuộc vào page size và số frame cấp cho quá trình  Kích thước trang thông thường từ 1KB – 4KB 9
  10. KỸ THUẬT PHÂN ĐOẠN (SEGMENTATION) SEGMENTATION)  Các khối bộ nhớ có kích thước khác nhau tùy thuộc yêu cầu của quá trình. thư trình.  Địa chỉ ảo: ảo:  Chỉ số đoạn (Segment number) number)  Độ dời của ô nhớ trong đoạn (Displacement) Displacement)  Ưu điểm: iểm:  Dễ dàng mở rộng segment, thay đổi và tái biên dịch chương trình mà chương không cần link hay load lại  Cho phép chia sẻ, bảo vệ giữa các process. process.  Mỗi quá trình có một bảng ánh xạ đoạn (segment table) table)  Mỗi mục (entry) của bảng ánh xạ đoạn chứa entry)  Present bit  Secondary storage address  Chỉ số segment, chiều dài segment  Modified bit  Các bít điều khiển khác 10
  11. ÁNH XẠ ĐỊA CHỈ TRONG HỆ THỐNG PHÂN ĐOẠN 11
  12. PHÂN TRANG THEO YÊU CẦU  Kỹ thuật phân trang theo yêu cầu sử dụng kỹ thuật phân trang kết hợp với kỹ thuật swapping. swapping.  Một quá trình được xem như tập các trang, thường trú trong bộ nhớ được như thư phụ. phụ.  Khi cần xử lý, quá trình sẽ được nạp vào bộ nhớ chính và chỉ nạp được những trang cần thiết trong thời điểm hiện tại. Một trang được nạp tại. được vào bộ nhớ chính khi có yêu cầu. cầu.  Với mô hình này, cần cung cấp một cơ chế phần cứng giúp phân biệt các trang đang ở trong bộ nhớ chính và các trang trên đĩa. Có thể sử ĩa. dụng lại bit valid – invalid nhưng với ngữ cảnh mới : như  Valid : trang tương ứng là hợp lệ và ở trong bộ nhớ chính. ương chính.  Invalid : hoặc trang bất hợp lệ (không thuộc về không gian địa chỉ của quá trình), hoặc trang hợp lệ nhưng đang lưu trên bộ nhớ như phụ 12
  13. 13
  14. 14
  15. LỖI TRANG( ) 15
  16. 16
  17. CÁC CHIẾN LƯỢC QUẢN LÝ LƯ  Thay thế trang. trang.  Phân trang theo yêu cầu. cầu.  Các thuật toán thay thế trang. trang. 17
  18. THAY THẾ TRANG  Khi xảy ra một lỗi trang. trang.  Nếu không có khung trang nào trống, HĐH thực hiện công việc thay thế trang chọn 1 trang trong bộ nhớ mà không sử dụng tại thời điểm hiện tại ra không gian Swapping trên đĩa để giải phóng 1 khung trang dành chổ nạp trang cần truy xuất vào bộ nhớ. nhớ.  Có thể giảm bớt số lần chuyển trang bằng cách sử dụng thêm một bit cập nhật (dirty bit) phản ánh tình trạng trang có bị cập nhật hay không. không.  Bit cập nhật là 1 : thì trang cần được lưu tưữ trên đĩa được  Bit cập nhật là 0 : thì trang không bị thay đổi, không cần lưu trữ trang trở lại đĩa. ĩa. 18
  19. THAY THẾ TRANG oá Soá hieäu B it Dirty bit trang valid – invalid Cấu trúc một phần tử trong bảng trang 19
  20. PHÂN TRANG THEO YÊU CẦU  Kỹ thuật phân trang theo yêu cầu có thể ảnh hưởng mạnh đến tình trạng hoạt động của hệ thống. thống.  Để cài đặt kỹ thuật phân trang cần giải quyết hai vấn đề  Thuật toán cấp phát khung trang. trang.  Thuật toán thay thế trang. trang.  Thời gian thật sự cần để thực hiện một truy xuất bộ nhớ (TEA) là :  Gọi p là xác suất xảy ra một lỗi trang (0≤ p≤1) p≤1  p = 1 : một truy xuất sẽ phát sinh lỗi một trang. trang.  p = 0 : không có lỗi trang nào. nào. TEA=(1-p)ma + p(tdp) [+swap out] + swap in + tái kích hoạt TEA=(1 ma : thời gian truy xuất bộ nhớ tdp : thời gian xử lý lỗi trang 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2