Nói một cách khác, chúng ta yêu cầu rằng, bất cứ khi nào một quá trình yêu cầu một thể hiện của loại tài nguyên Rj, nó giải phóng bất cứ tài nguyên Ri sao cho F(Ri) ≥ F(Rj). Nếu có hai giao thức được dùng thì điều kiện tồn tại chu trình không thể xảy ra. Chúng ta có thể giải thích điều này bằng cách cho rằng tồn tại chu trình trong đồ thị cấp phát tài nguyên tồn tại. Gọi tập hợp các quá trình chứa tồn tại chu trình trong đồ thị cấp phát tài nguyên. | Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin - Giáo Trình Hệ Điều Hành - một quá trình muốn dùng ổ băng từ và máy in tại cùng một lúc trước tiên phải yêu cầu ổ băng từ và sau đó yêu cầu máy in. Nói một cách khác chúng ta yêu cầu rằng bất cứ khi nào một quá trình yêu cầu một thể hiện của loại tài nguyên Rj nó giải phóng bất cứ tài nguyên Ri sao cho F Ri F Rj . La A Nếu có hai giao thức được dùng thì điều kiện tồn tại chu trình không thể xảy ra. Chúng ta có thể giải thích điều này bằng cách cho rằng tồn tại chu trình trong đồ thị cấp phát tài nguyên tồn tại. Gọi tập hợp các quá trình chứa tồn tại chu trình trong đồ thị cấp phát tài nguyên là P0 P1 . Pn ở đây Pi đang chờ một tài nguyên Ri mà Ri được giữ bởi quá trình Pi 1. Vì sau đó quá trình Pi 1 đang giữ tài nguyên Ri trong khi yêu cầu tài nguyên Ri 1 nên chúng ta có F Ri F Ri 1 cho tất cả i. Nhưng điều kiện này có nghĩa là F R0 F R1 . . F Rn F R0 . Bằng qui tắc bắt cầu F R0 F R0 điều này là không thể. Do đó không thể có chờ chu trình. Chú ý rằng hàm F nên được định nghĩa dựa theo thứ tự tự nhiên của việc sử dụng tài nguyên trong hệ thống. Thí dụ vì ổ băng từ thường được yêu cầu trước máy in nên có thể hợp lý để định nghĩa F ổ băng từ F máy in . VII Tránh deadlock Các giải thuật ngăn chặn deadlock được thảo luận ở VII-6 ngăn chặn deadlock bằng cách hạn chế cách các yêu cầu có thể được thực hiện. Các ngăn chặn đảm bảo rằng ít nhất một trong những điều kiện cần cho deadlock không thể xảy ra. Do đó deadlock không thể xảy ra. Tuy nhiên các tác dụng phụ có thể ngăn chặn deadlock bởi phương pháp này là việc sử dụng thiết bị chậm và thông lượng hệ thống bị giảm. Một phương pháp khác để tránh deadlock là yêu cầu thông tin bổ sung về cách tài nguyên được yêu cầu. Thí dụ trong một hệ thống với một ổ băng từ và một máy in chúng ta có thể bảo rằng quá trình P sẽ yêu cầu ổ băng từ trước và sau đó máy in trước khi giải phóng cả hai tài nguyên. Trái lại quá trình Q sẽ yêu cầu máy in trước và sau đó ổ băng từ. Với kiến thức về .