Bài giảng Hệ điều hành: Chương 3 - ThS. Huỳnh Triệu Vỹ

56 88 0
Bài giảng Hệ điều hành: Chương 3 - ThS. Huỳnh Triệu Vỹ

Đ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

Bài giảng Hệ điều hành Chương 3 Quản lý bộ nhớ do ThS. Huỳnh Triệu Vỹ biên soạn với nội dung chính là: Nhiệm vụ của bộ phận quản lý bộ nhớ, cấu trúc chương trình phân trang, kỹ thuật cấp phát bộ nhớ,... Mời các bạn cùng tham khảo!

CHƯƠNG III: QUẢN LÝ BỘ NHỚ ThS Huỳnh Triệu Vy TỔNG QUAN 1.1 Vì phải tổ chức, quản lý nhớ?      CPU trao đổi thơng tin với nhớ Các chương trình muốn thực thi cần nạp vào nhớ chính, tạo lập tiến trình tương ứng để xử lý Các hệ thống đa chương nhớ ngồi HĐH có nhiều tiến trình hoạt động Kích thước nhớ hữu hạn u cầu nhớ vơ hạn … 1.1 Vì phải tổ chức, quản lý nhớ?  Như vậy, HĐH cần phải tổ chức quản lý nhớ cách hợp lý để có thể:  Đưa tiến trình vào nhớ có yêu cầu, cho dù nhớ khơng cịn khơng gian trống  Bảo vệ tiến trình hệ điều hành tiến trình nhớ, tránh trường hợp truy xuất bất hợp lệ xảy 1.2 Nhiệm vụ phận quản lý nhớ      Tái định vị Bảo vệ nhớ Chia sẻ nhớ Tổ chức nhớ logic Tổ chức nhớ vật lý Tái định vị Trong hệ thống đa chương khơng gian nhớ thường chia cho nhiều tiến trình yêu cầu nhớ tiến trình ln lớn khơng gian nhớ vật lý mà tiến trình mà hệ thống hiện có  Cần thực hiện chế hoán đổi (Swap):   Một chương trình hoạt động nhớ bị đưa đĩa (swap-out) đưa vào lại(swap-in) thời điểm thích hợp Tái định vị(tt) Khi thực hiện swap-in chương trình vào lại nhớ HĐH phải định vị vào vị trí mà trước bị swap-out  HĐH phải có chế ghi lại tất thông tin liên quan đến chương trình bị swap-out Các thơng tin sở để hệ điều hành swap-in chương trình vào lại nhớ cho tiếp tục hoạt động  Bảo vệ nhớ Mỗi tiến trình phải bảo vệ để chống lại truy xuất bất hợp lệ vơ tình hay có chủ ý tiến trình khác  Mỗi tiến trình phép truy suất đến không gian địa mà HĐH cấp cho  Bộ phận Qlý nhớ phải biết không gian địa tất tiến trình nhớ  Khi tiến trình đưa địa truy xuất phận Qlý nhớ phải kiểm tra tất yêu cầu truy xuất nhớ  Chia sẻ nhớ  Bất kỳ chiến lược cài đặt phải có tính mềm dẻo phép nhiều tiến trình truy cập đến địa nhớ Tổ chức nhớ logic      Bộ nhớ hệ thống máy tính tổ chức dịng mảng Không gian địa bao gồm dãy có thứ tự byte word Bộ nhớ phụ tổ chức tương tự Cách tổ chức có kết hợp chặt chẻ với phần cứng máy tính lại khơng phù hợp với cách xây dựng chương trình Đại đa số chương trình tổ chức thành modul 2.4 Ky thuật phân đoạn đơn(tt)   Khi tiến trình nạp vào nhớ, đoạn nạp vào phân đoạn trống nhớ, phân đoạn khơng liên tục Để theo dõi đoạn tiến trình khác nhớ HĐH sử dụng bảng phân đoạn (SCT), thông thường tiến trình có bảng phân đoạn riêng 2.4 Ky thuật phân đoạn đơn(tt)  Mỗi phần tử bảng phân đoạn tối thiểu gồm trường   Trường thứ nhất: cho biết địa sở phân đoạn mà đoạn chương trình tương ứng nạp Trường thứ 2: cho biết độ dài phân đoạn 2.4 Ky thuật phân đoạn đơn(tt) 478 Code 100k Data 64k 356 Stack 150 228 164 64 base 64 164 356 limit 100 64 150 KỸ THUẬT BỘ NHỚ ẢO 3.1 Khái niệm nhớ ảo  Để thực thi chương trình có kích thước lớn nhớ vật lý cấp phát cho     cần xây dựng chương trình theo cấu trúc Overlay gây khó khăn cho người lập trình Để khắc phục khó khăn cho người lập trình, ý tưởng sử dụng nhớ ảo đời Ky thuật nhớ ảo cho phép xử lý tiến trình khơng nạp tồn vào nhớ vật lý 3.1 Khái niệm nhớ ảo(tt)   Bộ nhớ ảo mơ hình hố nhớ bảng lưu trữ lớn đồng nhất, tách biệt hẳn khái niệm không gian địa khơng gian vật lý Người sử dụng nhìn thấy làm việc không gian địa ảo, chuyển đổi sang không gian vật lý hệ điều hành thực hiện với trợ giúp chế phần cứng 3.2 Cài đặt nhớ ảo  Có thể cài đặt nhớ ảo theo ky thuật   Phân trang theo yêu cầu: Sử dụng ky thuật phân trang kết hợp với ky thuật swap Phân đoạn theo yêu cầu: sử dụng ky thuật phân đoạn kết hợp với ky thuật swap 3.2.1 Phân trang theo yêu cầu    Sử dụng ky thuật phân trang kết hợp với ky thuật swap Một chương trình xem tập hợp trang thường trú nhớ Khi thực thi hệ thống khơng nạp tồn chương trình vào nhớ mà nạp trang cần thiết thời điểm hiện  Một trang nạp vào nhớ cần thiết 3.2.1 Phân trang theo yêu cầu(tt)  Cần có chế phần cứng để phân biệt trang nhớ trang nhớ   Tổ chức bảng trang ky thuật phân trang đơn phần tử bảng trang chứa nhiều thông tin phức tạp Cần có bit cho biết trang tương ứng tiến trình có hay khơng nhớ chinh bit cho biết trang có bị sửa đổi hay không so với lần nạp gần Hiện tượng lỗi trang Khi hệ thống truy xuất tới trang đánh dấu bất hợp lệ làm phát sinh lỗi trang, HĐH xử lý lỗi trang sau: Bước 1: Kiểm tra truy xuất đến nhớ hợp lệ hay bất hợp lệ - Nếu truy xuất bất hợp lệ : kết thúc tiến trình - Ngược lại : đến bước Bước 2: Tìm vị trí chứa trang muốn truy xuất đĩa Bước 3: Tìm khung trang trống nhớ - Nếu tìm thấy: đến bước - Ngược lại, thực hiện chế swap out trang thích hợp nhớ sau cập nhật bảng trang tương ứng đến bước Hiện tượng lỗi trang(tt) Bước 4: - Chuyển trang muốn truy xuất từ nhớ phụ vào nhớ khung trang xác định - Cập nhật nội dung bảng trang tương ứng - Tái kích hoạt tiến trình người sử dụng Thay trang    Khi khung đầy mà cần nạp thêm trang phải thay trang có khung Nếu trang bị thay có thay đổi nội dung cần phải đưa đĩa Có phương pháp chọn phần tử thay thế:  Optimal: Thay trang lâu sử dụng tương lai  FIFO: trang nhớ lâu chọn thay  LRU (Least Recently Used ): trang chọn để thay trang lâu chưa truy xuất 3.2.2 Phân đoạn đoạn theo yêu cầu Bộ nhớ ảo bao gồm đoạn (segment) có kích thuớc khơng cố định  Khi nạp đoạn vào nhớ hệ điều hành tìm khoảng trống đủ để nạp đoạn  Có bảng đoạn quản lý đoạn  3.2.3 Phân đoạn kết hợp phân trang Kết hợp ưu điểm phân đoạn phân trang  Bộ nhớ ảo bao gồm đoạn  Trong đoạn thực phân trang  Tài liệu tham khảo    Trần Hạnh Nhi, Giáo trình HĐH nâng cao, ĐH Khoa học Tự nhiên Tp.HCM, 1998 Nguyễn Gia Định-Nguyễn Kim Tuấn, Nguyên Lý HĐH, NXB Khoa học ky thuật, 2005 William Stallting, Operating Systems, Prentice Hall, 1995 ... nhớ bị đưa đĩa (swap-out) đưa vào lại(swap-in) thời điểm thích hợp Tái định vị(tt) Khi thực hiện swap-in chương trình vào lại nhớ HĐH phải định vị vào vị trí mà trước bị swap-out  HĐH phải có... swap-out  HĐH phải có chế ghi lại tất thông tin liên quan đến chương trình bị swap-out Các thơng tin sở để hệ điều hành swap-in chương trình vào lại nhớ cho tiếp tục hoạt động  Bảo vệ nhớ... 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 1.4 Các cấu trúc chương trình      Cấu trúc chương trình tuyến tính Cấu trúc chương trình động Cấu trúc chương

Ngày đăng: 10/05/2021, 23:14

Mục lục

    CHƯƠNG III: QUẢN LÝ BỘ NHỚ

    1.1 Vì sao phải tổ chức, quản lý bộ nhớ?

    1.2 Nhiệm vụ của bộ phận quản lý bộ nhớ

    Tái định vị(tt)

    Bảo vệ bộ nhớ

    Chia sẻ bộ nhớ

    Tổ chức bộ nhớ logic

    Tổ chức bộ nhớ vật lý

    1.3 Không gian địa chỉ và không gian vật lý

    1.4 Các cấu trúc chương trình

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

Tài liệu liên quan