- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机操作系统教程(第3版) 清华大学出版社 主 编: 张尧学 史美林 第3章 进程管理 3.1 进程的概念 3.2 进程的描述 3.3 进程的状态及其转换 3.4 进程控制 3.5 进程互斥 3.6 进程同步 3.7 进程通信 3.8 死锁问题 3.9 线程的概念 3.10 线程的分类与执行 3.1 进程的概念 3.1-1 程序的并发执行 3.1-2 进程的定义 进程概念 处理机管理是操作系统的基本管理功能之一,它所关心的是处理机的分配问题。也就是说把CPU(中央处理机)的使用权分给某个程序,通常把这个正准备进入内存的程序称为作业,当这个作业进入内存后我们把它称为进程。 3.1-1程序的并发执行 1.程序 程序是指令的集合,是静态的概念。 2.程序的顺序执行及特点 单道程序系统中,程序在处理机上的执行是严格按序的,即前一个操作结束后,才开始后继操作。 主要特点: ① 顺序性 ② 封闭性 ③ 可再现性 3.多道程序执行环境的变化 无论是操作系统自身的程序还是用户程序,通常总是存在一些相对独立、但又能并发执行的程序段。由于这些程序段可以被多个用户作业调用,因此可在同一时间间隔内发生。这样一来,某个程序段可能对应多个“计算”,于是程序与“计算”已不具有一一对应关系了。这些“并发程序”就构成了一个“并发环境”。 4.程序的并发执行 程序在处理机上的执行时间是交叉重叠的,是提高CPU利用率而采取的一种同步操作技术。 多道程序系统中,程序在处理机上的执行过程是动态的、随机得、不可预测的。程序并发执行环境的主要特点: ① 独立性 ② 随机性 ③ 资源共享性 例 程序的并发执行 设程序A 执行 a1,a2,a3; 程序B 执行 b1,b2,b3. 若在CPU上执行是 a1 a2 a3 b1 b2 b3 ,则称程序A、B是顺序执行的; 若在CPU上执行是 a1 b1 a2 b2 a3 b3 ,则称程序A、B是并发执行的; 程序的并发执行过程描述 S0 /* 并发执行前的语句 */ COBEGIN P1 ;P2 ……;Pn; /*并发程序段 */ COEND Sn /*并发执行后的语句 */ Bernstein条件 设R(S):语句S执行时进行读变量的集合, W(S):语句S执行时进行修改变量的集合。 如果对语句S1、S2有 R(S1)∩W(S2)={ ∮ } W(S1)∩R(S2)={ ∮ } W(S1)∩W(S2)={ ∮ } 同时成立, 则语句S1、S2可以并发执行。 可以并发执行的例子 Procedure P(x); Begin K=5; x=k+1; write(x); End 不可以并发执行的例子 procedure Q(y); Begin k=10; y=k**2; write(y); End 5.并发执行带来的影响 程序描述 Procedure Get(top); procedure Put(blk); Begin Begin ② x←S(top); ① top←top+1; top←top-1; ③ S(top) ←blk; return(x); End End 飞机订票系统例子 设某航班票数为x,有两个终端T1(x)、T2(x)同时售票。 则 COBEGIN Process T1(x); Process T2(x); COEND Process T1(x); Process T2(x); Begin Begin ① Read(x); ② Read(x); ③ if x≥1 then x=x-1; ④ if x≥1 thenx=x-1; ⑤ write(x); ⑥ write(x); End End 设某时刻x=1,按①②③④⑤⑥执行,则导致一张票售了两次。 T1:read(x) x=x-1
您可能关注的文档
最近下载
- 园林建筑材料与构造-5现代亭廊架.ppt VIP
- 各类生产安全问题应急部回复汇总.pdf
- 火山引擎·数据飞轮-行业实践系列自皮书·银行业 -新一代全行级标签体系与标签应用篇 2024.docx
- 2026年辅警招聘考试试题库200道【必刷】.docx VIP
- 16S401管道和设备保温、防结-及电伴热.docx VIP
- 建筑工程图集 21CS03-3:一体化预制泵站选用与安装(三).pdf VIP
- 建筑施工安全操作规程汇编.doc VIP
- HG-T 21522-2014 水平吊盖板式平焊法兰人孔.pdf VIP
- doc 9835国际民航组织语言能力要求实施手册.pdf
- 2025医院医德医风教育培训计划方案.docx VIP
文档评论(0)