240-323, Part II Process Synchronization

Post on 05-Jan-2016

21 views 1 download

description

Department of Computer Engineering, PSUWannarat Suntiamorntut. 240-323, Part II Process Synchronization. Department of Computer Engineering, PSUWannarat Suntiamorntut. Thread. Department of Computer Engineering, PSUWannarat Suntiamorntut. Consumer - Producer : Share Memory. - PowerPoint PPT Presentation

Transcript of 240-323, Part II Process Synchronization

240-323 OS,2000

1

240-323, Part II Process Synchronization

Department of Computer Engineering, PSU Wannarat Suntiamorntut

240-323 OS,2000

2

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Thread

240-323 OS,2000

3

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Consumer - Producer : Share Memory

240-323 OS,2000

4

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Problem with Share memory solution

240-323 OS,2000

5

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Definition Term

240-323 OS,2000

6

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Critical-Section Problem

240-323 OS,2000

7

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Critical-Section Problem (Algorithm 1)

240-323 OS,2000

8

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Critical-Section Problem (Algorithm 2)

240-323 OS,2000

9

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Critical-Section Problem (Algorithm 3)

240-323 OS,2000

10

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Critical-Section (Many Processes)

240-323 OS,2000

11

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Bakery Algorithm : Explained

240-323 OS,2000

12

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Synchronize Hardware

240-323 OS,2000

13

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Test and Set for Mutual Exclusion

240-323 OS,2000

14

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Semaphores

240-323 OS,2000

15

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Using Semaphores

240-323 OS,2000

16

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Implement Semaphores

240-323 OS,2000

17

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Implementing Semaphores

240-323 OS,2000

18

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Dead locks and Starvation

P0 P1 wait(S); wait(Q); wait(Q); wait(S);

. .

. .

. . Signal(S); Signal(Q); Signal(Q); Signal(S) ;

240-323 OS,2000

19

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Binary Semaphores

• a semaphore with an integer value that can range only between 0 and 1.• Can be simpler to implement

Wait : wait(S1);C := C -1;if C < 0 then

signal(S1);wait(S2);

endsignal(S1);

Signal : wait(S1);C := C +1;if C =< 0 then

signal(S2);else

wait(S1);

240-323 OS,2000

20

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Readers/Writers Problem

240-323 OS,2000

21

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Readers have Priority

240-323 OS,2000

22

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Comment on Reader Priority

240-323 OS,2000

23

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Writer have Priority

240-323 OS,2000

24

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Note on Writer have Priority

240-323 OS,2000

25

Department of Computer Engineering, PSU Wannarat Suntiamorntut

Dining-Philosophers Problem