第二章 操作系统运行环境
第 2章 操作系统运行环境
2.1 硬件环境
2.2 操作系统于其它软件的关系
2.3 操作系统与人的接口
2.4 固件 —— 微程序设计概念
第二章 操作系统运行环境
2.1 硬件环境
2.1.1 中央处理器
2.1.2 主存储器
2.1.3 缓冲技术
2.1.4 中断技术
2.1.5 时钟、时钟队列
第二章 操作系统运行环境
2.1.1 中央处理器( CPU)
单机系统和多机系统
单机系统:只有一个处理器的计算机系统
多机系统:有多个处理器的计算机系统
第二章 操作系统运行环境
2.1.1 中央处理器( CPU)
单用户单任务和多用户多任务
单用户单任务 多用户多任务
第二章 操作系统运行环境
2.1.1 中央处理器( CPU)
特权指令和非特权指令
在指令系统中只能由操作系统使用的指令,
如:启动设备、设置时钟、中断屏蔽、清
除内存、存储保护等,称为特权指令。
用户只能使用非特权指令
操作系统可以使用所有的指令
问题 1:计算机如何判断当前执行指令的
是用户还是操作系统呢?
第二章 操作系统运行环境
2.1.1 中央处理器( CPU)
处理器的状态
管态(管理态):操作系统管理程序运行
的状态。当处理器处于管理态时可以运行
所有指令。
目态(问题态):用户程序运行的状态。
当处理器处于目态时,只能执行非特权指
令。
问题 2:如何使计算机识别当前的处理器
状态呢?
第二章 操作系统运行环境
2.1.1 中央处理器( CPU)
程序状态字 PSW
PSW是一个特殊的寄存器,用于指示处理
器的状态
不同的处理器,他们的 PSW的位数不同,
格式也不同。
一个 PSW的例子:见教材 page 20
第二章 操作系统运行环境
2.1.2 主存储器
存储器的功能
程序(包括用户程序和操作系统程序)只
能放在主存中才能运行。
存储器的类型
读写型( RAM:Random Access Memory)
只读型 (ROM:Read Only Memory)
第二章 操作系统运行环境
2.1.2 主存储器
存储分块
为了简化对存储器的分配和管理,以“块”
作为存储器分配的最小单位。
不同的计算机系统,块的大小不同。
第二章 操作系统运行环境
2.1.2 主存储器
存储保护
为什么要使用存储保护?
存储保护的方法,
界地址寄存器:在 CPU中设置一对寄存器来存
放用户作业在主存中的上限地址和下限地址,
分别称为上限寄存器和下限寄存器(或者保存
下限和程序长度)
第二章 操作系统运行环境
2.1.2 主存储器
存储保护
存储保护的方法,
界地址寄存器
存储保护键:每个存储块都有一个五位二进制
组成的存储保护键(不占用块)
0 1 1 0 1
存储键 取保护位
第二章 操作系统运行环境
2.1.2 主存储器
存储键
当用户程序进入内存时,操作系统为它分配一个唯
一的存储键号,而用于存放该程序的内存块的存储
键号也设置为相同的值。
因为每个用户程序的存储键值是唯一的,所以存储
键的位数决定了可以同时进入内存的程序个数。
( 0号键是操作系统程序使用的键值,称万能键)
某个程序在 CPU上运行时,它的存储键值写入 PSW,
当 CPU访问内存时,要检查访问的内存块的存储键
是否与 PSW相应数值相同。
第二章 操作系统运行环境
2.1.2 主存储器
取保护位
取 0:即使存储键不同,也可以允许对该块
内容进行读取,但不能进行写操作。
取 1:如果存储键不同,就不允许对该块进
行任何操作。
Page 39 习题 2.8
第二章 操作系统运行环境
2.1.3 缓冲技术
缓冲
外部设备在进行数据传输期间专门用来暂
存这些数据的贮存区域
为什么使用缓冲区
CPU处理数据的速度与设备传输数据速度不
匹配
第二章 操作系统运行环境
2.1.4 中断技术
中断
中断,CPU对系统中发生的异步事件(随机
事件)的响应
中断事件(中断源):引起中断的事件
中断处理程序:处理中断事件的程序
中断的作用
能充分发挥处理器的使用效率
提高系统的实时处理能力
第二章 操作系统运行环境
2.1.4 中断技术
中断的类型
不同的机器对中断类型的划分不同,大致
包括,
不可屏蔽中断(电源故障、机器内部故障等)
可屏蔽中断(输入输出中断)
程序中断(溢出、缺页、读内存错等)
软件中断(访管中断)
外部中断(时钟中断、控制台中断、多机通讯)
第二章 操作系统运行环境
2.1.4 中断技术
中断逻辑
中断逻辑是接收各种中断源发出的中断请
求信号,并按优先级决定响应哪个中断的
机构。
对应每个中断源有一个中断触发器寄存中
断信号。
中断扫描机构用于在每个指令周期扫描中
断寄存器,检查是否有中断信号。
第二章 操作系统运行环境
2.1.4 中断技术
中
断
源
中
断
寄
存
器
中
断
扫
描
机
构
中
断
逻
辑
中
断
处
理
程
序
第二章 操作系统运行环境
2.1.4 中断技术
中断优先级
优先级越高的中断优先被处理
具有同样优先级的中断,
固定优先数
轮转法
中断响应
CPU什么时候响应中断
如何知道发出中断的中断源是哪一个
第二章 操作系统运行环境
2.1.4 中断技术
中断处理过程
保存中断现场
保存断点的 PSW
保存断点地址( CS:IP)
取中断向量
进入中断处理程序
中断返回
第二章 操作系统运行环境
2.1.5 时钟、时钟队列
计算机系统时钟的作用
定时
提供用户和系统所需的绝对时间
用作可编程的发生器
记录用户使用设备的时间
记录外部事件发生的时间
在分时系统中,实现用户时间片
在实时系统中,输出正确的时间信号
第二章 操作系统运行环境
2.1.5 时钟、时钟队列
绝对时钟和间隔时钟
绝对时钟:记录当前的绝对时间,提供给
系统真实的时间。
相对时钟:也称间隔时钟,用作程序的定
时器、中断触发器等。
时钟队列
为了定时唤醒某些程序而设计的一种技术。
Page 29
第二章 操作系统运行环境
2.2 操作系统与其它软件的关系
操作系统属于计算机软件系统,但是和其它的
软件不同,它管理着整个计算机系统的运行;为
其它软件提供了运行环境。
操作系统程序在其它软件运行的各个阶段对它
们进行管理。
本节涉及到用户作业在计算机上运行的过程,
以及在这个过程中操作系统所起到的作用
第二章 操作系统运行环境
2.2 操作系统与其它软件的关系
2.2.1 作业、作业步和进程
2.2.2 重定位
2.2.3 装入程序
第二章 操作系统运行环境
2.2.1 作业、作业步和进程
作业:要求计算机处理的一个相对独立
的任务
作业步:完成一个作业所需要顺序执行
的步骤
进程,
线程,
第二章 操作系统运行环境
2.2.2 重定位
重定位
对程序中的地址进行重新设置,把相对地址变为绝
对地址。
相对地址
相对于某个基准量编址的时候使用的地址,用于程
序编写和编译的地址系统。
绝对地址
存储控制部件能够识别的贮存单元编号,即主存单
元的实际地址。
第二章 操作系统运行环境
2.2.2 重定位
相对地址空间
也称逻辑地址空间、用户地址空间,即程
序中相对地址的全体。
物理地址空间
即主存的实际地址空间。
第二章 操作系统运行环境
2.2.2 重定位
为什么要重定位?
重定位的类型
静态重定位:在程序装入主存时,由连接
装入程序进行
动态重定位:在处理器每次访问主存时,
由动态地址变换机构进行
第二章 操作系统运行环境
2.2.3 装入程序
绝对装入
通常在个人 PC机上。编译程序直接把用户
程序翻译成绝对地址形式,装入时只需按
顺序读入。
相对装入(连接装入)
如果装入的程序需要调用过程或子过程,
需要先把这些过程和子过程同主程序装配
起来形成一个完整的程序,并装入主存。
第二章 操作系统运行环境
2.2.3 装入程序
相对装入的两个主要问题
如何区分地址项和非地址项
编译时把程序中的数据项加上指示字,便明是
否地址项
使用一个重定位表,依次给出需要重定位的数
据项
如何把各程序段连接起来
内部定义符号表:记录每个内部符号名和它在
本程序中的相对地址。
外部调用符号表:包括本程序所调用的所有外
部符号名。
第二章 操作系统运行环境
2.2.3 装入程序
相对装入示例,page 32
第二章 操作系统运行环境
2.4 固件 —— 微程序设计概念
固件
具有软件功能的硬件
通过微程序设计技术将软件转化为硬件
微程序设计
所谓微程序设计就是指把计算机控制器的操作用微
指令编成程序来实现,这样的程序称为微程序或微
代码。
微指令
计算机控制线路的操作是由一系列基本的动作组成
的,这些基本动作称为微操作或微指令。
第二章 操作系统运行环境
2.4 固件 —— 微程序设计概念
微程序设计的优点
机器控制线路的设计可以标准化,即方便又节省时
间
便于修改、维护和检查
一组指令系统可以通过微程序适合多种型号的计算
机
一台计算机通过微程序可以包含若干组指令系统
微程序设计的缺点
效率、性能低于直接使用硬件线路,成本高。
微程序在高速控制存储器中运行
第二章 操作系统运行环境
课后作业
Page 40
2.19
2.22
上交时间:下周
第 2章 操作系统运行环境
2.1 硬件环境
2.2 操作系统于其它软件的关系
2.3 操作系统与人的接口
2.4 固件 —— 微程序设计概念
第二章 操作系统运行环境
2.1 硬件环境
2.1.1 中央处理器
2.1.2 主存储器
2.1.3 缓冲技术
2.1.4 中断技术
2.1.5 时钟、时钟队列
第二章 操作系统运行环境
2.1.1 中央处理器( CPU)
单机系统和多机系统
单机系统:只有一个处理器的计算机系统
多机系统:有多个处理器的计算机系统
第二章 操作系统运行环境
2.1.1 中央处理器( CPU)
单用户单任务和多用户多任务
单用户单任务 多用户多任务
第二章 操作系统运行环境
2.1.1 中央处理器( CPU)
特权指令和非特权指令
在指令系统中只能由操作系统使用的指令,
如:启动设备、设置时钟、中断屏蔽、清
除内存、存储保护等,称为特权指令。
用户只能使用非特权指令
操作系统可以使用所有的指令
问题 1:计算机如何判断当前执行指令的
是用户还是操作系统呢?
第二章 操作系统运行环境
2.1.1 中央处理器( CPU)
处理器的状态
管态(管理态):操作系统管理程序运行
的状态。当处理器处于管理态时可以运行
所有指令。
目态(问题态):用户程序运行的状态。
当处理器处于目态时,只能执行非特权指
令。
问题 2:如何使计算机识别当前的处理器
状态呢?
第二章 操作系统运行环境
2.1.1 中央处理器( CPU)
程序状态字 PSW
PSW是一个特殊的寄存器,用于指示处理
器的状态
不同的处理器,他们的 PSW的位数不同,
格式也不同。
一个 PSW的例子:见教材 page 20
第二章 操作系统运行环境
2.1.2 主存储器
存储器的功能
程序(包括用户程序和操作系统程序)只
能放在主存中才能运行。
存储器的类型
读写型( RAM:Random Access Memory)
只读型 (ROM:Read Only Memory)
第二章 操作系统运行环境
2.1.2 主存储器
存储分块
为了简化对存储器的分配和管理,以“块”
作为存储器分配的最小单位。
不同的计算机系统,块的大小不同。
第二章 操作系统运行环境
2.1.2 主存储器
存储保护
为什么要使用存储保护?
存储保护的方法,
界地址寄存器:在 CPU中设置一对寄存器来存
放用户作业在主存中的上限地址和下限地址,
分别称为上限寄存器和下限寄存器(或者保存
下限和程序长度)
第二章 操作系统运行环境
2.1.2 主存储器
存储保护
存储保护的方法,
界地址寄存器
存储保护键:每个存储块都有一个五位二进制
组成的存储保护键(不占用块)
0 1 1 0 1
存储键 取保护位
第二章 操作系统运行环境
2.1.2 主存储器
存储键
当用户程序进入内存时,操作系统为它分配一个唯
一的存储键号,而用于存放该程序的内存块的存储
键号也设置为相同的值。
因为每个用户程序的存储键值是唯一的,所以存储
键的位数决定了可以同时进入内存的程序个数。
( 0号键是操作系统程序使用的键值,称万能键)
某个程序在 CPU上运行时,它的存储键值写入 PSW,
当 CPU访问内存时,要检查访问的内存块的存储键
是否与 PSW相应数值相同。
第二章 操作系统运行环境
2.1.2 主存储器
取保护位
取 0:即使存储键不同,也可以允许对该块
内容进行读取,但不能进行写操作。
取 1:如果存储键不同,就不允许对该块进
行任何操作。
Page 39 习题 2.8
第二章 操作系统运行环境
2.1.3 缓冲技术
缓冲
外部设备在进行数据传输期间专门用来暂
存这些数据的贮存区域
为什么使用缓冲区
CPU处理数据的速度与设备传输数据速度不
匹配
第二章 操作系统运行环境
2.1.4 中断技术
中断
中断,CPU对系统中发生的异步事件(随机
事件)的响应
中断事件(中断源):引起中断的事件
中断处理程序:处理中断事件的程序
中断的作用
能充分发挥处理器的使用效率
提高系统的实时处理能力
第二章 操作系统运行环境
2.1.4 中断技术
中断的类型
不同的机器对中断类型的划分不同,大致
包括,
不可屏蔽中断(电源故障、机器内部故障等)
可屏蔽中断(输入输出中断)
程序中断(溢出、缺页、读内存错等)
软件中断(访管中断)
外部中断(时钟中断、控制台中断、多机通讯)
第二章 操作系统运行环境
2.1.4 中断技术
中断逻辑
中断逻辑是接收各种中断源发出的中断请
求信号,并按优先级决定响应哪个中断的
机构。
对应每个中断源有一个中断触发器寄存中
断信号。
中断扫描机构用于在每个指令周期扫描中
断寄存器,检查是否有中断信号。
第二章 操作系统运行环境
2.1.4 中断技术
中
断
源
中
断
寄
存
器
中
断
扫
描
机
构
中
断
逻
辑
中
断
处
理
程
序
第二章 操作系统运行环境
2.1.4 中断技术
中断优先级
优先级越高的中断优先被处理
具有同样优先级的中断,
固定优先数
轮转法
中断响应
CPU什么时候响应中断
如何知道发出中断的中断源是哪一个
第二章 操作系统运行环境
2.1.4 中断技术
中断处理过程
保存中断现场
保存断点的 PSW
保存断点地址( CS:IP)
取中断向量
进入中断处理程序
中断返回
第二章 操作系统运行环境
2.1.5 时钟、时钟队列
计算机系统时钟的作用
定时
提供用户和系统所需的绝对时间
用作可编程的发生器
记录用户使用设备的时间
记录外部事件发生的时间
在分时系统中,实现用户时间片
在实时系统中,输出正确的时间信号
第二章 操作系统运行环境
2.1.5 时钟、时钟队列
绝对时钟和间隔时钟
绝对时钟:记录当前的绝对时间,提供给
系统真实的时间。
相对时钟:也称间隔时钟,用作程序的定
时器、中断触发器等。
时钟队列
为了定时唤醒某些程序而设计的一种技术。
Page 29
第二章 操作系统运行环境
2.2 操作系统与其它软件的关系
操作系统属于计算机软件系统,但是和其它的
软件不同,它管理着整个计算机系统的运行;为
其它软件提供了运行环境。
操作系统程序在其它软件运行的各个阶段对它
们进行管理。
本节涉及到用户作业在计算机上运行的过程,
以及在这个过程中操作系统所起到的作用
第二章 操作系统运行环境
2.2 操作系统与其它软件的关系
2.2.1 作业、作业步和进程
2.2.2 重定位
2.2.3 装入程序
第二章 操作系统运行环境
2.2.1 作业、作业步和进程
作业:要求计算机处理的一个相对独立
的任务
作业步:完成一个作业所需要顺序执行
的步骤
进程,
线程,
第二章 操作系统运行环境
2.2.2 重定位
重定位
对程序中的地址进行重新设置,把相对地址变为绝
对地址。
相对地址
相对于某个基准量编址的时候使用的地址,用于程
序编写和编译的地址系统。
绝对地址
存储控制部件能够识别的贮存单元编号,即主存单
元的实际地址。
第二章 操作系统运行环境
2.2.2 重定位
相对地址空间
也称逻辑地址空间、用户地址空间,即程
序中相对地址的全体。
物理地址空间
即主存的实际地址空间。
第二章 操作系统运行环境
2.2.2 重定位
为什么要重定位?
重定位的类型
静态重定位:在程序装入主存时,由连接
装入程序进行
动态重定位:在处理器每次访问主存时,
由动态地址变换机构进行
第二章 操作系统运行环境
2.2.3 装入程序
绝对装入
通常在个人 PC机上。编译程序直接把用户
程序翻译成绝对地址形式,装入时只需按
顺序读入。
相对装入(连接装入)
如果装入的程序需要调用过程或子过程,
需要先把这些过程和子过程同主程序装配
起来形成一个完整的程序,并装入主存。
第二章 操作系统运行环境
2.2.3 装入程序
相对装入的两个主要问题
如何区分地址项和非地址项
编译时把程序中的数据项加上指示字,便明是
否地址项
使用一个重定位表,依次给出需要重定位的数
据项
如何把各程序段连接起来
内部定义符号表:记录每个内部符号名和它在
本程序中的相对地址。
外部调用符号表:包括本程序所调用的所有外
部符号名。
第二章 操作系统运行环境
2.2.3 装入程序
相对装入示例,page 32
第二章 操作系统运行环境
2.4 固件 —— 微程序设计概念
固件
具有软件功能的硬件
通过微程序设计技术将软件转化为硬件
微程序设计
所谓微程序设计就是指把计算机控制器的操作用微
指令编成程序来实现,这样的程序称为微程序或微
代码。
微指令
计算机控制线路的操作是由一系列基本的动作组成
的,这些基本动作称为微操作或微指令。
第二章 操作系统运行环境
2.4 固件 —— 微程序设计概念
微程序设计的优点
机器控制线路的设计可以标准化,即方便又节省时
间
便于修改、维护和检查
一组指令系统可以通过微程序适合多种型号的计算
机
一台计算机通过微程序可以包含若干组指令系统
微程序设计的缺点
效率、性能低于直接使用硬件线路,成本高。
微程序在高速控制存储器中运行
第二章 操作系统运行环境
课后作业
Page 40
2.19
2.22
上交时间:下周