第三章进程管理.ppt

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第三章进程管理本章主要内容3.4.2进程的同步2.信号量和P、V原语3.7线程跳转到第一页*系统中的一个工作单位,描述了程序的执行过程,系统在此基础上进行工作流程的控制和系统资源的分配在现代计算机系统中,以进程的观点来设计和研究操作系统的。因此,只有深刻理解进程的概念,才能够很好地理解OS各部分功能和工作。本章,首先引入“进程”的概念,指出其特点,然后,逐步介绍进程的管理,包括进程的建立、调度、同步控制等。3.1进程的概念3.2进程控制块和进程的状态3.3进程的控制3.3进程同步3.5经典的同步问题3.6进程通信3.7线程1.单道程序的特点:顺序性、封闭性、可再现性。2.多道程序系统中程序的特点:并发性、随机性、制约性、失去封装性和可再现性3.1进程的概念3.1.1进程的引入CP(){while(n10000)n=n+1;}PP(){printf(“n=%d\n”,n);}例3-1:设有两道程序CP和PP,它们共享一个变量n,其初值为0。CP程序循环10000次,做n=n+1;PP程序将n的值打印。CP和PP可分别描述如下:结果:可能,n=10000,0,2000…附加例:共享堆栈,取数和存数。Cobegin//并发说明getaddr(top){varrr=top;top=top-1;return(r);}reladdr(varblk){top=top+1;(top)=blk;}Coend//结束??abef??abef??abeftop→??栈top→(执行语句top←top+1后)top→←getaddr取数失败3.进程概念的引入3.1.2进程的定义1.进程的定义:程序在某个数据集上的执行过程和分配资源的基本单位。2.进程和程序的区别:例:类比静态与动态;长久与暂时;组成不同。3.进程的特征:并发性、动态性、独立性、异步性、结构性3.1.3引入进程的利弊空间开销空间开销3.2.1进程的状态及变化1.三种基本状态就绪调度执行等待时间片到等待某个事件等待的事件发生2.三种状态转换3.2进程控制块和进程的状态3.2.2进程控制块1.进程的组成:程序、数据集、PCB2.进程控制块作用3.PCB信息例3-2:PCB的C语言描述structpentry{intpid;intpprio;charpstate;intpname;intmsg;intpaddr;intpregs[SIZE];/现场保护区大小…..}pcb[];4.PCB组织方式操作系统的控制机构控制进程的状态变换。进程的控制机构首先表现在建立、撤消、解挂、挂起等方面。通常系统提供了称作原语的具有特定功能的程序段来完成进程的建立、撤消进程以及完成进程各状态间的转换。原语:机器语言的扩充,由若干条机器指令组成的具有特定功能的程序段。原语与一般系统调用功能的区别:在系统态下执行的,执行其间不可被打断。常用进程控制原语有:(用户以系统调用的方式使用这些原语)创建原语进程原语阻塞原语唤醒原语3.3进程的控制3.4.1互斥1.临界资源2.临界区例3-3:假设在一飞机售票系统中,某一时刻数据库中关于某一航班的机票数量counter=5。某一窗口的售票程序执行的一条操作语句是counter=counter-1;而另一窗口退票程序执行的一条操作语句是counter=counter+1。用高级语言书写的语句counter=counter+1和counter=counter-1所对应的的汇编语言指令如下:①LOADA,conuter;①LOADB,conuter;②ADDA,1;②SUBB,

文档评论(0)

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

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

1亿VIP精品文档

相关文档