TÌNH TRẠNG TRÌ TRỆ

Một phần của tài liệu Giáo trình môn Hệ Điều Hành PTIT (Trang 126 - 127)

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

3.9. TÌNH TRẠNG TRÌ TRỆ

Khi số khung cấp cho tiến trình giảm xuống một mức nào đó, tiến trình sẽ rơi vào tình trạng thiếu bộ nhớ và phải đổi trang liên tục. Để nạp một trang mới vào, tiến trình phải đổi một trang. Do các trang đều đang cần dùng tới nên trang vừa bị đổi ra sẽ lập tức gây thiếu trang và quá trình này sẽ tiếp diễn.

Tình trạng đổi trang liên tục do khơng đủ bộ nhớ được gọi là trì trệ (thrashing). Một tiến trình rơi vào tình trạng trì trệ khi thời gian đổi trang của tiến trình lớn hơn thời gian thực hiện. Dấu hiệu dễ nhận thấy của tình trạng này là hoạt động liên tục của đĩa cứng trong khi tiến trình khơng có tiến triển.

Tình trạng khủng hoảng bộ nhớ ảnh hưởng nghiêm trọng tới tốc độ máy tính và do vậy cần có biện pháp giải quyết.

Tình trạng trì trệ xảy ra khi bộ nhớ máy tính có kích thước hạn chế, tiến trình địi hỏi truy cập đồng thời nhiều trang nhớ và hệ thống có mức độ đa chương trình cao, tức là nhiều tiến trình cùng thực hiện một lúc. Trên thực tế, tình trạng này có thể xảy ra cả khi mức độ đa chương trình thấp, chẳng hạn khi khi tiến trình làm việc với dữ liệu kích thước lớn (ảnh, file dữ liệu) và thuật tốn địi hỏi truy cập những phần khác nhau của dữ liệu cùng một lúc.

3.9.1. Kiểm soát tần suất thiếu trang

Khi tiến trình rơi vào tình trạng trì trệ, tần suất thiếu trang của tiến trình sẽ tăng lên đáng kể. Đây là thông tin quan trọng được sử dụng để phát hiện và giải quyết vấn đề trì trệ.

Cụ thể, hệ thống theo dõi và ghi lại tần suất thiếu trang. Tần suất thiếu trang tăng lên là dấu hiệu cho thấy tiến trình được cấp khơng đủ khung, trong khi tần suất thiếu trang thấp cho thấy tiến trình được cấp đủ hoặc thậm chí thừa khung. Hệ điều hành có thể đặt ra giới hạn trên và giới hạn dưới cho tần suất thiếu trang của tiến trình. Khi tần suất vượt giới hạn trên, hệ thống cấp cho tiến trình thêm khung mới. Ngược lại, khi tần suất thiếu trang thấp hơn giới hạn dưới, hệ thống thu hồi một số khung của tiến trình.

Trong trường hợp tần suất vượt giới hạn trên và hệ thống khơng thể tìm khung để cấp thêm, tiến trình sẽ bị treo (suspend) hoặc bị kết thúc. Giải pháp này một mặt tránh cho tiến trình khơng rời vào trì trệ, đồng thời cho phép giải phóng một số khung để cấp cho tiến trình khác.

Một phần của tài liệu Giáo trình môn Hệ Điều Hành PTIT (Trang 126 - 127)