Bài giảng Hệ điều hành - Chương 4: Memory (Lương Minh Huấn) có nội dung trình bày về các khái niệm cơ sở, các kiểu địa chỉ nhớ, chuyển đổi địa chỉ nhớ, cấp phát bộ nhớ liên tục, cấp phát bộ nhớ không liên tục, quản lý bộ nhớ, nạp chương trình vào bộ nhớ,... Mời các bạn cùng tham khảo chi tiết nội dung bài giảng!
TRƯỜNG ĐẠI HỌC SÀI GÒN CHƯƠNG 4: MEMORY GV: LƯƠNG MINH HUẤN NỘI DUNG I Khái niệm sở II Các kiểu địa nhớ III Chuyển đổi địa nhớ IV.Cấp phát nhớ liên tục V Cấp phát nhớ không liên tục I KHÁI NIỆM CƠ SỞ ➢ 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 I KHÁI NIỆM CƠ SỞ ➢Quản lý nhớ công việc hệ điều hành với hổ trợ phần cứng nhằm phân phối, xếp process nhớ cho hiệu tối ưu ➢Mục tiêu cần đạt nạp nhiều process vào nhớ tốt (gia tăng tính đa chương) ➢Trong hầu hết hệ thống, kernel chiếm phần cố định nhớ, phần lại phân phối cho process I KHÁI NIỆM CƠ SỞ ➢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 I KHÁI NIỆM CƠ SỞ ➢Layout nhớ: II CÁC KIỂU ĐỊA CHỈ NHỚ ➢Bộ nhớ: 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ớ II CÁC KIỂU ĐỊA CHỈ NHỚ ➢ Địa vật lý (physical address – địa thực, địa tuyệt đối) vị trí thực nhớ ➢ Địa logic (logical address – địa luận lý) tham chiếu đến vị trí nhớ độc lập với cấu trúc, tổ chức vật lý nhớ ▪ Các trình biên dịch (compiler) tạo mã lệnh chương trình mà đó, tham chiếu nhớ địa logic ➢ Địa tương đối (relative address) kiểu địa logic địa biểu diễn tương đối so với điểm xác định chương trình ➢ Khi lệnh thực thi, tham chiếu đến địa logic phải dịch sang địa vật lý Thao tác cần có hổ trợ phần cứng để đạt hiệu suất cao NẠP CHƯƠNG TRÌNH VÀO BỘ NHỚ ➢Bộ linker: kết hợp object module thành file nhị phân khả thực thi gọi load module ➢Bộ loader: nạp load module vào nhớ: CƠ CHẾ THỰC HIỆN LINKING PHÂN ĐOẠN PHÂN ĐOẠN ➢Địa logic = ➢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)–chỉ 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)chỉ số segment sử dụng chương trình PHÂN ĐOẠN CHUYỂN ĐỔI ĐỊA CHỈ ➢Mỗi địa ảo : ➢số hiệu phân đoạn s : sử dụng mục đến bảng phân đoạn ➢địa tương đối d : có giá trị khoảng từ đến giới hạn chiều dài phân đoạn Nếu địa tương đối hợp lệ, cộng với giá trị chứa ghi để phát sinh địa vật lý tương ứng CHUYỂN ĐỔI ĐỊA CHỈ CHUYỂN ĐỔI ĐỊA CHỈ KIẾN TRÚC PHÂN ĐOẠN ➢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 KIẾN TRÚC PHÂN ĐOẠN KIẾN TRÚC PHÂN ĐOẠN ➢Bảo vệ ▪ Mỗi entry thêm bit “valid bit” Nếu valid bit = đoạn không hợp lệ truy cập phân ▪ Hỗ trợ phân quyền theo thao tác read/write/execute CHIA SẺ CÁC ĐOẠN KẾT HỢP PHÂN TRANG VÀ PHÂN ĐOẠN ➢ Ý 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) KẾT HỢP PHÂN TRANG VÀ PHÂN ĐOẠN KẾT HỢP PHÂN TRANG VÀ PHÂN ĐOẠN KẾT HỢP PHÂN TRANG VÀ PHÂN ĐOẠN ... 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 I KHÁI NIỆM CƠ SỞ ➢Quản lý nhớ công việc hệ điều hành với hổ trợ phần cứng nhằm phân phối, xếp process... kích thước nhớ lập trình KỸ THUẬT PHỦ LẤP (OVERLAY) ÁNH XẠ BỘ NHỚ TẠI THỜI ĐIỂM NẠP CHƯƠNG TRÌNH ? ?Hệ điều hành trả địa bắt đầu nạp tiến trình thay địa tham chiếu tiến trình (đang địa logic) địa... First-fit: Cấp phát vùng nhớ trống liên tục đủ lớn ▪ Best-fit: Cấp phát vùng nhớ trống liên tục nhỏ đủ lớn Chiến lược tạo lỗ trống nhỏ thừa lại => phải tìm kiếm tồn danh sách vùng trống ▪ Worst-fit: