- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3.1进程描述与状态汇编
第五讲 进程表示与进行状态变化
目的与要求:理解进程概念,掌握进程在系统中的表示方法,理解进程的创建及其状态变化.
重点与难点:进程表示与进程创建,状态转换.
习题:2、4
第三章 进程与处理机管理
3.1进程描述
进程:是系统中占用处理机及争夺其它系统资源的实体。程序必须在进程中运行。
进程的引入:
为了能使某作业步等I/O时,另一逻辑上可并行作业步能使用CPU。引入进程后,逻辑上可并行的作业步可在不同进程中运行。利用进程现场保护机制,处理机能在进程间切换。*
并发与共享的问题:并行程序访问共享数据问题举例:(count为共享变量初值=300)
Program A: …
N=count
N=N+100
count=N
…
Program B:…
M=count
M=M+200
count=M
…
如果按以下次序占处理机运行:
N=count,N=N+100;
M=count,M=M+200,count=M;
count=N.
结果count=400(应为600)*
1.进程定义
进程:是有独立功能的程序关于某个数据集合的一次运行活动。
特点:
动态性:可动态创建,结束,也可是精灵进程
并发性:可以被独立调度,占用处理机运行
独立性:通常有各自的空间
制约性:因访问共享数据或进程间同步而产生制约.
组成:操作系统表示/管理进程的PCB表以及
执行程序及处理数据;
一片存放程序和数据的空间;
一个栈区(一个用户栈,一个核心栈);
进程使用的其他系统资源.*
程序与进程的关系举例(计算机系统与洗熨店对比):
实用程序:洗衣程序(检查口袋,调洗涤,调烘干,调熨烫,折叠),熨衣程序(检查口袋,调熨烫,折叠)
处理机:服务小姐.
共享外设资源:洗涤机,烘干机,熨烫机
终端设备:顾客窗口
系统调用:洗涤,烘干,熨烫,业务登记(进程创建)
程序:洗涤、烘干、熨烫函数(核心态运行);洗衣程序;熨衣程序;接受窗口用户请求并产生进程执行请求程序(类比命令解释程序).
进程:为窗口建一个进程,负责接受并分派用户请求,为每个用户请求建一个进程负责处理请求(运行洗衣/熨衣程序).*
2.进程控制结构
进程映像:进程执行程序,数据,栈。进程映像如何存放在内存取决于存储管理机制.
进程控制块PCB:系统管理控制进程运行用的信息集合.*
PCB含有以下三大类信息:
进程标识信息。如本进程的标识;本进程的产生者标识(父进程标识);进程所属用户标识。
处理机状态信息保存区(栈式结构)。实质就是核心栈。保存进程的运行现场信息:
用户可用寄存器。这是指用户程序可以使用的数据、地址寄存器。
控制和状态寄存器。如程序计数器(PC);处理机状态字(PS)*
进程控制信息
调度和状态信息,如进程优先级,用于操作系统调度进程占用处理机。
进程间通讯信息,为支持进程间的通讯相关的各种信号,信件队列头等,这些信息存在接收方的进程控制块中。
存储管理信息。包含有指向本进程映像存储空间的数据结构。
进程所用资源。说明由进程打开,使用的系统资源,如打开的文件等。
有关数据结构链接信息,进程可以链接到一个进程队列中,或链接到相关的其它进程PCB. *
3.2进程状态
3.2.1.进程的创建与结束等系统调用
一.进程创建处理过程大致为:
接收进程运行初始执行程序描述,其它参数。
请求分配进程描述块PCB空间,得到一个内部数字进程标识。
用从发系统调用的进程传来的参数初始化PCB表。
产生描述进程空间的数据结构,用初始执行文件初始化进程空间,建立程序段,数据段、栈段等。*
5.将PCB表挂入就绪队列,等待时机被调度运行。*
二.进程结束大致处理过程如下:
1.将进程状态改到结束状态
2.关闭所有打开文件,设备
3.解除用户进程与程序文件的映射关系
4.释放进程映像空间
5.释放进程控制块(PCB)。
6.调用进程调度与切换程序。*
三、进程等待系统调用
如waitpid(pid,statloc,opts)系统调用. 进程发出此系统调用阻塞于内核等待pid所指进程运行结束.*
3.2.2进程状态及变化
运行状态(Running):当一个进程正在处理机上运行时。
就绪状态(Ready):一个进程获得了除处理机之外的一切所需资源,一旦得到处理机即可运行.
阻塞状态又称等待状态(Blocked):一个进程正在等待某一事件而暂 停运行时,如等待某资源成为可用,等待输入
文档评论(0)