资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2016/9/11 Sunday,#,第二章 操作系统的组织结构,操作系统的设计具有以下特征,复杂程度高,表现在功能繁多,程序规模宏达,接口复杂,并行程度,高,。如,Linux,的内核代码约,200,万行,;,Windows 2000,的代码约,3200,万行,投入人力,2500,多人,。,生,存,周,期,长,。,正确性难以保证。如不断推出的补丁程,序,。,2.2.1,结构化组织,一、,一,体化结构,将,操作系统的功能模块和数据结构放在一个模块中,,按,功能特,性把系统分解为若干模块,并且还可再细分为子模块,,每,个模块,具有一定的功能,若干关联模块协作完成某项功能。,特征:,模块间可不加控制的自由调用;,数据大都作为全程量使用;,模块间需要传递参数或返回结果时,其个数和方式可根据需要随意约定。,特点:,一旦很好地实现,该操作系统将非常有效;但缺点是难以理解,,,难,以维护,验证其正确性困难。,如:,Unix,或,Linux,采用一体化结构设,计,P43,如图,2.13,、,P45,图,2.14,二、,层,次结构,把,操作系统划分为若干模块,这些模块按调用次序排列成若干层次,个层次之间必须是单向调用,即高层可以调用底层的功能,反之则不能,。,P31,图,2.4,第一层:进程控制、进程通信;处理机调度;初级中断处理,第二层:存储管理,第三层:,I/O,管理,第四层:文件存取,第五层:资源分配和调度,特,点,:,将,整体问题局部化,结构清晰和规范,系统的正确性大大提高,有利于维护和扩充。由于层次结构是单向依赖,必须建立模块间的通信机制,花费在通信上的开销较大,因而系统的效率会降低。,2.3,处理机的状态,根,据对资,源,和,机,器指令的使用权限,把处理机的状态分为:,核心态(,Kernel mode,),:OS,的管理程序执行时,CPU,的状态。在此状态下允许,CPU,使用全部的机器资源和全部指令。,用户态(,User mode,),:,用户程序执行时机器所处的状态。在此状态下禁止使用特权指令,不能直接取用资源和改变机器状态,只允许访问自己的存储区域。,管态(,Supervisor mode,),:,比核心态的权限低,只允许使用一些在用户态下所不能使用的资源,但不能使用修改机器状态的指令。,为,了区分,CPU,的状态,,CPU,中的状态寄存器中包含,1,个状态位可以设置核心态模式或用户态模式。(,8088/8086CPU,中没有这个标志位),当,用户程序执行时,如果请求,OS,服务,,CPU,由用户态转为核心态;当服务完毕后,返回到用户态,让用户程序继续执行。,P106,图,4.29,2.3.2,特权指令集,1,.,改变机器状态的指令。,2.,修改特殊寄存器的指令,。,如中断屏蔽寄存器、,界限寄存器等。,3.,涉及外设的输入,/,输出指令。,2.3.3,时钟,时,钟时,OS,进行调度的重要工具,是,OS,运行时必,不可,少,的硬件设施,它以固定的时间产生时钟中断信号,,如,Intel,8088,中的,8253,定时器,每秒中断,18.2,次,。这,对于设,施,调,度策略(如分时中的时间片),计算各用户耗用的资,源,(,如进程占用的累计,CPU,时间),实时控制和延迟等功,能,是,必不可少的。,例如:用时钟可记录当前时间(年月日时分秒),系统有一个时钟寄存器,操作员将当前时间输入时钟寄存器作为初值,以后定时器每发出一个时钟信号(如,20ms,)其自动加,1,,如果时钟寄存器为,64,位,则系统的最大计时为(,2,64,-1,),20ms,(约,178510.25,年)。,2.4,中断机制,中,断是实现,OS,功能的基础,是构成多道程序运,行,环境的,根本措施,中断是,OS,各种功能的驱动源。,例如,:,操作员从键盘发出终止执行的命令(如,CTRL+C,或,CTRL+BREAK,)可以终止当前进程的运行;发出(,CTRL+ALT+DEL,)可以启动任务管理器,。,时钟中断(如时间片到)可导致,CPU,调度进程的执行,。,I/O,完成中断可激活,I/O,管理进程投入运行。,总,之,现代,OS,中,几乎所有的操作都是由中断引发的。,一、,中,断的概念,当,CPU,正在执行程序时,出现某种非预期事件,,CPU,暂停当前程序的执行转而为该事件服务,当处理完该事件后,再继续原来程序的执行,这一过程称为中断。,二、,中断的类型,1.,输入输出中断,如:程序中断接口,DMA,接口通道,2.,外中断:,CPU,的外部装置所引起的中断,如:时钟中断,控制台中断,3.,机器故障中断,如:电源故障,奇偶校验出错等,4.,程序性中断,如:溢出、地址越界、地址出错、非法操作等,5.,访管中断:对,OS,提出需求时所发生的中断,例如:请求,I/O,服务;各种系统调用(如建立进程)等,三中断的处理过程,中断源的识别,保护断点和现场,执行中断服务程序,恢复断点和现场,向量中断和向量中断是不同的概念。,中断向量一般为中断服务程序的入口地址或为中断服务程序入口地址的指示器。,课堂练习:,假设一个计算机系统具有如下特征:,处理一次中断,平均耗用,1ms;,一次进程调度,平均需要,2ms;,将,CPU,分配给选中的进程,又需要平均,1ms;,再假设其定时器芯片每秒产生,100,次中断,请回答:,操作系统将百分之几的,CPU,时间,用于时钟中断处理?,如果操作系统采用轮转法调度,,10,个时钟中断为,1,个时间片。那么,操作系统将百分之几的,CPU,时间用于进程调度(包括调度,分配,CPU,和引起调度时的时钟中断处理时间)?,解:,100,1ms/1s,10%,时间片的大小,10,(,1S/100,),=100ms,/,每,10ms,产生,1,个时钟中断信号,1,个时间片要处理,10,个时钟中断,需要,10,1ms=10ms,时间片到后再进行一次进程调度,需要,2ms,再将,CPU,分配给选中的进程,又需要平均,1ms,系统将,CPU,时间的(,10,1,2,),/100,13%,用于进程调度。,
展开阅读全文