Khởi động lại tiến trinh.

Một phần của tài liệu Giáo trình nguyên lý hệ điều hành phần 2 hồ đắc phương (Trang 58 - 60)

Nếu không có frame trống, hệ thống phải hoán chuyển hai trang (một trang ra và một trang vào). Thời gian xử lý lỗi trang tăng gấp đôi, nên thời gian truy nhập có ích cũng tăng theo.

Kỳ thuật b i t thay đ ổ i (modify bit) có thể giảm thời gian xử lý lỗi trang. Bit này được gắn với mỗi frame, xác định trang nằm trong frame có khác

Irang "gốc" nằm trên ổ đĩa hay không. Khi trang được ghi, phần cứng thiết lập giá trị 1 cho bit này để chỉ ra trang đã bị thay đổi (so với trang gốc). Khi chọn trang thay thế, hệ thống kiểm tra bit thay đổi tương ứng. Bit có giá trị 1, nghĩa là trang đã bị thay đổi sau khi chuyển vào bộ nhớ. Nếu chuyển trang này ra thì cần ghi lại vào ổ cứng. Nếu bit cỏ giá trị 0, thì trang chưa bị thay đổi từ khi đưa vào bộ nhớ, vì thế hệ thống không phải ghi lại trang (vì trang trong bộ nhớ giống trang trong ổ đĩa). Công nghệ này cũng áp dụng được cho trang có thuộc tính chi đọc (ví dụ như, những trang chứa mã nhị phân). Thời gian xừ lý lỗi trang giảm đáng kể vì thời gian dành cho thao tác vào/ra giảm xuống còn một nửa khi chọn trang chưa bị thay đổi.

Thông qua cơ chế thay thế trang, lập trình viên có thể thao tác trên bộ nhớ ảo lớn hơn bộ nhớ vật lý. Bộ nhớ logic tồn tại độc lập và không bị ràng buộc bởi kích thước bộ nhớ vật lý. Tiến trình người dùng có kích thước 30 trang vẫn có thể thực thi trên 10 frame, và HĐH sử dụng thuật toán thay thế trang để tìm frame trống khi cần thiết. Nội dung trang bị thay thế được ghi ra ổ cứng. Những tham chiếu sau này đến trang bị chuyển ra sẽ gây ra tình trạng lỗi trang. Khi đó, trang nói trên lại được đưa trở lại bộ nhớ và rất có thể lại thế chỗ cho một trang khác.

Phần sau trình bày hai vấn đề quan trọng khi triển khai phương pháp phân trang theo yêu cầu là thuật toán cấp phát frame và thuật toán Thay thế trang. Nếu có nhiều tiến trinh nằm trong bộ nhớ, HĐH phải quyết định cấp phát cho mồi tiến trình bao nhiêu frame. Hom nữa, khi có yêu cầu thay thế trang, HĐH phải chọn frame nào để thay thế.

10.5. THUẬT TOÁN THAY THÉ TRANG

Có nhiều thuật toán thay thế trang khác nhau và mỗi HĐH lựa chọn một phương pháp thay thế cụ thể với tỷ lệ lỗi trang ít nhất. Để đánh giá hiệu suất, cần thực hiện thuật toán trên một dãy tham chiếu bộ nhớ cụ thể và tính toán số lỗi trang. Có thể sinh ngẫu nhiên dãy tham chiếu giả (thông qua một bộ tạo số ngẫu nhiên), hoặc theo dõi một hệ thống đang vận hành và ghi lại địa chỉ mồi tham chiếu bộ nhớ. Cách sau tạo ra nhiều dữ liệu (khoảng 1 triệu địa chỉ/s). Để giảm lượng dữ liệu nhận được, cần chú ý hai điểm:

Một phần của tài liệu Giáo trình nguyên lý hệ điều hành phần 2 hồ đắc phương (Trang 58 - 60)