收藏 分享(赏)

试论操作系统的运行环境.pptx

上传人:知识海洋 文档编号:24129569 上传时间:2024-09-30 格式:PPTX 页数:60 大小:327.72KB
下载 相关 举报
试论操作系统的运行环境.pptx_第1页
第1页 / 共60页
试论操作系统的运行环境.pptx_第2页
第2页 / 共60页
试论操作系统的运行环境.pptx_第3页
第3页 / 共60页
试论操作系统的运行环境.pptx_第4页
第4页 / 共60页
试论操作系统的运行环境.pptx_第5页
第5页 / 共60页
亲,该文档总共60页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、1.8.1 中央处理器CPU一、CPU组成与基本工作方式:CPU包含:运算器、控制器、存放器、高速缓存。PCIR数据存放器数据存放器处理器内存总线总线PSW地址存放器地址存放器控制和状态存放器控制和状态存放器高速缓存高速缓存Cache运算器运算器控制器控制器1.8 操作系统运行环境试论操作系统的运行环境第1页运算器运算器实现指令中算术和逻辑运算,是计算机计算关键。控制器控制器负责控制程序运行流程,包含取指令、维护CPU状态、CPU与内存交互等等。存放器存放器是指令在CPU内部作处理过程中暂存数据、地址以及指令信息存放设备,在计算机存放系统中它含有最快访问速度。高速缓存高速缓存处于CPU和物理内

2、存之间,普通由控制器中内存管理单元(MMU:Memory Management Unit)管理,访问速度快于内存,低于存放器。利用程序局部性原理使得高速指令处理和低速内存访问得以匹配,从而提升CPU效率。试论操作系统的运行环境第2页处理器中存放器存放器提供了一定存放能力速度比主存快得多造价高,容量普通都很小两类存放器:用户可见存放器用户可见存放器 高级语言编译器经过算法分配并使用之,以降低程序访问主存次数。控制和状态存放器控制和状态存放器 用于控制处理器操作,由OS特权代码使用,以控制其它程序执行。试论操作系统的运行环境第3页用户可见存放器机器语言(汇编语言)直接引用包含数据存放器、地址存放器

3、等数据存放器数据存放器(data register)又称通用存放器地地址址存存放放器器(address register)用于存放数据及指令物理地址。如index register、segment pointer、stack pointer试论操作系统的运行环境第4页控制和状态存放器用于控制处理器操作大部分对于用户是不可见一部分能够在某种特权模式(由OS使用)下访问试论操作系统的运行环境第5页常见控制和状态存放器程序计数器(PC:Program Counter),统计将要取出指令地址指令存放器(IR:Instruction Register),包含最近取出指令程 序 状 态 字(PSW:Pro

4、gram Status Word),统计处理器运行模式信息等等试论操作系统的运行环境第6页指令执行基本过程(1)两个步骤:先从存放器中每次读取一条指令然后执行这条指令一个单条指令处理过程称为一个指令周期程序执行是由不停取指和执行指令周期组成试论操作系统的运行环境第7页每个指令周期开始时,依据在程序计数器中指令地址从存放器中取一条指令在取指完成后依据指令类别自动将程序计数器值变成下条指令地址取到指令放在指令存放器(IR)中处理器解释并执行所要求动作指令执行基本过程(2)试论操作系统的运行环境第8页5类指令访问存放器指令:处理器和存放器间数据传送I/O指令:处理器和I/O设备间数据传送和命令发送算

5、术逻辑指令(数据处理指令):执行数据算术和逻辑操作控制转移指令:指定一个新指令执行起点处理器控制指令:修改处理器状态,改变处理器工作方式试论操作系统的运行环境第9页特权指令和非特权指令特权指令:只能由操作系统使用指令使用多道程序设计技术计算机指令系统必须要区分为特权指令和非特权指令 CPU怎样知道当前运行是操作系统还是普通应用软件?有赖于处理器状态试论操作系统的运行环境第10页处理器状态多数系统将处理器工作状态划分为管态和目态:管态:操作系统管理程序运行状态,较高特权级别,又称为特权态(特态)、系统态、关键态目态:用户程序运行时状态,较低特权级别,又称为普通态(普态)、用户态有些系统将处理器状

