码迷,mamicode.com
首页 > 系统相关 > 详细

进程互斥与同步

时间:2019-04-26 00:04:08      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:进程互斥与同步   策略   需要   应用   间接   原则   自己的   资源竞争   情况   

解释并发与并行,并说明两者关系

(1)并发:并发运行就是把两个或两个以上的任务切割,在不同的时间片段内,cpu切换执行不同的任务,我们的电脑在工作过程中,可以同时运行很多软件,在我人看来,多个软件应用是同时在工作的,但从微观看,每个软件都是在不断切换的,cpu的工作分为很多个时间片,每个时间片都会切换不同的任务,只是由于切换的时间太短,我们人发觉不了,就好比cpu在有效的时间片内,先处理了QQ任务,在转到下一个时间片处理微信任务,所以在单cpu电脑中,不同任务间接执行。

(2)并行:并行执行就是,在多cpu的电脑中,针对两个或两个以上的任务,用不同的cpu中分别执行不同的任务,不同的任务之间互不影响。

进程间有哪几种关系?分别要采取什么策略?

进程间有竞争关系和协作关系。

(1)竞争关系:就是在cpu资源有限的情况下,不同的任务会抢占cpu资源,资源竞争会引发死锁和饥饿,解决饥饿采用FCFS资源分配策略,

(2)协作关系:协作关系需要在某些关键点上协调自己的工作,采用临界区管理。

 

 为什么说进程的互斥也是一种同步?

 (1)互斥就是当资源有限时,cpu只能被一个任务占用,这实际上就是一种协调,一种同步。

 

解释死锁与“饥饿”,并说明两者关系。

(1)死锁:当操作系统允许多个进程并发执行时,可能出现进程永远被阻塞现象,如果两个进程分别等待对方所占的一个资源,于是两者都不能执行而处于永远等待状态,就是死锁。

(2)饥饿:饥饿是指系统不能保证某个进程的等待时间上界,从而使该进程长时间等待,当等待时间给进程推进和响应带来明显影响时,称发生了进程饥饿。当饥饿到一定程度的进程所赋予的任务即使完成也不再具有实际意义时称该进程被饿死。

什么叫做临界区?如何解决进程对临界资源的访问冲突?

(1)并发进程中与共享变量有关的程序段称为临界区

临界资源管理三原则:

(2)一次至多只有一个进程进入临界区内执行;

(2)如果已有进程在临界区中,试图进入此临界区的其他进程应等待;

 (3)进入临界区内的进程应在有限时间内退出,以便让等待队列中的一个进程进入。

进程互斥与同步

标签:进程互斥与同步   策略   需要   应用   间接   原则   自己的   资源竞争   情况   

原文地址:https://www.cnblogs.com/linmingcong/p/10757871.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!