Bài giảng Hệ điều hành - Bài 6: Quản lý bộ nhớ - mục tiêu

55 175 1
Bài giảng Hệ điều hành - Bài 6: Quản lý bộ nhớ - mục tiêu

Đ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

Mục tiêu của Bài giảng Hệ điều hành - Bài 6: Quản lý bộ nhớ - mục tiêu là nhằm giúp các bạn hiểu các cách khác nhau để quản lý bộ nhớ, hiểu tiếp cận quản lý bộ nhớ phân trang và phân đoạn; vận dụng một tiếp cận quản lý bộ nhớ phù hợp với hệ thống xác định.

Ths Lương Trần Hy Hiến www.hutechos.tk  Hiểu cách khác để quản lý nhớ;  Hiểu tiếp cận quản lý nhớ phân trang phân đoạn;  Vận dụng tiếp cận quản lý nhớ phù hợp với hệ thống xác định Mở đầu  Vì phải quản lý nhớ?  Không gian địa lôgic  Không gian địa vật lý Cấp phát nhớ liên tục Cấp phát nhớ không liên tục  Phân trang (Paging)  Phân đoạn (Segmentation)  Kết hợp phân đoạn phân trang  Nhiệm vụ quản lý nhớ:  Tổ chức quản lý nhớ vật lý  Tổ chức quản lý nhớ logic  Định vị tái định vị tiến trình  Chia sẻ nhớ cho tiến trình  Bảo vệ vùng nhớ tiến trình  Một chương trình muốn chạy phải nạp vào nhớ  Vấn đề: ▪ Khi nạp? ▪ Nạp vào đâu? ▪ Nạp phần nào?  Quản lý nhớ giúp tối ưu hóa hoạt động nhớ Tối ưu hóa số tiến trình lúc nhớ nhằm nâng cao tính đa chương Tận dụng tối đa nhớ máy tính Là dãy nhớ liên tục  Mỗi nhớ (một word) có địa  Chương trình = tập câu lệnh (chỉ thị máy) + liệu  Nạp chương trình vào nhớ  đặt thị liệu vào ô nhớ  xác định ánh xạ thị, liệu vào địa nhớ  MOV AX, 10 MOV BX, 20 ADD AX, AX, BX 12 16  Khái niệm không gian địa lôgic kết buộc với khơng gian địa vật lý đóng vai trờ trung tâm việc quản lý nhớ tốt  Địa lôgic – phát sinh xử lý; gọi địa ảo  Địa vật lý – địa nhìn thấy đơn vị quản lý nhớ  Không gian địa – tập hợp tất địa ảo phát sinh chương trình  Không gian vật lý – tập hợp tất địa vật lý tương ứng với địa ảo Địa lôgic địa vật lý mơ hình kết buộc địa thời điểm biên dịch nạp;  Địa lôgic địa vật lý khác mơ hình kết buộc địa thời điểm thi hành  Việc ánh xạ thị, liệu vào địa nhớ xảy thời điểm:    Thời điểm biên dịch: địa vùng nhớ biết trước mã lệnh tuyệt đối (có địa tuyệt đối) tạo thời điểm biên dịch Nếu địa bắt đầu vùng nhớ bị thay đổi phải biên dịch lại Thời điểm nạp: Tạo mã lệnh tái định vị (relocatable code) địa vùng nhớ biết thời điểm biên dịch Thời điểm thi hành: Việc kết hợp mã lệnh địa trì hỗn lúc chạy chương trình tiến trình bị di chuyển từ phân đoạn nhớ đến phân đoạn nhớ khác Cần phải có hỗ trợ từ phần cứng để ánh xạ địa (ví dụ: ghi sở ghi giới hạn (base registers, limit registers))  Thiết bị phần cứng để ánh xạ địa ảo thành địa vật lý  Trong mô hình MMU, địa phát sinh tiến trình cộng thêm giá trị ghi tái định vị (relocation register) thời điểm truy xuất đến nhớ  Chương trình người dùng quan tâm đến địa lơgic; khơng thấy địa vật lý thật  Sử dụng bảng trang cho tiến trình  Một entry cho khung (bộ nhớ vật lý)  Một entry bao gồm địa ảo khung tiến trình sở hữu khung  Giảm kích thước lưu trữ bảng trang, tăng thời gian tìm kiếm bảng trang  Dùng bảng băm để tăng tốc tìm kiếm  Chia sẻ bảo vệ  Ở cấp độ trang  Đứng khía cạnh người dùng, bất tiện ▪ Vd: Đoạn mã nằm nhiều trang  phải chia sẻ tất trang với  Đoạn mã phải nằm vị trí giống trông tất không gian địa của tiến trình muốn chia sẻ   Hỗ trợ quản lý nhớ theo góc độ người dùng Một chương trình bao gồm nhiều phân đoạn (segment):  Đoạn mã  Biến toàn cục, liệu  stack  heap địa logic offset + segment segment table địa vật lý 2 user space physical memory space   Địa lôgic = Bảng phân đoạn (Segment table) – chuyển đổi địa hai chiều thành địa vật lý chiều Mỗi bảng gồm có:  Thanh ghi (base) – chứa địa vật lý bắt đầu phân đoạn nhớ  Thanh ghi giới hạn (limit) – kích thước phân đoạn Segment-table base register (STBR) lưu trữ địa bảng phân đoạn vùng nhớ  Segment-table length register (STLR) số segment sử dụng chương trình   Tái định vị  Động (dynamic partition)  Thông qua bảng phân đoạn  Chia sẻ  Có thể chia sẻ phân đoạn chương trình  Sử dụng chung số segment  Cấp phát  first fit/best fit  Có tượng phân mảnh ngoại vi  Bảo vệ  Mỗi entry thêm bit “valid bit” Nếu valid bit =  truy cập phân đoạn không hợp lệ  Hỗ trợ phân quyền theo thao tác read/write/execute  Ý tưởng:  Phân trang phân đoạn  Bộ nhớ = nhiều phân đoạn  Phân đoạn = nhiều trang Giải tình trạng phân mảnh ngoại vi  Mỗi phần tử bảng phân đoạn gồm hai thành phần:   Thanh ghi giới hạn (limit): kích thước phân đoạn (giống với phân đoạn thuần)  Thanh ghi sở (base): chứa địa bảng trang phân đoạn (khác với phân đoạn thuần) Một hệ thống máy tính với nhớ có kích thước 320MB Hệ thống sử dụng địa logic 48 bit Kích thước trang sử dụng 8KB Yêu cầu xác định thông số sau:  Cho biết số bit dùng cho địa offset  Số khung trang vật lý  Số trang logic không gian tiến trình 54 55 ... Hiểu cách khác để quản lý nhớ;  Hiểu tiếp cận quản lý nhớ phân trang phân đoạn;  Vận dụng tiếp cận quản lý nhớ phù hợp với hệ thống xác định Mở đầu  Vì phải quản lý nhớ?  Không gian địa... vật lý Cấp phát nhớ liên tục Cấp phát nhớ không liên tục  Phân trang (Paging)  Phân đoạn (Segmentation)  Kết hợp phân đoạn phân trang  Nhiệm vụ quản lý nhớ:  Tổ chức quản lý nhớ vật lý ... việc quản lý nhớ tốt  Địa lôgic – phát sinh xử lý; gọi địa ảo  Địa vật lý – địa nhìn thấy đơn vị quản lý nhớ  Không gian địa – tập hợp tất địa ảo phát sinh chương trình  Khơng gian vật lý –

Ngày đăng: 29/01/2020, 23:55

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan