Các phƣơng pháp xử lý tắc nghẽn và ngăn chặn tắc nghẽn

Một phần của tài liệu Hệ Điều Hành Học Viện Công Nghệ Bưu Chính Viễn Thông (Trang 83)

- Đọc/Ghi ngày, tháng, năm

d) Sử dụng thơng điệp:

3.5.3 Các phƣơng pháp xử lý tắc nghẽn và ngăn chặn tắc nghẽn

* Các phương pháp xử lý tắc nghẽn

+ Sử dụng một thuật tốn cấp phát tài nguyên nào đĩ mà bảo đảm khơng bao giờ xảy ra tắc nghẽn. + Hoặc cho phép xảy ra tắc nghẽn và tìm cách sữa chữa tắc nghẽn.

+ Hoặc bỏ qua việc xử lý tắc nghẽn, xem nhƣ hệ thống khơng bao giờ xảy ra tắc nghẽn. Thƣờng áp dụng phƣơng pháp này khi hệ thống rất ít khi bị tắc nghẽn và chi phí kiểm tra tắc nghẽn cao (UNIX và WINDOWS sử dụng phƣơng pháp này)

* Ngăn chặn tắc nghẽn

Để khơng xảy ra tắc nghẽn, cần bảo đảm tối thiểu một trong 4 điều kiện đã nêu ở trên khơng xảy ra:

+ Điều kiện 1 gần nhƣ khơng thể tránh đƣợc điều kiện này vì bản chất tài nguyên gần nhƣ cố định. + Để điều kiện 2 khơng xảy ra, thì cĩ thể áp dụng một trong hai nguyên tắc sau :

- Tiến trình phải yêu cầu tất cả các tài nguyên cần thiết trƣớc khi cho bắt đầu xử lý. Phƣơng pháp này gặp khĩ khăn là hệ điều hành khĩ cĩ thể biết trƣớc các tài nguyên tiến trình cần sử dụng vì nhu cầu tài nguyên cịn phụ thuộc vào quá trình tiến trình thực hiện. Ngồi ra nếu cho tiến trình chiếm giữ sẵn các tài nguyên chƣa cần sử dụng ngay thì việc sử dụng tài nguyên sẽ kém hiệu quả. - Khi tiến trình yêu cầu một tài nguyên mới và bị từ chối, nĩ phải giải phĩng các tài nguyên đang chiếm giữ , sau đĩ lại đƣợc cấp phát trở lại cùng lần với tài nguyên mới. Phƣơng pháp này sẽ gặp khĩ khăn trong việc bảo vệ tính tồn vẹn dữ liệu của hệ thống.

+ Để điều kiện 3 khơng xảy ra, hệ điều hành cần cho phép hệ thống đƣợc thu hồi tài nguyên từ các tiến trình bị khố và cấp phát trở lại cho tiến trình khi nĩ thốt khỏi tình trạng bị khĩa. Tuy nhiên với một số loại tài nguyên, việc thu hồi sẽ rất khĩ khăn vì vi phạm sự tồn vẹn dữ liệu.

+ Để điều kiện 4 khơng xảy ra, cĩ thể cấp phát tài nguyên theo một sự phân cấp nhƣ sau :

Gọi R = {R1, R2,...,Rm} là tập các loại tài nguyên. Các loại tài nguyên đƣợc đánh số thứ tự . Ví dụ : F(đĩa) = 2, F(máy in) = 12,…

Khi tiến trình đang chiếm giữ tài nguyên Ri thì chỉ cĩ thể yêu cầu các tài nguyên Rj nếu F(Rj) > F(Ri).

Ta cĩ thể tránh tắc nghẽn khi cấp phát tài nguyên bằng cách sử dụng giải thuật cấp phát tài nguyên nhƣ sau:

Một phần của tài liệu Hệ Điều Hành Học Viện Công Nghệ Bưu Chính Viễn Thông (Trang 83)

Tải bản đầy đủ (PDF)

(200 trang)