您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 企业文化 > 操作系统的运行环境(PPT71页)
1.7.1中央处理器CPU一、CPU的构成与基本工作方式:CPU包含:运算器、控制器、寄存器、高速缓存。PCIR数据寄存器处理器内存总线PSW地址寄存器控制和状态寄存器高速缓存Cache运算器控制器1.7操作系统的运行环境运算器实现指令中的算术和逻辑运算,是计算机计算的核心。控制器负责控制程序运行的流程,包括取指令、维护CPU状态、CPU与内存的交互等等。寄存器是指令在CPU内部作处理的过程中暂存数据、地址以及指令信息的存储设备,在计算机的存储系统中它具有最快的访问速度。高速缓存处于CPU和物理内存之间,一般由控制器中的内存管理单元(MMU:MemoryManagementUnit)管理,访问速度快于内存,低于寄存器。利用程序局部性原理使得高速指令处理和低速内存访问得以匹配,从而提高CPU的效率。处理器中的寄存器•寄存器提供了一定的存储能力•速度比主存快得多•造价高,容量一般都很小两类寄存器:•用户可见寄存器高级语言编译器通过算法分配并使用之,以减少程序访问主存次数。•控制和状态寄存器用于控制处理器的操作,由OS的特权代码使用,以控制其它程序的执行。用户可见寄存器•机器语言(汇编语言)直接引用•包括数据寄存器、地址寄存器等•数据寄存器(dataregister)又称通用寄存器•地址寄存器(addressregister)用于存储数据及指令的物理地址。如indexregister、segmentpointer、stackpointer控制和状态寄存器•用于控制处理器的操作•大部分对于用户是不可见的•一部分可以在某种特权模式(由OS使用)下访问常见的控制和状态寄存器•程序计数器(PC:ProgramCounter),记录将要取出的指令的地址•指令寄存器(IR:InstructionRegister),包含最近取出的指令•程序状态字(PSW:ProgramStatusWord),记录处理器的运行模式信息等等指令执行的基本过程(1)两个步骤:•先从存储器中每次读取一条指令•然后执行这条指令一个单条指令处理过程称为一个指令周期程序的执行是由不断取指和执行的指令周期组成•每个指令周期开始时,依据在程序计数器中的指令地址从存储器中取一条指令•在取指完成后根据指令类别自动将程序计数器的值变成下条指令的地址•取到的指令放在指令寄存器(IR)中•处理器解释并执行所要求的动作指令执行的基本过程(2)5类指令•访问存储器指令:处理器和存储器间数据传送•I/O指令:处理器和I/O设备间数据传送和命令发送•算术逻辑指令(数据处理指令):执行数据算术和逻辑操作•控制转移指令:指定一个新的指令的执行起点•处理器控制指令:修改处理器状态,改变处理器工作方式特权指令和非特权指令•使用多道程序设计技术的计算机指令系统必须要区分为特权指令和非特权指令•特权指令:只能由操作系统使用的指令。如启动I/O设备、设置时钟、控制中断屏蔽位、清主存、设置中断向量,修改PSW等。•非特权指令:一般用户使用的指令。如算术逻辑运算、访问内存、访管指令等•CPU如何知道当前运行的是操作系统还是一般应用软件?依赖于处理器状态Whichofthefollowinginstructionsshouldbeprivileged?a.Setvalueoftimer.b.Readtheclock.c.Clearmemory.d.Issueatrapinstruction.e.Turnoffinterrupts.f.Modifyentriesindevice-statustable.g.Switchfromusertokernelmode.h.AccessI/Odevice.处理器的状态为了保护操作系统,将处理器工作状态划分为管态和用户态:管态:操作系统管理程序执行时机器所处的状态,较高的特权级别,又称为特权态(特态)、系统态、核心态用户态:用户程序执行时机器所处的状态,较低的特权级别,又称为普通态(普态)、目态有些系统将处理器状态划分核心状态,管理状态和用户程序状态(目标状态)三种核态(KernelMode):CPU执行操作系统程序时所处的状态。在此状态下允许CPU使用全部资源和全部指令,其中包括一组特权指令(如涉及外设的I/O、改变处理机状态、修改存储保护的指令),实现对系统资源的分配与管理,为用户提供使用外部设备的服务。管态比核态的权限低,在此状态下允许使用一些用户态下不能使用的资源,但不能使用修改CPU状态的指令。无核态时,管态执行核态的全部功能。用户态(UserMode):用户程序执行时CPU所处的状态。在此状态下禁止使用特权指令,不能直接使用系统资源与改变CPU状态,并且只能访问用户程序所在的存储空间。在核态下操作系统可以使用所有指令,包括一组特权指令。•允许和禁止中断;•在进程之间切换处理机;•存取用于内存保护的寄存器;•执行输入和输出操作;•停止一个中央处理机的工作。在下列情况下,由用户态转向核态:•用户程序要求操作系统的服务,系统调用;•发生一次中断;•在用户程序中产生了一个错误的状态;•在用户程序中企图执行一条特权指令;从核态转回用户态用一条指令实现,这条指令也是特权指令。一般情况下是中断返回指令。实例:x86系列处理器•386、486、Pentium系列都支持4个处理器特权级别(特权环:R0、R1、R2和R3)•从R0到R3特权能力依次降低•R0相当于双状态系统的管态•R3相当于目态•R1和R2则介于两者之间,它们能够运行的指令集合具有包含关系:3210RRRRIIII四个级别运行不同类别的程序:•R0-运行操作系统核心代码•R1-运行关键设备驱动程序和I/O处理例程•R2-运行其它受保护共享代码,如语言系统运行环境•R3-运行各种用户程序现有基于x86处理器的操作系统,如UNIX、Linux以及Windows系列大都只用了R0和R3两个特权级别图:Intel系列CPU的特权级别管态和用户态的差别处理器处于管态时:•全部指令(包括特权指令)可以执行•可使用所有资源•并具有改变处理器状态的能力处理器处于目态时:•只有非特权指令能执行程序状态字PSWPSW(ProgramStatusWord):•CPU的状态——指明管态还是目态,用来说明当前在CPU上执行的是操作系统还是一般用户程序,从而决定其是否可以使用特权指令或拥有其它的特殊权力•条件码——反映指令执行后的结果特征•中断屏蔽码——指出是否允许中断例1:微处理器M68000的程序状态字1514131211109876543210TSI2I1I0XNZVC条件位:C:进位标志位V:溢出标志位Z:结果为零标志位N:结果为负标志位I0–I2:三位中断屏蔽位S:CPU状态标志位,为1处于管态,为0处于目态T:陷阱(Trap)中断指示位为1,在下一条指令执行后引起自陷中断CPU状态的转换目态--管态其转换的唯一途径是通过中断管态--目态可用设置PSW(修改程序状态字)实现1.7.2存储系统•作业必须把它的程序和数据存放在内存中才能运行•多道程系统中,若干个程序和相关的数据要放入主存储器•操作系统要管理、保护程序和数据,使它们不至于受到破坏•操作系统本身也要存放在主存储器中并运行一、存储器类型:RAM和ROM二、存储系统的层次结构:存储访问的局部性原理容量速度光盘、磁盘、优盘、磁带硬盘硬盘缓存内存高速缓存寄存器256K、512K128M、2G2M40G~80G650M、1.44M、64M、400G读写型的存储器•可把数据存入其中任一地址单元,并可在以后的任何时候把数据读出,或者重新存入新的数据的一种存储器•常被称为随机访问存储器(RAM:RandomAccessMemory)•RAM主要用作存放随机存取的程序的数据只读型的存储器:•只能从其中读取数据,但不能随意用普通方法写入数据(写入数据只能用特殊方法)•称为只读存储器(ROM:Read-OnlyMemory)变型:PROM和EPROM•PROM:一种可编程只读存储器,使用特殊PROM写入器写入数据•EPROM:用特殊的紫外线光照射此芯片,以“擦去”信息,恢复原来状态,然后使用特殊EPROM写入器写入数据存储器的层次结构存储系统设计三个问题:容量、速度和成本•容量:需求无止境•速度:能匹配处理器的速度•成本问题:成本和其它部件相比应在合适范围之内容量、速度和成本•三个目标不可能同时达到最优,要作权衡•存取速度快,每比特价格高•容量大,每比特价格越低,同时存取速度也越慢解决方案采用层次化的存储体系结构•当沿着层次下降时•每比特的价格将下降,容量将增大•速度将变慢,处理器的访问频率也将下降存储访问局部性原理提高存储系统效能关键点:程序存储访问局部性原理•程序执行时,有很多的循环和子程序调用,一旦进入这样的程序段,就会重复存取相同的指令集合•对数据存取也有局部性,在较短的时间内,稳定地保持在一个存储器的局部区域处理器主要和存储器的局部打交道在经过一段时间以后,使用的代码和数据集合会改变设计多级存储的体系结构假设两级存储器:•第I级包含1KB,存取时间为0.1μs•第II级包含1MB,存取时间为1μs存取I级中的内容,直接存取存取II级,首先被转移到I级,然后再存取假设确定内容所在位置时间可以忽略若在I级存储器中发现存取对象的概率是95%,则平均访问时间为:结果非常接近I级存储的存取时间ssss15.011.005.01.095.0缓冲技术引入缓冲目的:缓和CPU与设备速度不匹配的矛盾。CPUCache内存Buffer外部设备字传送块传送缓冲包括:Cache和Buffer。什么是中断?•指CPU对系统中或系统外发生异步事件的响应•异步事件是指无一定时序关系的随机发生事件如外部设备完成数据传输、实时设备出现异常等“中断”名称源于:•当异步事件发生后,打断了对当前程序的执行•而转去处理该异步事件•直到处理完了后,再转回原程序中断点继续执行1.7.3中断技术从用户角度看中断几个概念•中断是指某个事件(例如,电源掉电、俘点运算溢出、外部设备传输完成或出错等)发生时,系统中止现运行程序的执行,引出处理事件程序对相应事件进行处理,处理完毕后返回断点继续执行。•中断源:引起中断的事件称中断源,如打印完成中断,其中断源是打印机。•断点:发生中断时正在运行的程序被暂时停止,程序的暂停点称为断点。例如,某程序正在执行0200地址的指令被中断,那么,0200地址就是断点,在中断返回时就执行0200的下一条指令。中断响应:是处理机发现有中断请求时,中止现运行程序的执行并自动引出中断处理程序的过程。中断处理程序:对中断事件进行处理的程序叫中断处理程序。如时钟中断处理、打印机完成中断处理、打印机缺纸中断处理等等。它是操作系统中与硬件最接近的一部分,是操作系统与硬件的接口。强迫性中断•输入/输出(I/O)中断:主要来自外部设备通道•程序性中断:运行程序中本身的中断(如被0除,缺页中断,缺段中断,地址越界)•时钟中断•控制台中断•硬件故障中断自愿性中断又称访管中断IBM370中的中断1.机器故障中断:如电源故障、电路检验出错等2.输入输出中断:I/O设备完成任务时产生3.外部中断:时钟中断、多机系统中其它CPU的通信要求中断等4.程序中断:程序中的问题引起的中断,如错误地使用指令或数据、存储保护等5.访管中断:每当CPU执行访管指令时,即引起中断并调用操作系统相应的功能模块为其服务中断系统中断系统的两大组成部分:硬件中断装置和软件中断处理程序•中断装置-中断系统的机制部分负责捕获中断源发出的中断请求,以一定方式响应中断源,然后将处理器控制权交给特定的中断处理程序•中断处理程序-中断系统的策略部分中断装置的基本功能•发现中断•响应中断:保护现场、找到恰当的中断处理程序处理器如何发现中断信号?处理器的控制部件中设一个能检测中断的机构,称为中断扫描机构•在每条指令执行周期的最后时刻扫描中断寄存器,询问是否有中断信号•若无中断信号,继续执行下一条指令•若有中断,中断硬件就进行中断响应
本文标题:操作系统的运行环境(PPT71页)
链接地址:https://www.777doc.com/doc-917136 .html