Cau 7 hdh

Câu 7: Trình bày các nội dung về kiểu dữ liệu semaphore nhị phân và đa giá trị (giá trị, phép toán)

1/ semaphore nhị phân

Dijkstra đã sử dụng hai toán tử: P (SIGNAL - yêu cầu tài nguyên) và V (WAIT - giải phóng tài nguyên). Các toán tử này làm việc trên các biến gọi là semaphore. Trong semaphore nhị phân, tương ứng với giá trị 1 là mở semaphore (cho phép chạy) còn giá trị 0 là đóng semaphore (không chạy).

Phép toán: với mỗi semaphore, gắn một danh sách các quá trình đi tới samephore.

P(s), V(s): các toán tử thực hiện. s: biến semaphore nhị phân.

P(s): if s=1

then s<-0 {đóng semaphore}

else Kết khối quá trình này (chứa lời gọi P(s)) theo s;

đặt một quá trình đang chuẩn bị vào bộ xử lý

V(s): if Danh sách quá trình chờ đợi s không rỗng

then Tách khối quá trình chờ đợi s

else s<-1 {mở semaphore}

2/ semaphore đa giá trị

Một semaphore đa giá trị s nhận các giá trị từ 0 đến N (N là số tài nguyên cùng loại). Khi s =0 tức là không còn tài nguyên rỗi để thực hiện nhu cầu.

Phép toán: P(s), V(s): các toán tử thực hiện. s: biến semaphore đa giá trị.

P(s): if s>0

then s<-s-1

else Kết khối quá trình theo s

đặt một quá trình đang chuẩn bị vào CPU

V(s): if Danh sách quá trình chờ đợi s không rỗng

then Tách khối quá trình chờ đợi

else s<-s+1

Bạn đang đọc truyện trên: AzTruyen.Top

Tags: #chanlee