操作系统进程模型

操作系统进程模型

ID:38633938

大小:52.58 KB

页数:6页

时间:2019-06-16

操作系统进程模型_第1页
操作系统进程模型_第2页
操作系统进程模型_第3页
操作系统进程模型_第4页
操作系统进程模型_第5页
资源描述:

《操作系统进程模型》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、操作系统进程模型进程的相关概念进程是一个程序的一次执行,这是一个动态的过程,一个进程包括了程序计数器、寄存器和变量的当前值。在多道程序中有多个进程同时在运行,从概念上他们有各自的CPU,实际上是一个CPU在各个进程之间快速地切换。每个进程靠自己独有的程序计数器来控制自己的程序执行流程,实际的物理程序计数器只有一个,当某个进程获得物理CPU时它的逻辑程序计数器就被装入实际的程序计数器中。进程有其从创建到销毁的生命周期。进程存在的意义就是完成一定的任务,通常将进程分为前台进程和后台进程。前台进程负责与用户交互,如用户可以终端上输入命令启动程序;后台进程不与特定

2、的用户关联,负责处理一些专用的事件,比如监听网络端口的请求,后台进程又称为守护进程。进程完成它的工作后就自动退出,释放占用的系统资源。进程并不是在所有情况下都“自愿”退出的,它可能是由另外的进程杀死的,也可能是因为执行期间发生了严重错误被系统强制终止的。有些进程是被操作系统生成的,有些进程是由其他进程创建的(即父进程创建子进程)。在Minix和Linux系统中第一个用户进程--init进程是由操作系统创建的,此后的所有进程都是init进程的子进程或孙进程。进程之间形成一种树状的层次结构。虽然每个进程都是一个独立的实体,有它自己的程序计数器、堆栈、打开的文件

3、、定时器和内部状态,但进程之间还要进行交互、通信以及其他同步操作。由于进程之间要相互依赖,同步执行,这就决定了进程从创建开始是很难一口气执行到底的,进程调度也要求进程中执行期间必须有间歇。大体上我们把进程的状态分为三种:运行态、就绪态和阻塞态。进程处于运行态是指它正在占用CPU。从运行态转入就绪态仅仅是因为处理机的调度策略使把正在执行的进程换出CPU,转而去执行其他进程,当调度策略又转回来时,处于就绪态的进程就可以立刻执行。从运行态转入阻塞态就由于进程缺少某种必须的资源,如程序要执行必须是等待用户参数的输入,当阻塞的进程获得这种资源后就转入就绪态,只要调度

4、策略允许它随时可以执行。就像刚刚提到的那样,就绪队列中有多个进程时它们都可以马上运行,那么到底运行哪个呢?这是由调度器来决定的。最简单最直观的调度算法是维持一个单一的就绪队列,谁先到达队列中谁先执行。在实际的系统中往往给进程分配一定的优先级,优先级高的进程虽然后到达就绪队列,但由于它要执行的事情紧急调度器可以让它先执行。系统中优先级数目是有限制的,我们只能把若干个进程统一规为一种优先级,在同一个优先级内部采用先到先运行的法则。为避免那些优先级别低的进程长时间等待甚至是“饿死”,操作系统还采用一定的策略来逐步降低执行频率高的进程的优先级。在操作系统中协作的进

5、程间要对某块公共存储区进行读写,这个公共存储区可能在主存中(比如是一个内核数据结构),也可能是一个共享文件。由于进程何时运行何时休眠,基于什么时候产生、什么时候终止都是无法预知的,那么不了的进程对同一存储区的读写顺序也是无法预知的,因此我们要有一种机制来实现进程间的同步。我们把不同进程共享的内存区称为临界区,当一个进程进入临界区后,其他进程必须在外面等待,同时还要选择一种策略使在临界区外面等的进程不能无限期的等下去,即要公平地为进程分配进入临界区的机会和时间。Minix进程模型系统结构Minix系统整体采用四层结构,如下图所示:图1.Minix四层结构内核

6、负责进程的调度,并负责进程在运行态、就绪态和阻塞态之间切换。内核还负责进程间所有的通信消息,消息需要核实目标的合法性,定位内存中发送和接收的缓存区,并把消息从发送缓存复制到接收缓存。内核的另一部分是支持对I/O端口和中断的访问。内核以上的其他三层统称为用户层,内核对这三层同等对待。它们都不直接对I/O进行操作,也不能访问分配给他们以外的内存。第2层设备驱动程序层可以请求系统任务任代表它们从I/O端口读数据或向I/O端口写入数据。第3层上是服务器进程,即向用户进程提供有用的服务。有两个服务必不可少:进程管理器和文件系统。进程管理器执行所有涉及启动或终止进程的

7、Minix系统调用,如fork,exec,wait等,并负责执行与信号有关的系统调用,如alarm,kill。进程管理器还负责内存管理,如brk系统调用。文件系统负责执行文件的系统调用,如read,mount,chdir等。再生服务器启动或重启那些不与内核一起加载到内存中的设备驱动程序。如果驱动程序在操作中失败,再生服务器检测到这一失败,并杀死这个驱动程序(如果它还没有死),重启这个驱动程序的一个新副本,从而提高操作系统的容错能力。第2层和第3层内的设备驱动程序和服务器统称为系统进程,它是操作系统的一部分,不属于某一特定用户,并且大部分在第一个用户登录前启

8、动。第4层是所有的用户进程,如shell程序、编辑器、编译器、用户

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。