.


:




:

































 

 

 

 





 

 

, 1. . , , -.

Inter Process Communications (IPC), . IPC , .

. , . . , , , - . . , .

. , , . , .

, ( ) , . , , , .

, . , . , - , -. - , .

. , , , , , , . , , Ctrl+C.

, , , .

, . , , , , . , . , , , - . . , .

. , , , , .. , .

. , , (. 16). , . , , , , , , , , . , , :

1. .

2. ( ) ( ).

3. .

1, 2 A3, B1, B2 . , N. ( 1), ( 2), ( A3) , , , .

, N. , ( Bl) ( B2), . , N, , .

, , , N ( A3). N , . , , N , (. 17, ).

. , : , (. 17, ) , , (. 17, ). . . , , , .

 

5.2.

 

. , , , , , . , . . , , . , .

, , , , . , . . . , .

, . , , , .

. , , , . , 0, , 1, .

, .

, . , .

, . . . , , , 0, . , , , . , , , . , , . , (, , BTR BTS Pentium). , . .

: , , , , , , , - . .

. 18 , Windows NT. , EnterCr1t1ca1Section(). , , , . , (F(D)=0), (D) , , . , , LeaveCriticalSectlon(), , (F(D)=1), .

. , , . , .

. (Dijkstra) , . , , .

, V. S . V(S) P(S) :

- V(S): S 1 . , . S .

- P(S): S 1, . S=0 S, , , , , . .

V .

, S 0 1, , . , , , V , .

, , . N , . - - . , . - , , . , - , , .

: , f , = N, f = 0, (. 19).

- (), , . , 0 (.. ), - . , , V(f). - , , , .

. , , , , , , . . , . , N , , .

, , , , (, , ) , . .

. , , , . b (. 20). .

, (deadlocks), (clinch), . , () (b) -, .

, - (b), . (), . , -, . - , , -. , , .

. , , , . , , , , .

. 21, . , , . , , , . , -, , . , , . i .

(. 21, ), (. 21, ), (. 21, ).

, : . , . , , , . , , . .

, . . 22 Ri Tj, . . , , , , , . , 1 R1 R2, R1, R2 2. , .

- . . , , - , , - . , , , .

, .. , . , , . 21, , . , , , . , . , , , .

, , , . , , . , - , . .

, . , , , , , , . , .

, , . , , .

, , , , . , . . , . , . . . , , , .

, , , . : . , , . , , , . , . , - . . .

, . Wait(X), . , , Set(X).

, Wait(X), , . Wait() Set() MaitForSingleObject() SetEvent() Windows NT, DosSemWait() DosSemSet() OS/2, s1eep() wakeup() UNIX.

, . , . Wait() , , . , . , .

. -, Wait(X) , . -, ( , ) ( ) . , / , , .

, , .

, , , .

. , Wait(X1, 2, ), X1, 2 . , , .. . . . . -. . . , , Wait(X), .

-, - , , , , , .

, , , -. , , , , , (event), (mutex), .

, , .

-, - -, , , - .

. , , , Wait(X), . , , , , . , , . . - , , .

- ( , ) , , , . , , , , , , . - . Wait(X), , , . , , Set(X). , .

, . . , .. , , .. . , , , , . .

. . (Ctrl+C, Ctrl+Break), . (.. ), . .

. , , , (, ), , . , , .

, (). , , .

, , , , , , , . .

 



 





:


: 2016-11-18; !; : 1073 |


:

:

.
==> ...

2111 - | 1963 -


© 2015-2024 lektsii.org - -

: 0.041 .