




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四章并发处理4.1并发活动—进程的引入4.1.1程序的顺序执行先来认识我们程序的设计过程:1、数据与操作(解决问题时的步骤)客观世界问题数据信息x观察记录描述加工结果y计算fy=f(x)思考:这代表什么意义?4.1并发活动—进程的引入什么是程序的顺序执行(p62图4.1)?计算:对一有限的数据集合所施行的,目的在于解决某一问题的一组有限的操作的集合。程序:是计算在机器内部的形式化描述。计算是按顺序执行的一组操作程序是按顺序执行的一组指令思考:操作系统是不是一个计算?4.1并发活动—进程的引入设:两个作业有三个顺序执行的操作:
I:输入操作C:计算操作P:打印操作 严格地说,程序的顺序执行是指:不仅一个计算内的各个操作是顺序执行的,而且多个计算之间的执行也是顺序的。思考:
上述I,C,P三个操作分别占用了那些计算机资源?P2C2
I2P1C1
I14.1并发活动—进程的引入顺序程序的特点1、顺序性:处理机的操作,严格按程序所规定的顺序执行。(传统的程序都具有)2、封闭性:程序一旦开始,计算结果不受外界因素影响3、可再现性:输出y仅是关于输入x的函数,与时间无关4.1并发活动—进程的引入4.1.2程序的并发执行 什么是程序的并发执行?若干个程序段同时在系统中运行,若它们执行的起始时间段有重叠的部分,即:一个程序段的执行尚未结束,另一个程序段的执行已经开始。则称这几个程序段是并发执行的。回顾:
并发(concurrency)与并行(parallel)有何区别?PQR一、(1)“并行”是指无论从微观还是宏观,二者都是一起执行的,就好像两个人各拿一把铁锨在挖坑,一小时后,每人一个大坑。
(2)而“并发”在微观上不是同时执行的,只是把时间分成若干段,使多个进程快速交替的执行,从宏观外来看,好像是这些进程都在执行,这就好像两个人用同一把铁锨,轮流挖坑,一小时后,两个人各挖一个小一点的坑,要想挖两个大一点得坑,一定会用两个小时。二、并发和并行的区别就是一个处理器同时处理多个任务和多个处理器或者是多核的处理器同时处理多个不同的任务。
前者是逻辑上的同时发生(simultaneous),而后者是物理上的同时发生.来个比喻:并发和并行的区别就是一个人同时吃三个馒头和三个人同时吃三个馒头。4.1并发活动—进程的引入4.1并发活动—进程的引入4.1.2程序的并发执行并发执行的表示
(1)用并发语句表示
cobeginS1;S2;...
Sncoend(2)用次序图表示S4S2S1S3S04.1并发活动—进程的引入4.1.3并发执行实例——誊抄(实验)方案一:循环顺序程序的眷抄方案(图4.5)要求卡片读入速度与记录打印速度必须一致。眷抄程序MODULE4.1:while(f不为空){input;output;}4.1并发活动—进程的引入4.1.3并发执行实例——眷抄方案二:并发程序的眷抄方案(图4.6)缓冲区的设置能有效解决设备速度不匹配的问题,但是问题是:必须要保证缓冲区空时不可读,满时不可写,否则两个设备不能保证正常工作。眷抄程序(MODULE4.2):cobeginwhile(f不为空){input;//读入数据send;//发送到缓冲区}while(眷抄未完成){receive;//从缓冲区读出output;//打印}coend;并发程序1并发程序24.1并发活动—进程的引入4.1.3并发执行实例——眷抄方案三:并发程序的眷抄方案(图4.7)从方案二可见,缓冲区是两程序并发的关键点,因此必须要对缓冲区进行读写控制。思考:箭头处语句为何不能放在并发区域?眷抄程序(MODULE4.3):fstgif(f不为空){ get(s,f);while(眷抄未完成){
t=scobeginput(t,g);//并发程序1get(s,f);//并发程序2coend;}}4.1并发活动—进程的引入4.1.4与时间有关的错误copy程序的执行与否取决于put,get程序是否执行完毕。只有两个程序都执行完毕后,copy才能开始执行。因此copy程序本身是与时间有关的,不符合顺序程序的特点,不能使用并发执行的方式。思考:若一定放在并发区,应该怎样?while(眷抄未完成){cobegincopyputgetcoend}4.1并发活动—进程的引入4.1.5并发程序的特点(1)失去程序的封闭性和可再现性
如果程序A的执行可以改变程序B的环境(即程序B失去了封闭性),则:程序B的输出结果,就与二个程序之间执行的相对速度有关(即失去了可再现性)。(MODULE4.4)while(A任务未完成){ …
n++; …}while(B任务未完成){ …printf(“NIS%d\n”,n);n=0; …}4.1并发活动—进程的引入(2)程序与计算不再一一对应一个程序可以对应多个计算。
编译1C编译程序编译2….
编译n
4.1并发活动—进程的引入(3)程序的并发执行也存在着相互制约(P63图4.2)
直接的相互制约关系:由程序的逻辑引起(I1,C1)。
间接的相互制约关系:由共享资源而引起(I1,I2)。4.贱2进程逢概念4.拐2.拔1进程易(Pr杨oc靠es倒s)的辞定义宣(p7今3)1、所谓鼻进程针,就匆是一优个程东序在谅给定索活动伸空间沃和初薯始环裳境下服,在突一个纵处理箩机上替的执行侨过程。2、进估程是衡指一译个具鼓有一右定独元立功喇能的别程序猴关于托某个眨数据估集合从的一冷次运行脖活动。4.手2进程果概念程序(p猪ro顽gr阶am禁)与进恐程(p父ro蜓ce平ss闪)的联松系与钞区别焦:进程独是动涨态的遮,程僚序是秋静态句的。进程农是暂蚕时的席,程四序是洗永久我的。进程祥与程叠序的劫组成扇不同壁:进程谣包括谷程序尘、数贝据和法进程眠控制显块进程腰与程晌序是弹密切饿相关谦的。通过锹多次领执行芝,一陷个程笔序可摆对应草多个晴进程驼;通过与调用嚷关系椅,一础个进昆程可什以包请括多教个程银序。4.扮2进程挤概念4.须2.忙2进程胀的类仓型(p7鸣3)系统课进程誓:管涛态(此系统公态)如下工棵作,僵分配挤资源用户译进程雄:目陈态(近用户纤态)裹下工波作,惧申请枣资源4.么2进程钢概念4.咳2.套3进程宅的状锤态(思考米:为巷什么驶要设居定这典三种塔状态酬?)运行勇状态(r嫂un咱ni折ng版):该教进程迟已获班得运俘行所兔必需辅的一话切资莲源,菠它的远程序正在胡处理股机上食执行(2凝)就绪叉状态(r垦ea街dy饶):进筹程已获歼得除CP众U之外能运行暴所必烦需的糠一切添资源,一也旦得树到CP奶U的控央制权茄,立尘即可坛以执缘瑞行(3嫁)等待够(阻跟塞,淹挂起腾,睡趁眠)霸状态(w弦ai匪t):进辛程正等沃待着志某一萝事件债的发贪生,即习使将CP弹U的控劳制权妻给它恢,也当无法被执行4.前2进程认概念进程奥状态疫的变趋迁进程欢的状针态,曲是随脆着进印程自彼身的奖推进育和外纯界条吗件的乞变化贺,而嘱发生债变化异的。
运行
等待
就绪
服务请求/等待一个事件的发生
服务完成/事件已发生进程调度时间片到/
中断4.浇2进程来概念4.盆2.着4进程助的描歉述对每个进程赠,都比必须偿用一彼个数镇据结咽构,芬对其丈运行镇的过巨程进捏行描些述。改描述眼一个创进程历当前核所处朴的状怎态、腿对资蓝源的摧使用峡情况抗、以拴及与债其他里进程著关系忍的数举据结饺构,芝称为笨进程驴控制愧块(PC君B,Pr缩慧oc震es乖s西Co渣nt染ro乱l肠Bl纸oc若k)。操作隆系统照是通庭过PC哲B而感知到进雁程的随存在简并对因进程路进行泪控制4.悲2进程颜概念PC脊B的主册要内哄容(p7珠5-害76)进程名标识艰符(PI区D):欠每个革进程姐的唯优一标织识号渡。当前毯队列模指针:通我常把骗具有挣相同挺状态扬的进辩程链不接在坏一起泰,组灵成队美列。通如就彻绪队弃列,占等待责队列兴等(图4.孩10丘)。进程兼优先访级(pr粮io昂ri盖ty):盒反映刮了进睛程需能要CP焦U的紧幼急程鸟度。思考纱:PC尽B中设吩置这唐些项序的目毕的是定?进程乏标识值符进程乏当前购状态当前永队列瘦指针总链腔队列桂指针程序刘开始伙地址进程食优先蜘级CP芝U现场格保护则区通信丧信息家族绑联系占有国资源秘清单4.富2.做5线程盒的概公念及择特点1、线豪程(th惹re汉ad线s)P7见7线程连与进霸程的刃区别堂和联圆系2、线龄程的柳特点吵与状晃态P7甜84.浑2进程须概念4.艘2进程厉概念什么根是线滋程线程吸概念驶的提皱出来降源于洽两个讲方面边的发录展:1、计哪算机袖处理拥器从浙以往单一炸处理鹊器逐戒渐向震多处野理器民发展。程苦序要冷充分哈利用柴好多脾处理词器技要术,亡需要盖从以楼往单积一控社制线盖索转就变为蹄多控狡制线起索。2、同怠时,甜随着活软件留技术回的发域展,奥一个程律序在沾某一阻时刻标需要菠处理膀多个吧事务(界腾面显蝇示、房诚网络困传输对、数泪据处役理等黄),讨这些归事务味体现鲜为不彩同的需控制祝线索驾,并础且需告要并伸发执慨行。4.草2进程皂概念进程酸与线里程的落差别枣:线程岸属于柿进程隶的一派个执暑行路授径(追控制六线索煌)系统神必须族为进烂程分铲配相技应的粒资源龄,除在现场闯保护孔资源洞外,场线程垒并不疗获得怀系统测分配蔽的资你源。4.啄2进程派概念线程座的特蛾点和榜状态(一锣)线棚程的乎特点同一旱进程棋多条弯线程貌同时咳执行袍,由盖操作阔系统逃调度惩决定屡哪一扫条线疫程执柿行。同一浙进程程的线品程间劣共享瞎该进索程的饮资源辟。4.姑2进程纠概念线程刊的特寨点和安状态(二来)线炮程的毁状态蕉及变塔迁线程苹与进父程一甜样是菠一个旁动态集的概喘念,蛮也有葛从产脸生到色消亡跳的生疏命周唉期(图4.园12)。4.慰2进程怪概念Li据nu风x系统冲中的钓线程舰:Li卧nu股x采用里创建夜进程门的方绘式来度创建庸线程扫,这惨种线宋程使抄用系汉统调勿用cl这on庙e创建州,能表创建悄一个敏具有犹进程晒标识深符的追线程枣,但蚊它本柴质上贝不是烟进程到,因采为没编有自瓶己的菜进程姿映像筒(即麦没有沫独立御的内托存空披间存凡放程焦序的揉正文克和数惯据)坛。4.胶2进程移概念Li胜nu流x下线磁程的喇创建热与撤聚消:注意山编译吐多线亡程程型序时扑需要计添加放参数菌:-l惠pt对hr礼ea闭d#i塌nc剪lu齐de块<驻st灰di游o.篇h>#i迅nc嫌lu资de滋<兵pt伯hr姨ea坛d.辆h>vo妖id害t适hr旁ea欠d(宿vo躁id来){in吩t昼i;fo肃r(加i=宴0;造i<仇10伙;i险++单){pr桐in线tf睡("云Th痛is晓i糕s配th蹦e前se祸co蛾nd缎p继th雅re泽ad伤.\深n"猜);sl赔ee存p(或1)夺;}}ma掠in道()桥{pt冠hr珠ea员d_驻t神th工re淋ad伏id离;in全t订i,辈re宪t;re量t=丛pt气hr闻ea乞d_滋cr叔ea弟te互(&弟th及re恒ad隶id场,N卫UL余L,傅(v壶oi汇d*隔)t血hr耐ea猪d,石NU颗LL雨);if涝(r脑et天!=团0){pr膝in叙tf颤("墨Cr冻ea刊te秒p忘th雄re航ad炮e副rr圆or肝!\辨n"共);ex啊it秘(1弃);}pr央in拨tf杂("蛋th铺is势i以s杀th汤e叉ma田in业t风hr冈ea快d\狡n"急);sl智ee康p(阴1)场;pt鸭hr喘ea剩d_蚁jo毫in艰(t屠hr帜ea乳di捐d,剥NU炭LL手);ex敲it朋(0粉);}vo牧id旺t柔hr康ea穷d1至(){pt赴hr泳ea尸d_巨mu险te胖x_炮lo嚷ck两(&剃co假un湖t_堂lo洲ck巷);pr滔in绪tf龄("李th科e铺th纱re栋ad贴1虏en凡te讯r章th摄e滴ci奖rt突ic甲al擦s毒ec详ti狐on进..逝\n洲")锄;sl铁ee湿p(贫2)殖;pr伙in骡tf循("文th胜e户th违re宿ad堆1两ex意it裳t伴he厚c潜ir岂ti爬ca预l窜se员ct决io仪n.锐.\疮n"拜);pt挎hr诉ea返d_企mu撕te取x_抢un汽lo格ck热(&示co布un吓t_茫lo伴ck撑);pt锅hr遇ea煤d_愤ex毒it截(N俯UL睬L)昌;}vo珠id遥t锅hr转ea赴d2剪(){pt谷hr拳ea台d_丧mu猴te蓝x_姿lo营ck虾(&猫co字un创t_狸lo较ck愚)pr劳in绞tf情("胆th恐e优th挤re盗ad余2惰en烛te楼r茎th杯e趴ci酱rt控ic幻玉al流s贿ec寄ti膨on尤..赛\n嘴")边;sl转ee拒p(循2)丘;pr慌in析tf阔("方th俊e驴th糕re萌ad柜2解ex勤it缓t哪he未c恨ir客ti处ca滴l场se敞ct泰io刷n.横.\貌n"祥);pt火hr膜ea传d_箭mu拌te印x_雨un静lo撕ck印(&劫co飘un合t_业lo休ck绍);pt哭hr纳ea汪d_扒ex笋it部(N画UL苍L)鸦;}Li即nu态x下利签用互到斥锁亭实现返线程迹互斥致:#i姜nc拐lu妙de纲<月st闸dl赛ib卵.h取>#i苗nc庭lu悟de酒<腿un驶is速td帖.h匹>#i疏nc虽lu骨de富<停pt询hr陷ea乘d.谎h>pt祥hr携ea角d_健mu适te子x_灿t粘co锣un窃t_侍lo豆ck乌;in谎t哪ma勿in喇(){pt饱hr松ea枯d_般t胃id峡1,貌i奖d2背;pt炎hr阴ea胖d_猜mu滥te份x_骄in法it陷(&蒸co副un罩t_遍lo拉ck伴,艳NU离LL栋);pt鬼hr俱ea每d_膊cr祝ea死te源(&亚id榜1,睡N蜜UL汉L,放(摄vo陪id景*)熊th圆re坛ad只1,夜N山UL帜L)吧;pt口hr奔ea杂d_番cr纤ea秆te智(&席id壮2,索N么UL招L,共(炮vo盈id设*)慕th牺re盾ad藏2,溪N诊UL及L)汤;pt擦hr精ea死d_们jo良in们(i伪d1芦,当NU良LL焰);pt熄hr娃ea崭d_兵jo派in百(i驼d2酷,N廊UL笑L)绩;}4.说2进程腹概念举例闲:Li奇nu淹x系统钢下的错进程辣状态忧及其匀变迁籍图:(P闸10治6图4.烛29灵)4.竹2进程拆概念Li泰nu型x系统冷下的风进程机状态拘及其搜变迁抹图(补住充)4.近2进程犹概念Li赢nu爬x进程抖状态港的解氧释:可中粮断睡银眠状控态(TA清SK僵_I桐NT察ER朋RU偏PT掠IB墨LE):乱在此鞭状态汗下,屈当进抽程所制要等源待的渔资源夸被释荒放时感,由益此产油生的谈中断犯信号约能把核该进晕程唤运醒。不可天中断腿睡眠希状态蒜(TA唇SK妄_U铃NI我NT刮ER骡RU隔PT拔IB恢LE):运唯有wa哈ke健_u颗p函数锈才能秀把该救进程好唤醒狮。暂停附状态乐(TA拥SK司_S乘TO肠PP局ED):俩是由漆于进乔程接限收到SI杜GS哨TO医P等信胳号时虾暂停痒运行医(注意推与睡朵眠状歇态区目分),辫必须芒要有SI箭GC家ON藏T信号节使其牧重新深运行萝。僵死泛状态仁(TA详SK头_Z煎OM驳BI烘E):凤进程攻已经军终止苗,仅惠保留PC会B块,荣只等钢待系防统对球其回宪收。4.折2进程忠概念Li必nu泰x系统玩下的寸进程精控制鼠块(PC胶B):在Li紧nu昌x术语蚕中,ta堆sk与pr拉oc格es指s是互比用的献,因驾此PC遇B块被浸定义榨为ta就sk稍_s滔tr哲uc伤t。主希要包贱括进鼠程当惑前运县行的摇状态薪信息徐、信汪号、槐进程师号、冈父进芹程号槐、运嫌行时间间累斯计值始等。4.梅2进程逢概念可根绝据进凑程的pi退d号通供过查职看/p略ro持c/摧pi拳d文件棉夹中凉内容抵获取堡相关盗信息咏。例堵如查龙看in烦it进程肤的st卵at姜us:Na陈me货:成in纠itSt蹦at之e(进程禾状态):插S能(s闪le堪ep休in脱g)Pi奥d(进警程号缩慧):六1Pp杂id(父横进程佣号):容0Tr否ac密er陡Pi系d(跟姐踪进质程号项):屋0Ui阳d(所贯属用冬户ID):切0芬0阅0巾0Gi嘱d(所属笛组ID冈):慎0置0卸0谦0FD颤Si鱼ze(文件乖描述漆符的慎最大做个数):闪32Vm凑Si故ze(任务衰虚拟坛地址园空间复的大鼻小):李14冒12锐k拍B……源代汽码位赵置:/i仰nc郑lu蜡de蛙/l钢in巾ux餐/s责ch朴ed等.h宁(9纺40絮-1脂19折5)(部枕分)弟:st疑ru穿ct瘦t况as调k_闪st温ru吴ct榨{vo辉la科ti懂le惨l纷on做g右st总at刻e;业/悔/运行鹊状态为标识in匀t霞pr餐io长,抛st变at锄ic薯_p疤ri柳o,稳n英or伤ma视l_两pr啊io并;枝//动态餐和静或态优致先级裤等st喷ru狸ct岩l来is选t_湿he霜ad堤r驰un象_l啦is卸t;服/撇/进程雹在就畏绪队棉列中末的节糕点un箭si桨gn给ed认i踏nt郑p盏ol革ic甜y;权//该进牲程的致调度伴策略un怪si日gn裂ed哈i距nt摊t分im浊e_乔sl洞ic抢e;素//(剩海余)远时间飞片st吹ru顾ct罗m帐m_就st押ru李ct柱*黑mm帖,摊*a司ct恐iv窃e_饺mm侵;稠//指向恩所属录内存惜描述批器pi范d_非t眯pi昏d;妖/涛/进程山标识申符st沟ru辱ctta锐sk瓶_s朽tr秒uc西t窗*p染ar判en挖t;迷//指向冬父进伙程st充ru逃ctli细st蜂_h糠ea译d凝ch抵il注dr廉en瓦;理/肿/关于衫子进崭程的双向骄链表st疏ru争ctpi示d_翼li并nk摩p悼id洋s[茂PI耀DT构YP捏E_橡MA感X]掠;//快速沾查找闭进程北的哈希损表ui旁d_本t乘ui物d,金eu猜id尘,s猎ui字d,爬fs店ui涛d;隙/阔/创建绝该进恢程的口用户IDst议ru蜘ctmu那te沃x_究wa粥it永er负b乌lo吉ck交ed苏_o隆n;遮//用于姨检测生死锁交的互千斥量wa付it妇_q缠ue点ue己_t防i退o_际wa活it谢;烘/蕉/用于蜻处理IO等待眯的队列};4.公2进程我概念双向之链表圣是管忽理进凶程的撑重要殿数据诵结构身,在Li母nu投x中,赚链表场节点攀定义限为li舟st搁_h查ea护d。4.昌2进程光概念li秋st请_h妄ea迁d的部希分定姐义和杂操作话如下踏(in裕cl振ud黄e/驶li疤nu侦x/寄li牵st等.h):st辩ru岩ct盐l涉is危t_诊he厕ad拆{st防ru驶ct寒l闲is笛t_汉he束ad覆n阶ex谨t,究p饲re农v;};st冶at将ic肃i蔽nl古in僵e色vo梯id切I持NI都T_略LI访ST庸_H包EA灾D(替st窗ru素ct伶l龄is匠t_椅he土ad夸l钉is拣t){li疫st汇->ne万xt迈=净l预is精t;li惭st颈->pr暮ev誉=筹l性is豆t;}st馅at删ic停i完nl践in嫌e孝vo蛙id具_荐_l俱is之t_贸ad风d(渗st肚ru清ct个l洲is病t_非he这ad亭n盲ew淘,st歼ru置ct宴l欧is绒t_缴he颗ad丧p帜re电v,st熊ru亮ct缴l时is是t_炉he筑ad晃n浑ex敏t){ne估xt篇->pr题ev洽=萝n进ew世;ne凡w岭->ne泛xt鬼=菠n朱ex拒t;ne琴w暂->pr妈ev押=披p李re锈v;pr弯ev特->ne贪xt伴=岩n销ew山;}4.基2进程申概念就绪洗队列(ru浆nq巧ue崖ue)是一有种主笨要用厅于进秀程调促度的抄重要注数据易结构袜。Li袄nu陕x为每喂个CP肃U均安残排一驴个就妙绪队胆列。春数据斤结构漏部分萝定义但如下横(li你nu舅x/费ke碰rn弄el相/s敬ch阀ed拌.c,2渐25):st复ru舌ct踩r剑q子{sp网in开lo躬ck降_t透l知oc色k;//保护派该队反列的管自旋刮锁un吸si大gn兽ed些l腥on在g稍nr榆_r折un胖ni批ng招;//队列朋中就什绪进污程的飞数量st叹ru够ct芒t邻as剥k_猫st夸ru丑ct够*冰cu料rr成;//指向改当前纸运行办的进情程in建t洒cp遵u;//该队仁列所请属的CP蚊U号};4.另2进程夜概念等待造队列蚂是另另一种恐用于脊中断主处理瓶、进法程同露步等工内核母操作灿上的狼重要威数据祖结构背。队搜列中湾的每测一个朴进程阶节点坦均等荣待同概一事罗件,键并处锄于睡耽眠状肉态。艺数据役结构称定义庸如下牛(in梢cl扶ud纵e/男li仗nu索x/葬wa奏it缩慧.h)://等待分队列歉的头留部st造ru额ct必_肉_固wa预it则_q研ue稀ue兽_h获ea康d耻{sp庆in波lo公ck祸_t讲l新oc胃k;奥//用于奴对等挎待队震列互腥斥操朝作的衬自旋榨锁st烈ru猫ct予l欣is泳t_搁he伞ad打t薯as丛k_槐li注st蚁;柔//头部挨节点};ty敢pe两de垂f凳st琴ru项ct抽_傍_尼wa纠it威_q盒ue留ue致_h滤ea李d缠wa功it设_q雪ue独ue袜_h爬ea映d_法t;//等待咬队列哭节点糟的定裂义st液ru景ct恳_励_胀wa盲it喂_q躺ue艘ue骨{un蓄si索gn患ed暂i换nt吸f类la樱gs理;册//进程拢类型拜(独份占EX昆CL策US社IV唉E/非独允占)vo名id塌*奋pr锤iv许at叮e;键//指向烈该进醉程的PC纪B块wa刚it射_q兽ue虏ue摧_f莲un迹c_坟t符fu坚nc强;呀//定义僚唤醒躁进程诸时的用处理趣方式st率ru秃ct班l瞎is层t_银he璃ad阴t伙as窝k_犯li厦st里;问/肉/对应慌的节斧点};ty活pe杜de孤f赞st年ru什ct暖_董_现wa猴it掉_q每ue玩ue午w皱ai蛛t_甚qu拦eu曾e_挺t;关于领等待应队列等的部槽分操雨作://对节勾点的帽初始糕化St池at肚ic纺i汁nl惰in姐e婚vo汽idin抽it采_w嚼ai牺tq哲ue誓ue它_e僵nt奏ry(w杰ai剃t_见qu倡eu工e_狗t艺q,st孟ru惕ct颤t争as缩慧k_虑st评ru铅ct乡丰p全){q旦->fl悼ag懒s牢=午0;版/侦/定义由为非舞独占陕方式q剩->pr偶iv秧at厕e诞=补p;军//指向障进程百的PC躬B块q胶->fu筝nc累=仿d栋ef升au请lt盏_w凑ak睡e_奴fu佣nc炊ti础on跌;嗓/谜/默认凶的唤虎醒方召式}//加入低新节炸点到绿队列淋尾部st紫at泛ic弯i辅nl假in悼e亩vo铺id__夕ad斥d_陪wa湖it士_q洞ue驶ue览_t凶ai兆l(w鞋ai映t_记qu赴eu皱e_打he慢ad倚_t吓h葵ea导d,wa墨it香_q喜ue勾ue孔_t拘n尤ew怖){li丽st轮_a犯dd冤_t件ai阁l(纯&n霞ew>ta约sk孟_l街is牵t,讯&集he束ad>ta友sk阶_l出is诵t)辜;}//加入在新节玻点到墙队列啄头部st造at贿ic籍i剩nl馋in振e口vo喷id__裤ad乌d_甩wa恒it豆_q渣ue造ue(w塞ai璃t_卖qu谈eu颜e_振he询ad讯_t图h送ea挠d,wa感it猎_q锋ue澡ue冲_t侵n金ew朴){li损st脾_a辛dd黑(&诞ne返w>ta习sk预_l眨is诱t,患&直he府ad>ta柜sk轿_l烫is条t)鬼;}4.律3进程台控制4.仍3.剖1进程凑控制亦的概剧念进程兆控制估包括蛋进程唉的创建且、撤凑消、谷阻塞裤、唤辅醒等过扮程,跨每个窗过程街对应壁于一物个系统传功能友调用掌子例续程,并位以原老语的哪形式至提供踩给外勉层软杆件调驰用。原语柱:一耀种特竿殊的炒系统幅调用感命令斥,最沙大的筋特点例是执行驱时不素可中荐断。对廊应地喉,有锅创建丛原语脱、撤做消原艘语、游阻塞肉原语茄、唤炎醒原愈语。思考彻:为狂什么闸以原鹿语的赞形式呀调用什关于广进程港控制苗的程伯序段滩?此通外,狭在操良作系狮统中奏如何相实现齿原语荡?4.拣3进程退控制原语苗操作温往往覆是通驶过禁炸用中浆断而奖实现历的。陡因此菠依赖仆于底拴层架偷构。注意即原语(pr已im远it捐iv计e)要与魔原子(at找om呆ic)区分意开来朽。原沙语是供指为明了完盒成某女些特腥定的狮功能甲而编叛制的尖一段姨系统觉程序执,而余原子皱则是占指一积个不谈可再不分割耀的操匀作(龟如读货后写凭),否往往录通过誉一条叠单独隆的指瘦令来瓜实现烈。在Li小nu框x中,乏原子橡操作乡丰可参是考源劳代码茅:in唇cl浅ud屿e/特as泛m-世i3卷86舟/a样to伏mi毫c.斗h4.涉3进程费控制进程效控制衰是关夕于的现单个掀进程演的状鸦态变愚迁的稻控制。无——有——消亡创建撤消就绪运行运行等待等待就绪调度唤醒等待4.惯3进程替控制4.忆3.痕2进程析创建进程岸创建滩原语馒:cr先ea论te淡(n圈am耀e,睛pr宴io吨ri稼ty棚,s琴ta搭rt咏_a伍dd焦r)na雪me判:进程绸标识垦符pr先io闭ri耻ty竹:进程箩的优联先级st万ar搬t_颜ad军dr掠:程序熟的起歌始地雾址进程扇创建磁者称泼为父准进程眨,被向创建康者称浮为子蹦进程饥,子进烘程的岁大部昨分资竭源,境均可忌从父根进程泻处继偏承。4.史3进程喊控制4.绝3.趋2进程哄创建让(MO贩DU版LE劈燕4扁.5,p8渴0)第一蜓段:榨为申雹请PC帝B作准诉备。第二垦段:继申请伸空间悬并设猎置内严容第三筋段:魂进程陈进入肠调度非队列旨。关键丝式内容柜:申惠请一姐个空间闲的PC题B结构待。4.胖3进程辅控制4.烂3.辉2进程孟创建PC烈B资源幅池的智概念情:PC歇B资源罗池就怜是PC棕B集合租,是舱在系狼统区陶开辟劫的一数片区衣域,烘用于焰存放驾所有亚的进伐程控徐制块述。操江作系脂统从有实际澡承受绣能力提出发损确定PC水B最大努个数起。进皮程创过建的批关键蕉,就追是从PC扯B资源孙池中咐获得厌一个PC蜘B。在Li混nu锣x中,绘默认担的最疑大进廊程数浙目(PI负D_遮MA铲X_垒DE始FA汽UL犬T气-研1)为32勺,7蠢67,通织过写销入/p筒ro艰c/疗sy预s/雄ke扮rn向el界/p覆id榨_m眨ax可缩点小该召数目案。数组pi龄dm箩ap用_a吼rr川ay作为PC戒B资源革池,赴系统弊每次喊创建刘或结坡束进羡程时衬均要宣访问习该数性组。进程姻创建谋原语闸的实牢现4.的3进程蒸控制Li井nu尤x下的追进程织创建捏:P1胁09关于颗进程牢创建尺的层枕次关们系,牵可以斥通过ps税tr渡ee命令淡查看勤。Li厦nu殿x下的莲进程脑创建清通过应系统输调用fo宋rk完成性。对访应实叼现的氏源代冬码有孔:ke破rn斥el漏/f悼or葛k.秀c。其均中有费两个导关键舒的函傍数:do间_f想or若k莲(1供36叔0)和co立py搜_p箭ro既ce祥ss舍(9阅60别)。do念_f恳or描k负责精完成滤整个饲进程辅的创毒建。狐其中撞主要哨的任熟务是乐从父谅进程眨中克模隆(c某lo茂ne拍)t术as杜k_裁st治ru淹ct,由co奖py丑_p厕ro霉ce爱ss完成徐。do来_f型or蝇k函数糟的部裂分代困码:lo州ngdo务_f各or拌k(u声ns放ig铺ne虹d供lo键ng谊c股lo仰ne根_f映la扣gs必,乐un夹si挖gn花ed哪l短on慎g粘st朋ac慎k_萝st灭ar赔t,st改ru受ct决p刊t_纲re壶gs蒸*矩re哲gs铅,疯un稍si浩gn壳ed弯l派on河g扑st开ac索k_熟si乳ze盲,in榨t擦__伐us筐er报*野pa嘱re停nt逃_t筹id贡pt野r,笨i慨nt展_蒸_u懂se惭r神*c材hi弹ld薯_t郑id荷pt棚r){st迫ru税ct软t转as悟k_联st湿ru免ct正*怀p;果/匹/定义舍新建漠进程敲的PC誓B块指显针in惨t有tr灾ac拥e长=教0;st虑ru嫌ct丸p诱id士*笼pi示d盒=餐al窜lo侧c_铸pi球d(马);脉/搭/从pi蜂dm降ap驰_a提rr告ay申请PI穿D号if职(健!p反id盾)跳/嗽/如果购分配PI麦D号不喉成功忙,返脑回re券tu抓rn横E倦AG尝AI恋N;……//根据系父进缘瑞程复班制一价份PC越B数据抄给子辣进程p续=co葱py谢_p页ro打ce啄ss(c事lo春ne折_f住la登gs乐,折st仪ac活k_堤st债ar遗t,re后gs往,堂st麻ac积k_仙si娇ze艳,pa很re蛙nt悼_t珍id医pt害r,膜c宜hi登ld碍_t谊id具pt篇r,甩p骄id辟);……}4.只3进程减控制Li守nu芝x下的律进程柴创建死:Li瘦nu橡x系统伙提供姑的创块建子片进程课的系暮统调拘用是fo脂rk雪()函数fo烈rk越()函数参数狡:无返回龄值:0创建堡成功饿,从挺子进踩程返竿回>0创建镇成功露,从筑父进踏程返支回,浩其值嘴为子钉进程PI青D号。-1创建罢失败医。4.拳3进程誓控制4.执3.丈3进程总撤消进程面撤消秩原语仙:ki暖ll(ex市it)对当吓前进仿程所象占有掩的资而源进倚行回车收,每进程系一旦砌撤消挠就不锡可能定再转垄换为值其他肉任何蓄进程且状态赢,该目进程示的生具命周挎期就号此消幼亡。4.秤3进程辩控制4.淡3.喉3进程烤撤消锣(MO去DU唐LE扩4倦.6)主要刑做了篇三件永事:PC芒B结构始归还进到PC狸B资源便池从总缎链队茫列中厉移除所占吵用资告源归翻还到煤父进遵程思考贵,如落果该近进程喷之下播还有脑子进坏程,舱那么特这些羽子进鸣程该盯如何今处理究?4.柏3进程令控制进程旱撤销炸原语拳的功亿能1、按财照被姜终止糕进程斩的标拴识符翁找到阶其PC阔B;2、将馆其运驰行的开结果拍信息须返给莫其父架进程谋;3、将建其所忍占资半源或与归还外系统寇,或胞还给趴其父丹进程危。将该橡进程驶的PC胖B结构船归还漆到PC释B资源格池;4、从色总链悔队列什中摘鹿除它勉,并渔将其PC副B置为徐空;5、若只被终炭止进钞程处盲于执讨行状茅态,印则引命发进腹程调须度。6、若放被终暑止进阴程有极子孙妥进程宏,则隆将其籍子孙亦进程较同时松终止落。进程蔑撤销伸原语肉的实良现4.军3进程别控制Li超nu俩x下的丹进程兽撤消吸:Li挖nu狼x下的浪进程信撤消痕通过匆系统本调用ex姻it完成指。对朵应实悬现的陪源代律码有汤:ke召rn另el挺/e肿xi泼t.既c,主户要实耕现的狐函数庙有:do_e纠xi赔t(88芳5)上页保思考偶题可雕参考边源代炼码(59坑5,69)4.讲3进程窄控制4.秧3.矛4进程道阻塞进程埋阻塞适原语潮:su摔sp群(c浸ha记n)ch思an澡:进程胳等待吊的原咏因通过膝调用妇阻塞荣原语木,可唤使到摆进程宣从“宫运行链”状揉态转消变为筑“等奋待”戒状态盆,此风调度新也称瞧为挂裹起。4.净3进程泉控制4.智3.喘4进程诞阻塞辨(MO桑DU止LE裤4毕.7)主要孝做了北四件幻玉事:保护谊现场置阻童塞状讯态进阻宅塞队带列转入悠进程撤调度4.乖3.柏5进程朽唤醒一、牙当阻屿塞进惑程所紧等待帖的事胆件发唯生时吨,就再会被耻唤醒沟。执宪行状国态进阻程通码过执擦行这毫个原呆语去确唤醒葵一个困阻塞骨进程采。二、语进程款唤醒膛原语货的形糟式当处满于等渠待状债态的徒进程糕所期棚待的料事件往来到族时,绝由发迟现者葱进程楼唤醒荒。wa黎ke础up(ch顷an)入剑口参抛数ch纺an:进弃程等剃待的和原因三、冲进程民唤醒上原语柄的功侄能1、当野进程刮等待付的事气件发舟生时辫,唤通醒等捆待该交事件仁的所语有进农程或絮等待怨该事逗件的合首进疮程;2、进晶程状糠态置饰为就燥绪状里态,胜并移名入就功绪队照列。4.蛮3进程浊控制Li您nu址x系统轮中的址进程衡阻塞#i扭nc酷lu全de规<庆st附di叮o.枯h>ma赞in愧(v系oi限d){in早t炮p;wh皂il盼e(烦(p之=f蚕or垃k(榨))型==禁-1掠);if搂(p慈>0厘){pr坛in遮tf饰("链th高is坊i洲s稠th誉e码pa获re脑nt摊p干ro孔ce盏ss爽w密ai岔ti付ng厨..羡..焰\n袭")澡;wa稻it爷(0创);pr缎in搅tf卵("挥th摄is担i躺s免th亚e隐pa修re景nt拉p延ro笨ce孔ss酸e蔽xi警t.匪\n葬")世;}el方se蜡{pr嗓in五tf搁("谱th克is狼i身s针th甜e叹ch老il档d闭pr圾oc绘es疤s-杯-%对d\耕n"捐,涌p)谦;sl境ee截p(冈3)谨;pr测in剑tf铺("酸th滨is捎i盆s冶th壮e丘ch翠il悼d欠pr夫oc膏es爽s标ex钟it冲.\翁n"骗);ex检it模(0粪);}}4.倡3进程卧控制Li润nu油x下的翻进程提阻塞榨:Li腰nu浪x下的选进程奥阻塞宣通过辞系统椅调用奋完成推。对饼应实援现的撕源代比码有盐:ke脸rn故el歌/w锋ai摘t.坡c,ke愧rn葱el腿/sc嘴he唉d.炉c。其中泼关键璃函数及为sl愿ee据p_败on(sc缩慧he滑d.土c,壮39丘05齿),wa罪ke戚_u旋p。Li担nu控x中的换睡眠缝(等贵待)叔和唤世醒:vo览id南_牛_s直ch撇edsl冰ee填p_郑on(w恢ai着t_宏qu锯eu洗e_释he冲ad潜_t堤q棵){un兼si况gn刮ed老l千on侧g报fl并ag恨s;wa醒it丙_q办ue温ue遭_t雀w王ai执t;胆/肌/定义袜一个间等待姓队列争节点in疤it皆_w街ai应tq色ue纸ue带_e朗nt酷ry记(&厉wa沫it袍,杨cu卸rr狠en融t)钉;建//调当钱前运条行进盾程入狸队列cu捷rr适en析t卸->st慌at吊e而=造TA杯SK呢_U锯NI勒NT轧ER民RU缸PT遗IB头LE刃;霉//设只咬有wa拔ke探up函数过才能位唤醒sl劳ee滴p_翻on漫_h吸ea盼d(q衫,衔&w摇ai魔t,寇&泛fl寻ag帽s)截;币/桂/把进坟程加局入到饲等待刷队列踏头部sc秃he炒du奖le棋()似;//继续烧执行颠调度气函数暗,调燃度其哗他进懒程运尼行sl表ee墓p_阁on艰_t猴ai留l(q年,柳&w学ai芹t,幸&睡fl泡ag耗s)龟;鞠//唤醒引进程电后调住度函诊数返末回此符处将语其移汽除}st含at辈ic吃v妥oi进d__态wa答ke毛_u境p_邮co谁mm市on(w偏ai尽t_糊qu监eu软e_所he娘ad桥_t持q肿,劳un逮si狗gn要ed始i援nt制m帝od壁e,in老t为nr府_e都xc夕lu奶si陈ve绢,娇in椅t拘sy事nc收,菊vo泻id间k墓ey峰){st路ru秒ct寒l仰is蜓t_喉he狐ad哗*却tm欣p,笔*正ne于xt降;//遍历葱等待司队列li突st葵_f铲or德_e孟ac撑h_娇sa义fe(t怒mp晌,亦ne丹xt盼,状&q围->ta怜sk男_l承is惊t)铁{wa先it惭_q掘ue肃ue妹_t辛c件ur锈r茶=轿li睬st问_e底nt巾ry庸(t准mp却,摄wa种it阶_q孕ue慨ue弹_t立,迅ta粒sk欣_l咐is简t)捆;un反si墙gn放ed携f天la渗gs咳=提c肾ur牙r茄->fl没ag铃s;//非独吵占进侍程可搏全部自唤醒型,若奋是独裁占的景,则窃只允南许唤市醒其裁中一热个if瞧(竿cu地rr危->fu右nc亮(c缩慧ur禽r,柿m香od缘瑞e,弟s讽yn乎c,琴k根ey营)迫&&(f伙la午gs狸&拖WQ朽_F单LA挂G_浮EX谋CL战US拐IV费E)季&收&弦!疑nr域_e氏xc孟lu洒si示ve倒)br奶ea症k;}}4.数4进程窄的相哑互制凝约关疼系4.虏4.俊1进程愿的竞禽争与誓合作进程割间相都互制贼约关烘系分贯两种冒:1、竞卵争系庄统资残源:而处理正机的帝竞争寨,内腿存页罩面的姥竞争阵,进程残向系阁统申定请,迫由系腾统统拔一分奔配。2、进驻程协趴作:进程非间通耀过同铜步机抗构自葛行协烧调。信班息共敲享,饶并行秤处理思考聋:能语否简艘单统社一为垦第一廊种或非第二南种关躁系?4.可4进程第的相持互制搜约关班系4.终4.霞2互斥叠的概疗念两个序例子煤:1、打炼印机父分配丙表的忧修改筹和访窑问(p就86造):假患设每躲台打弄印机纺的分库配必围须读占写打傻印机姓分配悬表。浙则只翼允许广一个斗进程步读写各打印临机分露配表组,其唐他进餐程不良可使哲用该披分配孔表。4.慢4进程垦的相典互制及约关报系4.恐4.徐2互斥养的概按念两个送例子园:2、公肤共变美量的梨修改兆和访后问(p锻86务):在透一段犬时间曲内,籍只允某许某姑一进若程使既用该摆变量修,其华它进拍程不旗可使昂用该旦变量耗。csA进程A...X=0...X=X+1...进程C...CScy{
Y=0...CScx{
X=X+10...思考茫:你抵能举蚕出另按外的鸽关于赢互斥粒的例凡子吗闪?4.赌4进程优的相泳互制殖约关拌系4.秃4.疮2互斥栗的概歉念现实过世界挑中互肉斥的诱例子物有许海多,鹅如十拍字路织口的匠红绿映灯问测题等疯。互斥贷的广现义概泊念:叫在有挥多种苹活动球同时休进行幅的系毙统中啦,有字时要播求,澡当执荷行某巡寿一动哀作时设,不榆允许新进行六其他低的动夹作,渡这种损限制被条件习成为扔互斥鉴。4.歪4进程圣的相存互制罩约关悠系4.报4.帖2互斥日的概挨念导致宪进程年互斥头的原孝因在堪于进牺程间找对某倘些关踩键资纺源的揪竞争园。一个得进程凳如果逢不能倍获得贴这些奥资源纲,则挂不能鞋继续碰推进滨下去俭而进膊入等北待状希态。更重歪要的决是,少在计嚼算机脏系统耍中除脉了CP肌U资源独,大事部分兽的可割共享漠资源此都并咳不具孔备由诉中断援而产滥生的撕保护北现场阀机制赛。因头而必淡须采拣取互节斥机豆制来依保护膀与资办源相萝关的柄数据机一致复性。4.勿4进程科的相脱互制绍约关直系4.继4.浩2互斥季的概纠念临界掉资源筑:将一次(一段坚时间国内)仅允蔑许一慰个进绘程使画用的恩资源。解决厕资源匆使用员冲突键的方枯法,升就是直让进芹程有序地使收用临筑界资净源。临界健区:笼在每悲个进馒程中北,访问丽临界喷资源活的那嚼段程窜序,能烈够从巴逻辑伐上分机离出衣来称堵其为甘临界姿区、迎或临猛界段朵。4.虾4进程米的相役互制兆约关冻系4.睁4.菜2互斥吴的概萍念临界饥区使扑用的千三点演原则遣:P8测7所有舅存在荒互斥泉关系明的进铜程,荒在同护一时占间,有且眼仅有连一个妨进程匀位于禾临界两区。进程在临午界区晒逗留迫有限闯的时扯间。每个俱进程进入筋临界勺区的禽时间泼是有资限。4.屡4进程祝的相从互制益约关猫系4.丹4.牛3进程山同步珠的概青念所谓恶同步晚,就立是多示个并蚕发进颂程,丸在一援些关同键点贝上需饶要互恳相等浴待(有次戏序限豆制)、互用通消醋息。思考注:进程宪同步孕与进碑程互字斥有政何区尤别?4.井4进程托的相棕互制凝约关叹系4.去4.求3进程淘同步千的概势念同步备往往竖是指凯一组共同较合作完成位某项券任务吼的进赚程之腹间的协调。互融斥却骑是指皆多个叨进程取为争夺同一安临界王资源由而产胸生的制约。进程匆同步瓜需要甲由进笔程间根自行袭通信偏完成窗,系飘统只捧提供滋通信侨的工玻具。押进程后互斥元则是顶由系颈统制译定特络权变思量来宰实现畅,进谱程间标不需雹要有洪通信急。思考耍:请歼举在翅现实傻生活荐中的面一些条关于融同步滨的例戒子。4.却4进程起的相愉互制拦约关干系4.铁4.月3同步溪的例绣子(p8箱8,图4.巧17,图4.菊18)医生:初蹲诊--高>开验惩单--口>读结锣果--般>确诊化验右室:怎化验--枣>写结芳果4.书5同步茄机构4.掠5.继1锁和亏上锁俘、开像锁操向作1.什么晶是锁用一幕个变询量w(或二功进制物位)代表欲某种夜资源俱的状势态,螺称其贝为“猛锁”那。2.锁用岭来干呈什么家?锁是打实现拍进程腰互斥猫的重验要工锡具。4.泄5同步样机构4.员5.羞1锁和害上锁逼、开衫锁操猪作3、控琴制步遥骤第一景步:上锁驱操作检测w的值么如果w的值像为1剃(表示油已上奋锁,除资源纺已被短占):则圾继续烫检测井,直赌到锁距打开如果w的值旋为0垃(表示奔未上伞锁,炒资源嚷空闲
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026届云南省曲靖市陆良县九年级数学第一学期期末达标检测模拟试题含解析
- 冠心病饮食疗法大纲
- 2025医师劳动合同
- 专科知识培训内容课件
- 专心我能行课件
- 音乐课堂教学步骤
- 老年人睡眠障碍
- 市场大咖探秘:嗅觉电商平台的发展方向与实践案例
- 绿色数据中心建设案例分享与经验总结
- 2025中外合资企业劳动合同范本
- GJB1406A-2021产品质量保证大纲要求
- 银行趣味测试题目及答案
- 2025中国电建成都院勘测设计分公司社会招聘笔试历年参考题库附带答案详解
- 冲压技术员考试试卷及答案
- 院感知识试题及答案
- 再生障碍性贫血护理教学查房
- 2025自考专业(国贸)考前冲刺试卷及完整答案详解
- 浙江枧洋高分子科技有限公司年产15000吨无溶剂聚氨酯胶黏剂和5000吨水性胶黏剂、5000吨热熔胶建设项目环评报告
- 运动素质知到课后答案智慧树章节测试答案2025年春浙江大学
- 《急性肝功能衰竭》课件
- 2024年-2025年电梯检验员考试题库及答案
评论
0/150
提交评论