6、态划分关键状态,管理状态和用户程序状态(目标状态)三种试论操作系统的运行环境第11页实例:x86系列处理器386、486、Pentium系列都支持4个处理器特权级别(特权环:R0、R1、R2和R3)从R0到R3特权能力依次降低R0相当于双状态系统管态R3相当于目态R1和R2则介于二者之间,它们能够运行指令集合含有包含关系:试论操作系统的运行环境第12页四个级别运行不一样类别程序:R0-运行操作系统关键代码R1-运行关键设备驱动程序和I/O处理例程R2-运行其它受保护共享代码,如语言系统运行环境R3-运行各种用户程序现有基于x86处理器操作系统,如UNIX、Linux以及Windows系列大都只

7、用了R0和R3两个特权级别试论操作系统的运行环境第13页图:Intel 系列CPU特权级别试论操作系统的运行环境第14页管态和目态差异处理器处于管态时:全部指令(包含特权指令)能够执行可使用全部资源并含有改变处理器状态能力处理器处于目态时:只有非特权指令能执行试论操作系统的运行环境第15页程序状态字PSWPSW(Program Status Word):CPU状态指明管态还是目态,用来说明当前在CPU上执行是操作系统还是普通用户程序,从而决定其是否能够使用特权指令或拥有其它特殊权力条件码反应指令执行后结果特征中止屏蔽码指出是否允许中止试论操作系统的运行环境第16页例1:微处理器M68000程序

8、状态字条件位:C:进位标志位 V:溢出标志位Z:结果为零标志位N:结果为负标志位I0 I2:三位中止屏蔽位S:CPU状态标志位,为1处于管态,为0处于目态T:陷阱(Trap)中止指示位为1,在下一条指令执行后引发自陷中止试论操作系统的运行环境第17页CPU状态转换目态-管态 其转换唯一路径是经过中止管态-目态 可用设置PSW(修改程序状态字)实现试论操作系统的运行环境第18页思索题什么是管态,什么是目态,为何要区分二态?你认为用什么方法能够区分二态?在什么情况下处理机状态会从目态转换到管态?怎样实现这种转换?试论操作系统的运行环境第19页1.8.2 存放系统作业必须把它程序和数据存放在内存中才

9、能运行多道程系统中,若干个程序和相关数据要放入主存放器操作系统要管理、保护程序和数据,使它们不至于受到破坏操作系统本身也要存放在主存放器中并运行 试论操作系统的运行环境第20页一、存放器类型:RAM 和 ROM二、存放系统层次结构:存放访问局部性原理容量速度光盘、磁盘、优盘、磁带硬盘硬盘缓存内存高速缓存存放器256K、512K128M、2G2M40G80G650M、1.44M、64M、400G试论操作系统的运行环境第21页读写型存放器可把数据存入其中任一地址单元,并可在以后任何时候把数据读出,或者重新存入新数据一个存放器常被称为随机访问存放器(RAM:Random Access Memory)

10、RAM主要用作存放随机存取程序数据试论操作系统的运行环境第22页只读型存放器:只能从其中读取数据,但不能随意用普通方法写入数据(写入数据只能用特殊方法)称为只读存放器(ROM:Read-Only Memory)变型:PROM和EPROMPROM:一个可编程只读存放器,使用特殊PROM写入器写入数据EPROM:用特殊紫外线光照射此芯片,以“擦去”信息,恢复原来状态,然后使用特殊EPROM写入器写入数据试论操作系统的运行环境第23页存放器层次结构存放系统设计三个问题:容量、速度和成本容量:需求无止境速度:能匹配处理器速度成本问题:成本和其它部件相比应在适当范围之内试论操作系统的运行环境第24页容量

11、、速度和成本三个目标不可能同时到达最优,要作权衡存取速度快,每比特价格高容量大,每比特价格越低,同时存取速度也越慢试论操作系统的运行环境第25页处理方案采取层次化存放体系结构当沿着层次下降时每比特价格将下降,容量将增大速度将变慢,处理器访问频率也将下降试论操作系统的运行环境第26页存放访问局部性原理提升存放系统效能关键点:程序存放访问局部性原理程序执行时,有很多循环和子程序调用,一旦进入这么程序段,就会重复存取相同指令集合对数据存取也有局部性,在较短时间内,稳定地保持在一个存放器局部区域处理器主要和存放器局部打交道在经过一段时间以后,使用代码和数据集合会改变试论操作系统的运行环境第27页设计多

