每个进程中访问临界资源的那段程序称为临界区,每次只准许一个进程进入临界区,进入后不允许其他进程进入。
① 如果有若干进程要求进入空闲的临界区,一次仅允许一个进程进入。(加锁)
② 任何时候,处于临界区内的进程不可多于一个。如已有进程进入自己的临界区,则其它所有试图进入临界区的进程必须等待。
③ 进入临界区的进程要在有限时间内退出,以便其它进程能及时进入自己的临界区(一次只能进一个,不同的进程可能有相同的临界区,不同用户的不同任务之间的进程是有临界区,比如打印机,如打印程序是可以由不同用户的不同进程使用,但是只能有一个进程在某一时刻进入。)
④ 如果进程不能进入自己的临界区,则应让出 CPU,避免进程出现“忙等”现象。
总结:互斥使用、有空让进 、忙则等待、有限等待