计算机操作系统原理 ch2 进程概念(精品·公开课件).ppt

计算机操作系统原理 ch2 进程概念(精品·公开课件).ppt

  1. 1、本文档共100页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 进程的描述与控制 进程描述 进程控制 线程 实例:Solaris 本章重点 并发程序的特点 进程的概念 进程和程序的区别 进程状态 进程控制原语 线程的概念 一、进程描述 程序的顺序执行与并发执行 进程的定义 进程的特征 进程的状态及转换 进程控制块 程序的顺序执行 程序的顺序执行如图 在计算机系统中只有一个程序在运行,这个程序独占系统中所有资源,其执行不受外界影响。一道程序执行完后另一道才能开始。 程序顺序执行的特点 顺序性:一个程序开始执行必须要等到前一个程序已执行完成 封闭性:程序一旦开始执行,其计算结果不受外界因素影响 可再现性:程序的结果与它的执行速度无关(即与时间无关),只要给定相同的输入,一定会得到相同的结果。 程序的并发执行 所谓程序的并发执行是指:若干个程序同时在系统中执行,这些程序的执行在时间上是重叠的,一个程序的执行尚未结束,另一个程序的执行已经开始。 并发执行实例-- 并发程序的时间相关性 誊抄 用卡片输入机尽快地把一个文本复写(誊抄)到行式打印机上去。 由Brinch Hansen提出 循环顺序程序的誊抄方案 输入:f 输出:g { while (f 不为空) { input ; output ; } } 循环顺序程序的誊抄方案 设读卡机的标定速度是1000卡/分,打印机的标定速度是600行/分,那么此系统的最高传输速度为()行/分? 两个并发程序方案 设有一台标准输入设备(键盘),和一台标准输出设备(显示器或打印机),输入程序负责从标准设备中读取一个字符,送缓冲区中。输出程序从缓冲区中取数据,送标准设备输出。 两个并发程序方案 两个并发程序方案 { cobegin while (不为结束符) { input; send; } while(buffer不为空) { receive; output; } coend } 两个并发程序方案 誊抄的速度可以提高到600行/分。 存在的问题: 读卡机和打印机速度不匹配,导致虽然提高了设备利用率,但是不能正确誊抄。 a、若打印的速度高于输入的速度; b、若输入的速度高于打印的速度 三个并发程序方案 假设有两个缓冲区,每个缓冲区只存放一个字符,get程序负责从输入序列f中读一个字符,然后,送到缓冲区s中,copy程序负责将s中的字符复制到t中,put负责从t中提取字符打印。 三个并发程序方案 三个并发程序方案 如何实现? { while(誊抄未完成) { cobegin get(s,f); copy(s,t); put(t,g); coend } } 三个并发程序方案 {if ( f 不为空 ) { get(s,f); while(誊抄未完成) { t=s; cobegin put(t,g); get(s,f); coend } } } 方案比较: 方案1系统利用率最低 方案2、3提高了设备利用率,但需要增设缓冲区,且方案2会因速度匹配出错。 思考:试举出现实生活中的此类例子。 程序并发执行的特点 失去了程序的封闭性 如果一个程序的执行可以改变另一个程序的变量,那么后者的输出就可能有赖于各程序执行的相对速度,即失去了程序封闭性的特点。 程序与计算不再一一对应 程序-静态;计算-动态 程序并发执行的相互制约 直接制约--相互之间有逻辑关系(I,C,P) 间接制约--由于资源共享引起的联系(I1,I2) 进程的定义 进程的概念是60年代初首先由麻省理工学院的MULTICS系统和IBM公司的CTSS/360系统引入的。进程有很多各式各样的定义,如: 行为的一个规则叫做程序,程序在处理机上执行时所发生的活动称为进程(Dijkstra) 一个具有一定独立功能的程序关于某个数据集合的一次运行活动。 进程是一个程序与其数据一道通过处理机的执行所发生的活动 进程同程序的比较 程序是指令的有序集合,其本身没有任何运行的含义,是一个静态的概念。而进程是程序在处理机上的一次执行过程,它是一个动态的概念。 程序可以作为一种软件资料长期存在,而进程是有一定生命期的。程序是永久的,进程是暂时的。 进程同程序的比较 进程更能真实地描述并发,而程序不能 进程是由程序和数据两部分组成的 进程具有创建其他进程的功

文档评论(0)

秦圈圈 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档