18操作系统的运行环境
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
访问
常见的控制和状态寄存器
• 程序计数器(PC:Program Counter), 记录将要取出的指令的地址
• 指令寄存器(IR:Instruction Register), 包含最近取出的指令
• 程 序 状 态 字 ( PSW : Program Status Word),记录处理器的运行模式信息等 等
• 取到的指令放在指令寄存器(IR)中 • 处理器解释并执行所要求的动作
5类指令
• 访问存储器指令: 处理器和存储器间数据传送
• I/O指令: 处理器和I/O设备间数据传送和命令发送
• 算术逻辑指令(数据处理指令): 执行数据算术和逻辑操作
• 控制转移指令: 指定一个新的指令的执行起点
• 处理器控制指令: 修改处理器状态,改变处理器工作方式
处理器中的寄存器
• 寄存器提供了一定的存储能力 • 速度比主存快得多 • 造价高,容量一般都很小
两类寄存器: • 用户可见寄存器 高级语言编译器通过算法分配
并使用之,以减少程序访问主存次数。 • 控制和状态寄存器 用于控制处理器的操作,由
OS的特权代码使用,以控制其它程序的执行。
用户可见寄存器
• 机器语言(汇编语言)直接引用 • 包括数据寄存器、地址寄存器等
目态:用户程序运行时的状态,较低的特权级别, 又称为普通态(普态)、用户态
有些系统将处理器状态划分核心状态,管理状态和 用户程序状态(目标状态)三种
实例:x86系列处理器
• 386、486、Pentium系列都支持4个处理器特权 级别(特权环:R0、R1、R2和R3)
• 从R0到R3特权能力依次降低 • R0相当于双状态系统的管态 • R3相当于目态 • R1和R2则介于两者之间,它们能够运行的指令
• 数据寄存器(data register)又称通用寄存器 • 地址寄存器(address register)用于存储数据及指
令的物理地址。如index register、segment pointer、 stack pointer
控制和状态寄存器
• 用于控制处理器的操作 • 大部分对于用户是不可见的 • 一部分可以在某种特权模式(由OS使用)下
思考题
• 什么是管态,什么是目态,为什么要区分二态? 你认为用什么方法可以区分二态?
• 在什么情况下处理机的状态会从目态转换到管 态?如何实现这种转换?
1.8.2 存储系统
• 作业必须把它的程序和数据存放在内存中才能运行 • 多道程系统中,若干个程序和相关的数据要放入主存
储器 • 操作系统要管理、保护程序和数据,使它们不至于受
集合具有包含关系:
I R0 I R1 I R2 I R3
四个级别运行不同类别的程序:
• R0-运行操作系统核心代码 • R1-运行关键设备驱动程序和I/O处理例程 • R2-运行其它受保护共享代码,如语言系统运行环
境
• R3-运行各种用户程序 现有基于x86处理器的操作系统,如UNIX、Linux以
特权指令和非特权指令
特权指令:只能由操作系统使用的指令 • 使用多道程序设计技术的计算机指令系统必
须要区分为特权指令和非特权指令
• CPU如何知道当前运行的是操作系统还是一 般应用软件? 有赖于处理器状态
处理器的状态
多数系统将处理器工作状态划分为管态和目态:
管态:操作系统管理程序运行的状态,较高的特权 级别,又称为特权态(特态)、系统态 、核心态
指令执行的基本过程(1)
两个步骤:
• 先从存储器中每次读取一条指令 • 然后执行这条指令 一个单条指令处理过程称为一个指令周期 程序的执行是由不断取指和执行的指令周期组成
指令执行的基本过程(2)
• 每个指令周期开始时,依据在程序计数器中的指 令地址从存储器中取一条指令
• 在取指完成后根据指令类别自动将程序计数器的 值变成下条指令的地址
到破坏 • 操作系统本身也要存放在主存储器中并运行
一、存储器类型:
RAM 和 ROM
二、存储系统的层次结构:存储访问的局部性原理
明当前在CPU上执行的是操作系统还是一般 用户程序,从而决定其是否可以使用特权指 令或拥有其它的特殊权力
• 条件码——反映指令执行后的结果特征 • 中断屏蔽码——指出是否允许中断
例1:微处理器M68000的程序状态字
1 1 1 1 1 1 987654 321 0
543210
T
S
I2 I1 I0
XNLeabharlann BaiduVC
1.8 操作系统的运行环境
1.8.1 中央处理器CPU
一、CPU的构成与基本工作方式:
CPU包含:运算器、控制器、寄存器、高速缓存。
处理器
数据寄存器 地址寄存器 控制和状态寄存器
PC IR PSW
高速缓存Cache
运算器
控制器
总线
内存
运算器实现指令中的算术和逻辑运算,是计算机计 算的核心。 控制器负责控制程序运行的流程,包括取指令、维 护CPU状态、CPU与内存的交互等等。 寄存器是指令在CPU内部作处理的过程中暂存数据、 地址以及指令信息的存储设备,在计算机的存储系 统中它具有最快的访问速度。 高速缓存处于CPU和物理内存之间,一般由控制器中 的内存管理单元(MMU:Memory Management Unit) 管理,访问速度快于内存,低于寄存器。利用程序 局部性原理使得高速指令处理和低速内存访问得以 匹配,从而提高CPU的效率。
及Windows系列大都只用了R0和R3两个特权级别
图:Intel 系列CPU的特权级别
管态和目态的差别
处理器处于管态时: • 全部指令(包括特权指令)可以执行 • 可使用所有资源 • 并具有改变处理器状态的能力
处理器处于目态时: • 只有非特权指令能执行
程序状态字PSW
PSW (Program Status Word ): • CPU的状态——指明管态还是目态,用来说
条件位: C: 进位标志位 Z: 结果为零标志位
V: 溢出标志位 N: 结果为负标志位
I0 – I2:三位中断屏蔽位 S:CPU状态标志位,为1处于管态,为0处于目态 T:陷阱(Trap)中断指示位为1,
在下一条指令执行后引起自陷中断
CPU状态的转换
目态--管态 其转换的唯一途径是通过中断
管态--目态 可用设置PSW(修改程序状态字)实现
常见的控制和状态寄存器
• 程序计数器(PC:Program Counter), 记录将要取出的指令的地址
• 指令寄存器(IR:Instruction Register), 包含最近取出的指令
• 程 序 状 态 字 ( PSW : Program Status Word),记录处理器的运行模式信息等 等
• 取到的指令放在指令寄存器(IR)中 • 处理器解释并执行所要求的动作
5类指令
• 访问存储器指令: 处理器和存储器间数据传送
• I/O指令: 处理器和I/O设备间数据传送和命令发送
• 算术逻辑指令(数据处理指令): 执行数据算术和逻辑操作
• 控制转移指令: 指定一个新的指令的执行起点
• 处理器控制指令: 修改处理器状态,改变处理器工作方式
处理器中的寄存器
• 寄存器提供了一定的存储能力 • 速度比主存快得多 • 造价高,容量一般都很小
两类寄存器: • 用户可见寄存器 高级语言编译器通过算法分配
并使用之,以减少程序访问主存次数。 • 控制和状态寄存器 用于控制处理器的操作,由
OS的特权代码使用,以控制其它程序的执行。
用户可见寄存器
• 机器语言(汇编语言)直接引用 • 包括数据寄存器、地址寄存器等
目态:用户程序运行时的状态,较低的特权级别, 又称为普通态(普态)、用户态
有些系统将处理器状态划分核心状态,管理状态和 用户程序状态(目标状态)三种
实例:x86系列处理器
• 386、486、Pentium系列都支持4个处理器特权 级别(特权环:R0、R1、R2和R3)
• 从R0到R3特权能力依次降低 • R0相当于双状态系统的管态 • R3相当于目态 • R1和R2则介于两者之间,它们能够运行的指令
• 数据寄存器(data register)又称通用寄存器 • 地址寄存器(address register)用于存储数据及指
令的物理地址。如index register、segment pointer、 stack pointer
控制和状态寄存器
• 用于控制处理器的操作 • 大部分对于用户是不可见的 • 一部分可以在某种特权模式(由OS使用)下
思考题
• 什么是管态,什么是目态,为什么要区分二态? 你认为用什么方法可以区分二态?
• 在什么情况下处理机的状态会从目态转换到管 态?如何实现这种转换?
1.8.2 存储系统
• 作业必须把它的程序和数据存放在内存中才能运行 • 多道程系统中,若干个程序和相关的数据要放入主存
储器 • 操作系统要管理、保护程序和数据,使它们不至于受
集合具有包含关系:
I R0 I R1 I R2 I R3
四个级别运行不同类别的程序:
• R0-运行操作系统核心代码 • R1-运行关键设备驱动程序和I/O处理例程 • R2-运行其它受保护共享代码,如语言系统运行环
境
• R3-运行各种用户程序 现有基于x86处理器的操作系统,如UNIX、Linux以
特权指令和非特权指令
特权指令:只能由操作系统使用的指令 • 使用多道程序设计技术的计算机指令系统必
须要区分为特权指令和非特权指令
• CPU如何知道当前运行的是操作系统还是一 般应用软件? 有赖于处理器状态
处理器的状态
多数系统将处理器工作状态划分为管态和目态:
管态:操作系统管理程序运行的状态,较高的特权 级别,又称为特权态(特态)、系统态 、核心态
指令执行的基本过程(1)
两个步骤:
• 先从存储器中每次读取一条指令 • 然后执行这条指令 一个单条指令处理过程称为一个指令周期 程序的执行是由不断取指和执行的指令周期组成
指令执行的基本过程(2)
• 每个指令周期开始时,依据在程序计数器中的指 令地址从存储器中取一条指令
• 在取指完成后根据指令类别自动将程序计数器的 值变成下条指令的地址
到破坏 • 操作系统本身也要存放在主存储器中并运行
一、存储器类型:
RAM 和 ROM
二、存储系统的层次结构:存储访问的局部性原理
明当前在CPU上执行的是操作系统还是一般 用户程序,从而决定其是否可以使用特权指 令或拥有其它的特殊权力
• 条件码——反映指令执行后的结果特征 • 中断屏蔽码——指出是否允许中断
例1:微处理器M68000的程序状态字
1 1 1 1 1 1 987654 321 0
543210
T
S
I2 I1 I0
XNLeabharlann BaiduVC
1.8 操作系统的运行环境
1.8.1 中央处理器CPU
一、CPU的构成与基本工作方式:
CPU包含:运算器、控制器、寄存器、高速缓存。
处理器
数据寄存器 地址寄存器 控制和状态寄存器
PC IR PSW
高速缓存Cache
运算器
控制器
总线
内存
运算器实现指令中的算术和逻辑运算,是计算机计 算的核心。 控制器负责控制程序运行的流程,包括取指令、维 护CPU状态、CPU与内存的交互等等。 寄存器是指令在CPU内部作处理的过程中暂存数据、 地址以及指令信息的存储设备,在计算机的存储系 统中它具有最快的访问速度。 高速缓存处于CPU和物理内存之间,一般由控制器中 的内存管理单元(MMU:Memory Management Unit) 管理,访问速度快于内存,低于寄存器。利用程序 局部性原理使得高速指令处理和低速内存访问得以 匹配,从而提高CPU的效率。
及Windows系列大都只用了R0和R3两个特权级别
图:Intel 系列CPU的特权级别
管态和目态的差别
处理器处于管态时: • 全部指令(包括特权指令)可以执行 • 可使用所有资源 • 并具有改变处理器状态的能力
处理器处于目态时: • 只有非特权指令能执行
程序状态字PSW
PSW (Program Status Word ): • CPU的状态——指明管态还是目态,用来说
条件位: C: 进位标志位 Z: 结果为零标志位
V: 溢出标志位 N: 结果为负标志位
I0 – I2:三位中断屏蔽位 S:CPU状态标志位,为1处于管态,为0处于目态 T:陷阱(Trap)中断指示位为1,
在下一条指令执行后引起自陷中断
CPU状态的转换
目态--管态 其转换的唯一途径是通过中断
管态--目态 可用设置PSW(修改程序状态字)实现