2019最新第二讲操作系统的硬件环境化学

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在PSW中专门设置一位,根据运行程序使用指令 的权限而设置CPU状态
CPU的工作状态码——指明管态还是目态,用来 说明当前在CPU上执行的是操作系统还是一般用 户,从而决定其是否可以使用特权指令或拥有其 他的特殊权力
条件码——反映指令执行后的结果特征 中断屏蔽码——指出是否允许中断
例:微处理器M68000的程序状态字
半导体存储器 实现 内存
存储器芯片的内部组织结构 静态存储器(SRAM) 异步动态随机存储器(DRAM) 同步动态随机存储器(SDRAM)
双倍数据速率SDRAM(DDR SDRAM)(开放标准) Rambus公司的SDRAM
存储器的类型
只读型存储器 ROM( Read-Only Memory) :只能从其中读取数据,但不
实例:x86系列处理器(2)
各个级别有保护性检查(地址校验、I/O限制) 特权级别之间的转换方式不尽相同 四个级别运行不同类别的程序: R0-运行操作系统核心代码 R1-运行关键设备驱动程序和I/O处理例程 R2-运行其他受保护共享代码,如语言系统运行环境 R3-运行各种用户程序
现有基于x86处理器的操作系统,多数UNIX、Linux以及 Windows系列大都只用了R0和R3两个特权级别
多数系统将处理器工作状态划分为管态和目态 管态:操作系统管理程序运行的状态,较高的特权级别,
又称为特权态(特态)、核心态、系统态 目态:用户程序运行时的状态,较低的特权级别,又称
为普通态(普态)、用户态
有些系统将处理器状态划分核心状态、管理状态和用 户程序状态(目标状态)三种
实例:x86系列处理器(1)
存取I级中的内容,直接存取
存取II级,首先被转移到I级,然后再存取
假设确定内容所在位置时间可以忽略
若在I级存储器中发现存取对象的概率是95%,则平均访 问时间为:
0.950.1s 0.050.1s 1s 0.15s
结果非常接近I级存储的存取时间
T1:I级存储器的存取时间 T2:II级存储器的存取时间
实现操作系统时必须理解的 计算机基本结构 操作系统管理的重要资源
简单的个人计算机中的部件
Monitor
Bus
一、中央处理器(CPU)
专门设计了一系列基本机制:
- 具有特权级别的处理器状态,能在不同 特权级运行的各种特权指令
- 硬件机制使得OS可以和普通程序隔离 实现保护和控制
1、CPU的构成与基本工作方式
386、486、Pentium系列都支持4个处理器特权 级别(特权环:R0、R1、R2和R3)
从R0到R3特权能力依次降低 R0相当于双状态系统的管态 R3相当于目态 R1和R2则介于两者之间,它们能够运行的指
令集合具有包含关系:
I R0 I R1 I R2 I R3
管态和目态的差别
处理器处于管态时: 全部指令(包括特权指令)可以执行 可使用所有资源 并具有改变处理器状态的能力 处理器处于目态时: 只有非特权指令能执行
特权级别不同,可运行指令集合也不同 特权级别越高,可以运行指令集合越大 高特权级别对应的可运行指令集合包含低特权级的
4、程序状态字PSW (Program Status Word )
处理器通过特殊的机制将处理器状态切换到操作系统运 行的特权状态(管态)
然后将处理权移交给操作系统中的一段特殊代码,这一 个过程称为陷入
• CPU如何知道当前运行的是操作系统还是一般应用 软件?有赖于处理器状态的标识
3、处理器的状态
根据运行程序对资源和机器指令的使用权限将处理器设 置为不同状态
第二讲 操作系统的硬件环境
讨论操作系统对运行硬件环境的要求 讨论操作系统设计者考虑的硬件问题
操作系统运行的硬件环境组成 中央处理器(CPU) 存储系统 中断机制 I/O系统 时钟以及时钟队列 其他
概述
任何系统软件都是硬件功能的延伸 操作系统直接依赖于硬件条件 OS的硬件环境以较分散的形式同各种管理相结合
两类寄存器: 用户可见寄存器,高级语言编译器通过算法分
配并使用之,以减少程序访问主存次数 控制和状态寄存器,用于控制处理器的操作
由OS的特权代码使用, 以控制其他程序的执行
用户可见寄存器
机器语言直接引用 包括数据寄存器、地址寄存器以及条件码寄存器 数据寄存器(data register)又称通用寄存器
一个简单二级存储系统的性能
3、存储分块
存储最小单位:“二进位”,包含信息为0或1 最小编址单位:字节,一个字节包含八个二进位 主流个人电脑
主存:128MB~512MB之间 辅助存储器:在20GB~70GB 工作站、服务器 主存:512MB ~ 4GB之间 硬盘容量:数百GB 为简化分配和管理,存储器分成块,称一个物理页(Page) 块的大小:512B、1K、4K、8K
1 1 1 1 1 1 987654 321 0
543210
T
S
I2 I1 I0
XNZVC
条件位: C: 进位标志位 Z: 结果为零标志位
V: 溢出标志位 N: 结果为负标志位
I0 – I2:三位中断屏蔽位 S:CPU状态标志位,为1处于管态,为0处于目态 T:陷阱(Trap)中断指示位为1,
在下一条指令执行后引起自陷中断
算术逻辑指令(数据处理指令): 执行数据算术和逻辑操作
控制转移指令: 指定一个新的指令的执行起点
处理器控制指令: 修改处理器状态,改变处理器工作方式
2、特权指令和非特权指令
特权指令:只能由操作系统使用的指令 使用多道程序设计技术的计算机指令系统必须要区
分为特权指令和非特权指令 特权指令一般引起处理器状态的切换
一的存储键号 并将分配给该作业各存储块存储键也置成同样
键号 当OS挑选该作业运行时,OS将它的存储键号放
入程序状态字PSW存储键(“钥匙”)域中 每当CPU访问主存时,都将该主存块的存储键
与PSW中的“钥匙”进行比较 如果相匹配,则允许访问,否则,拒绝并报警
地址转换机制
同时有多个程序在内存 程序在内存的位置不是固定的而是随机的
用户程序A
用户程序B
解决方案:采用层次化的存储体系结构 当沿着层次下降时 每比特的价格将下降,容量将增大 速度将变慢,处理器的访问频率也将下降
层次化的存储体系结构
存储访问局部性原理
提高存储系统效能关键点:程序存储访问局部性原理
程序执行时,有很多的循环和子程序调用,一旦进入 这样的程序段,就会重复存取相同的指令集合
例:微处理器Pentium的程序状态字
CF: 进位标志位 ZF: 结果为零标志位 SF: 符号标志位 OF:Fra Baidu bibliotek溢出标志位
标准条件位:
TF:陷阱标志位 IF:中断允许(中断屏蔽)标志位 VIF:虚拟中断标志位 VIP:虚拟中断待决标志位 IOPL:IO特权级别
CPU状态的转换
目态→管态 唯一途径 是 中断
处理器由运算器、控制器、一系列的寄 存器以及高速缓存构成
运算器实现指令中的算术和逻辑运算,是 计算机计算的核心
控制器负责控制程序运行的流程,包括取 指令、维护CPU状态、CPU与内存的交互等 等
寄存器是指令在CPU内部作处理的过程中暂存数据、 地址以及指令信息的存储设备 在计算机的存储系统中它具有最快的访问速度
指令 程序状态字(PSW:Program Status Word),记录处理器
的运行模式信息等等
指令执行的基本过程(1)
两个步骤:
先从存储器中每次读取一条指令 然后执行这条指令 一个单条指令处理过程称为一个指令周期 程序的执行是由不断取指和执行的指令周期组成 仅当关机、出错或有停机相关指令时,程序才停止
高速缓存处于CPU和物理内存之间 一般由控制器中的内存管理单元(MMU:Memory Management Unit)管理 访问速度快于内存,低于寄存器
利用程序局部性原理使得高速指令处理和低速内存 访问得以匹配,从而提高CPU的效率
处理器中的寄存器
寄存器提供了一定的存储能力 速度比主存快得多 造价高,容量一般都很小
管态→目态 设置PSW(修改程序状态字) 可实现
二、存储系统
支持OS运行硬件环境的一个重要方面:
作业必须把它的程序和数据存放在内存中才能运行 多道程系统中,若干个程序和相关的数据要放入内存
操作系统要管理、保护程序和数据,使它们不至于受 到破坏 操作系统本身也要存放在内存中并运行
1、存储器的类型
硬件可提供如下功能:
界地址寄存器(界限寄存器) 存储键 地址转换机制
界地址寄存器(界限寄存器)
界地址寄存器被广泛使用的一种存储保护技术 机制比较简单,易于实现 实现方法: 在CPU中设置一对下限寄存器和上限寄存器
存放用户作业在主存中的下限和上限地址 也可将一个寄存器作为基址寄存器,另一寄存器作为
指令执行的基本过程(2)
每个指令周期开始时,依据在程序计数器中的 指令地址从存储器中取一条指令
在取指完成后根据指令类别自动将程序计数器 的值变成下条指令的地址,自增1
取到的指令放在指令寄存器中 处理器解释并执行所要求的动作
5类指令
访问存储器指令: 处理器和存储器间数据传送
I/O指令: 处理器和I/O模块间数据传送和命令发送
4、存储保护设施
对主存中的信息加以严格的保护,使操作系统及其 他程序不被破坏,是其正确运行的基本条件之一
多用户,多任务操作系统: OS给每个运行进程分配一个存储区域
问题: 多个程序同时在同一台机器上运行,怎样才能互不
侵犯? 如何处理重定位?
保护的硬件支持
解决方案 依赖于 配有特殊硬件的CPU
限长寄存器(指示存储区长度) 每当CPU要访问主存,硬件自动将被访问的主存地址与
界限寄存器的内容进行比较,以判断是否越界 如果未越界,则按此地址访问主存,否则将产生程序
中断——越界中断(存储保护中断)
界地址寄存器 存储保护技术
存储键
每个存储块有一个由二进位组成的存储保护键 一用户作业被允许进入主存,OS分给它一个唯
控制和状态寄存器
用于控制处理器的操作 大部分对于用户是不可见的 一部分可以在某种特权模式(由OS使用)下访问
常见的控制和状态寄存器: 程序计数器(PC:Program Counter),记录将要取出的
指令的地址 指令寄存器(IR:Instruction Register),包含最近取出的
能随意用普通方法写入数据(写入数据只能用特殊方法) 在微机中,一些常驻内存的模块以微程序形式固化在
ROM中,如:PC BIOS和CBASIC解释程序被固化于ROM 中
PROM:可编程只读存储器,使用特殊PROM写入器写入数 据
EPROM:电可擦写可编程只读存储器,用特殊的紫外线光 照射此芯片,以“擦去”信息,恢复原来状态,再使用特殊 EPROM写入器写入数据
闪存(flash memory)
2、存储器的层次结构
存储系统设计三个问题: 容量、速度和成本
容量:需求无止境
速度:能匹配处理器的速度
成本问题:成本和其他部件相比应在合适范围 之内
容量、速度和成本 三个目标不可能同时达到最优,要作权衡 存取速度快,每比特价格高 容量大,每比特价格越低,同时存取速度也越慢
对数据存取也有局部性,在较短的时间内,稳定地保 持在一个存储器的局部区域
处理器主要和存储器的局部打交道 在经过一段时间以后,使用的代码和数据集合会改变
设计多级存储的体系结构
原则:级别较低存储器比率小于级别较高存储器比率
假设两级存储器:

第I级包含1KB,存取时间为0.1μs

第II级包含1MB,存取时间为1μs
主要用于各种算术逻辑指令和访存指令 地址寄存器(address register)用于存储数据及
指令的物理地址、线性地址或者有效地址,用于 某 种 特 定 方 式 的 寻 址 。 如 index register 、 segment pointer、stack pointer 条件码寄存器保存CPU操作结果的各种标记位 如算术运算产生的溢出、符号等等
相关文档
最新文档