- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 进程管理 3.1 进程基本概念 3.2 进程调度 3.3 进程同步和互斥 3.4 经典的同步、互斥问题 3.5 进程通信 3.6 死锁 3.7 线程 重点和难点: 进程的定义和特征 用信号量机制解决进程同步、互斥 死锁及其解决方法 §3.1 进程基本概念 一、 进程的引入 二、 进程的概念 三、 进程的特征 四、 进程状态及其转换 五、? 进程控制块 六、? 进程的创建和撤消 学习要求 (1) 牢固掌握进程的概念 (2) 深入理解进程最基本的属性是动态性和并发性 (3) 掌握进程与程序的主要区别 (4) 掌握进程的基本状态及其转换发生的典型事件 (5) 理解进程的一般组成,应深入理解进程控制块的作用 3.1.1 进程的引入 程序的顺序执行、程序的并发执行特征比较 程序的顺序执行 程序的并发执行 1 顺序性 1 间断性 2 封闭性 2 失去封闭性 3 可再现性 3 不可再现性 进程的引入 多道程序系统的特点是并行性。为了充分利用系统资源,在主存中同时存放多道作业运行 各程序由于同时存在于主存中,它们之间必定会存在相互依赖,相互制约的关系。 (间接制约关系、直接制约关系) 在多道程序系统所带来的复杂环境中,程序具有了并行、制约、动态的特性,原来的程序概念,难以刻画系统中的情况了。 程序本身完全是静态的概念 程序概念也反映不了系统中的并行特性 1、程序的顺序执行 一个较大的程序通常都是由若干个程序段组成。在程序执行时,必须按照某种先后次序逐个执行,仅当前一操作执行完后,才能执行后继操作。 例如:在进行计算时,总是先输入用户的程序和数据,然后才能计算,计算完成后再将结果打印出来。 程序顺序执行时的特征 顺序性:按照程序结构所指定的次序(可能有分支或循环) 封闭性:独占全部资源,计算机的状态只由于该程序的控制逻辑所决定 可再现性:初始条件相同则结果相同。 2.程序的并发执行 程序并发执行: 一组逻辑上相互独立的程序或程序段在执行过程中,其执行时间在客观上相互重叠,即一个程序段的执行,尚未结束,另一个程序段的执行已经开始的这种执行方式。 程序并发执行时的特征 间断性 失去封闭性 是多个程序共享系统中的各种资源,因而这些资源的状态将由多个程序来改变 不可再现性 不可再现性 例如:有两个循环程序A和B,它们共享一个变量n。程序A每执行一次时都要做n:=n+1操作;程序B每执行一次时,都要做print(n)操作,然后再将N置成“0”,程序A和B以不同的速度运行。(假定某时刻变量n的值为V ) 程序并发执行的描述 假设有一个程序由 S0~Sn+1个语句, 其中 S1~Sn语句是并发执行的,程序如下: S0; cobegin S1;S2;S3;...;SN coend; Sn+1; 程序并发执行的条件 1966年,Bernstein提出了相邻语句S1,S2可以并发执行的条件。 将程序中任一语句Si划分为两个变量的集合 R(Si)和W(Si) R(Si)={a1,a2,……am}是语句Si在执行其间必须对其进行读写的变量 W(Si)={b1,b2,……bn}是语句Si在执行其间必须对其进行修改、访问的变量 如果对于语句S1和S2,有 ① R(S1)∩W(S2)={Φ} ② W(S1)∩R(S2)={Φ} ③W(S1) ∩W(S2)={Φ}同时成立 即:R(S1)∩W(S2) ∪W(S1)∩R(S2)∪W(S1) ∩W(S2)={Φ} 则语句S1和S2是可以并发执行的。 前两条保证一个程序的两次读之间数据不变化;最后一条保证写的结果不丢掉。 例:若有两条语句C=a-b和D=c+1,判断它们是否可以并发执行? 解:它们的“读集”和“写集”分别为 R(C=a-b)={a,b};R(D=c+1)={c} W(C=a-b)={c} ;W(D=c+1)={D} R(C=a-b)∩W(D=c+1)={Φ} R(D=c+1)∩W(C=a-b)={c} 所以:两条语句不能并发执行。 有的同学发现,同一语句的“读集”和“写集”的交集是空集。 R(C:=a-b)∩W(C:=a-b)={Φ} W(W:=c+1)∩W(W:=c+1)={Φ} 练习 例:用Bernstein条件判断以下四条语句是否两两可以并发执行。 S1: a=x+y S2: b=z+1 S3: C=a-b S4: w=c+1 3.1.2 进程的定义 进程有许多各式各样的定义 (1)进程是可以并发执行的计算部分
您可能关注的文档
- GSM基站系统技术简介.ppt
- GSM中兴SDR基站配置程序.doc
- 吃奶长大动物.ppt
- GSM主叫程序与被叫程序.doc
- 40天减肥30斤健康减肥计划第二周计划(快速法).doc
- 2011年度设想汇报.pptx
- GT701WGADSL猫通过简介.doc
- 操控系统试验教案1(打印版).doc
- 风险投资对公司增值服务探讨.doc
- 2011年度年度报与2012年度定报规模以下工业布置会讲稿.ppt
- 2025年农产品冷链物流冷链设备选型与维护策略研究报告.docx
- 2025年生鲜零售市场损耗控制与供应链优化技术应用分析报告.docx
- 2025年主题公园行业品牌竞争力与品牌形象研究报告.docx
- 005.轮盘页面旋转切换效果ppt模板.pptx
- 服务行业店长竞聘报告.pptx
- 2025年煤炭清洁利用技术产业政策支持与市场响应研究报告.docx
- 基因检测在法医鉴定领域的应用与市场分析报告2025.docx
- 2025年基因检测在生物制药质量控制中的应用与市场前景报告.docx
- 无人零售技术应用在无人驾驶领域的市场接受度研究报告.docx
- 2025年体育场馆运营中的社会稳定风险评估与风险控制方法分析.docx
文档评论(0)