12、级存放体系结构假设两级存放器:第I级包含1KB,存取时间为0.1s第II级包含1MB,存取时间为1s存取I级中内容,直接存取存取II级,首先被转移到I级,然后再存取假设确定内容所在位置时间能够忽略若在I级存放器中发觉存取对象概率是95%,则平均访问时间为:结果非常靠近I级存放存取时间试论操作系统的运行环境第28页思索题层次化存放体系结构有什么好处?处理器怎样知道要访问数据是在内存还是在Cache?请设计一个你认为可行方案。(提醒:从内存装数据到Cache以块为单位,一块普通为1-4k)什么叫存放访问局部性原理?试论操作系统的运行环境第29页缓冲技术引入缓冲目标:缓解CPU与设备速度不匹配矛盾。

13、CPUCache内存内存Buffer外部设备外部设备字传送块传送缓冲包含:Cache和Buffer。试论操作系统的运行环境第30页内存可看作由一些固定大小块组成,每块K个字。Cache由一些存放槽组成,每槽K个字。需要访问某内存块中字时,把该块移到某个槽中。Cache读开始CPUCPU需要读内存需要读内存地址地址RARA中数据中数据包含包含RAMRAM块块在在CacheCache中中访问内存中访问内存中包含包含RARA块块为内存块分为内存块分配配CacheCache槽槽取取RARA中字中字传递给传递给CPUCPU将内存块装入将内存块装入CacheCache槽槽结束是否试论操作系统的运行环境第3

14、1页什么是中止?指CPU对系统中或系统外发生异步事件响应异步事件是指无一定时序关系随机发生事件如外部设备完成数据传输、实时设备出现异常等“中止”名称源于:当异步事件发生后,打断了对当前途序执行而转去处理该异步事件直处处理完了后,再转回原程序中止点继续执行1.8.3 中止技术试论操作系统的运行环境第32页从用户角度看中止试论操作系统的运行环境第33页引入中止目标处理主机与外设并行工作问题提升可靠性实现多机联络实现实时控制特点:1)中止是随机 2)中止是可恢复 3)中止是自动处理试论操作系统的运行环境第34页中止源:引发中止发生事件中止存放器:统计中止系统堆栈:内存中一块区域,用于保留现场几个概念

15、试论操作系统的运行环境第35页中止类型强迫性中止 正在运行程序所不期望,因为某种硬件故障或外部请求引发自愿性中止 用户在程序中有意识安排中止,是因为用户在编制程序时因为要求操作系统提供服务,有意使用“访管”指令或系统调用,使中止发生试论操作系统的运行环境第36页强迫性中止输入/输出(I/O)中止:主要来自外部设备通道程序性中止:运行程序中本身中止(如被如被0 0除除,缺页中止缺页中止,缺段中止缺段中止,地址越界地址越界)时钟中止控制台中止硬件故障中止试论操作系统的运行环境第37页自愿性中止又称访管中止执行I/O指令,创建进程,分配内存信号量操作,发送/接收消息试论操作系统的运行环境第38页IB

16、M370中中止1.机器故障中止:如电源故障、电路检验犯错等2.输入输出中止:I/O设备完成任务时产生3.外部中止:时钟中止、多机系统中其它CPU通信要求中止等4.程序中止:程序中问题引发中止,如错误地使用指令或数据、存放保护等5.访管中止:每当CPU执行访管指令时,即引发中止并调用操作系统对应功效模块为其服务试论操作系统的运行环境第39页中止系统中止系统两大组成部分:硬件中止装置和软件中止处理程序中止装置-中止系统机制部分 负责捕捉中止源发出中止请求,以一定方式响应中止源,然后将处理器控制权交给特定中止处理程序中止处理程序-中止系统策略部分 试论操作系统的运行环境第40页中止装置基本功效发觉中

17、止响应中止:保护现场、找到恰当中止处理程序试论操作系统的运行环境第41页处理器怎样发觉中止信号?处理器控制部件中设一个能检测中止机构,称为中止扫描机构在每条指令执行周期最终时刻扫描中止存放器,问询是否有中止信号若无中止信号,继续执行下一条指令若有中止,中止硬件就进行中止响应发觉中止试论操作系统的运行环境第42页中止向量表:存放全部中止处理程序入口地址。主存最低端若干个字节。中止向量?关中止关中止保留中止现场保留中止现场依据中止向量表依据中止向量表设置新运行现场设置新运行现场开中止开中止执行中止处理程序执行中止处理程序关中止关中止恢复被中止程序现场恢复被中止程序现场开中止开中止返回断点,继续执行

