进程同步

一、进程同步涉及到的基本概念:

  1. 两种制约关系:
    直接制约 简介制约

  2. 临界资源:每次仅允许一个进程访问的资源,可分为硬件临界资源和软件临界资源。
    临界区:访问临界资源的那段代码。

  3. 同步机制遵循的规则:
    空闲让进、忙则等待、有限等待、让权等待

二、记录型信号量

  1. 基本概念
type semaphore=record
              value:integer;
              L:list of process;
end

value:表示资源数目
L:表示等待进程

procedure wait(S)
           var S:semaphore;
           begin
                 S.value:=S.value-1;
                 if S.value<0 then block(S,L)
           End

简单理解wait():申请一个资源

procedure signal(S)
           var S:semaphore;
           begin
                 S.value:=S.value+1;
                 if S.value≤0 then wakeup(S,L);
           end

简单理解wait():释放一个资源
2.

你可能感兴趣的:(semaphore)