18、返回断点,继续执行此时允许中止嵌套。即优此时允许中止嵌套。即优先级更高中止请求能够打先级更高中止请求能够打断低级中止处理。断低级中止处理。设备发中止信号设备发中止信号CPU向设备发确认中止信号向设备发确认中止信号中止处理过程试论操作系统的运行环境第43页中止处理普通过程:(1)设备给处理器发一个中止信号(2)处理器处理完当前指令后检测到中止,判断出中止起源并向发送中止设备发送确认中止信号,确认信号使得该设备将中止信号恢复到普通状态(3)处理器开始为软件处理中止做准备:保留中止点程序执行上下文环境,这通常包含程序状态字PSW,程序计数器PC,一些存放器值,它们通常保留在系统栈中试论操作系统的运行

19、环境第44页(4)处理器依据中止源查询中止向量表,取得与该中止相联络处理程序入口地址,并将PC置成该地址,处理器开始一个新指令周期,控制转移到中止处理程序(5)中止处理程序开始工作(6)中止处理结束时,执行中止返回指令,被中止程序上下文环境从系统堆栈中被恢复,处理器状态恢复成原来状态。(7)PSW和PC被恢复成中止前值,处理器开始一个新指令周期,中止处理结束试论操作系统的运行环境第45页设备控制器或其它系统硬件发出中止处理器完成当前指令执行处理器接收中止处理器将PSW和PC推入系统堆栈处理器依据中止类型读入新PC和PSW值中止系统硬件完成工作试论操作系统的运行环境第46页保留CPU状态其余信息

20、执行中止处理程序恢复CPU状态信息从系统堆栈恢复原PSW和PC中止系统软件完成工作试论操作系统的运行环境第47页中止其它问题中止优先级在一些机器中,中止优先级按中止类型划分:以机器故障中止优先级最高 程序中止和访问管理程序中止次之 外部中止更次之 输入输出优先级最低试论操作系统的运行环境第48页中止屏蔽在CPU上运行程序,有时因为种种原因,不希望其在执行过程中被别事件所中止,称为中止屏蔽在PSW中设置中止屏蔽码以屏蔽一些指定中止类型各设备接口中也有中止禁止位,以禁止该设备中止试论操作系统的运行环境第49页多个中止处理 若中止处理过程中又发生中止,引发多中止处理问题两种处理方法:第一个:处理一个

21、中止时禁止中止,对任何新中止置之不理,当再次允许中止时,新中止才被响应。试论操作系统的运行环境第50页多中止处理第一个处理方法试论操作系统的运行环境第51页第二种:中止按照优先度分级 允许高优先级中止打断低优先级中止中止处理嵌套 试论操作系统的运行环境第52页多中止处理第二种处理方法试论操作系统的运行环境第53页思索题在中止处理过程中,需要保留哪些信息,怎样保留?中止装置怎样发觉中止?怎样响应中止?什么是中止向量?试论操作系统的运行环境第54页I/OI/O技术技术 程序控制 中止驱动 DMA(Direct Memory Access)通道(I/O处理机)试论操作系统的运行环境第55页1.8.4

22、 时钟时钟为计算机完成以下必不可少工作:在多道程序运行环境中,为系统发觉陷入死循环(编程错误)作业,预防机时浪费在分时系统中,间隔时钟实现作业间按时间片轮转在实时系统中,按要求间隔输出正确时间信号给实时控制设备(如AD、D/A转换设备)定时唤醒要求延迟执行各外部事件(如定时为各进程计算优先数,银行中定时运行某类结账程序等)统计用户使用设备时间和统计某外部事件发生时间统计用户和系统所需要绝对时间,即年、月、日 试论操作系统的运行环境第56页时钟是操作系统运行必不可少硬件设施绝对时钟:统计当初时间(年、月、日、时、分、秒)普通来说,绝对时钟准确,当停机时,绝对时钟值依然自动修改间隔时钟:经过时钟存放器实现,置上时间间隔初值,每经过一个单位时间,时钟值减1,直到该值为0时,则触发时钟中止,并进行对应中止处理试论操作系统的运行环境第57页硬件时钟:硬件时钟:某个存放器来模拟(依据脉冲频率定时加1,减1)软件时钟:用作相对时钟,用内存单元来模拟时钟需要间隔时钟支持(也就是需要时钟中止支持)试论操作系统的运行环境第58页思索题绝对时钟有什么作用?间隔时钟又有什么作用?对OS而言哪个更为主要?什么是软件时钟?怎样实现软件时钟?试论操作系统的运行环境第59页作业P33 2、5、13、14、1560试论操作系统的运行环境第60页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 实用文档 > 工作范文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:文库网官方知乎号:文库网

经营许可证编号: 粤ICP备2021046453号世界地图

文库网官网©版权所有2025营业执照举报