文档介绍:第二章操作系统的逻辑结构
操作系统虚拟机
操作系统逻辑结构
处理机的状态
中断技术
操作系统虚拟机
操作系统的核心在裸机上运行,用户程序在扩充后的机器上运行。
扩充后的机器
操作系统
裸机
应用程序
用户程序
什么是操作系统虚拟机 在裸机上配置了操作系统程序后就构了操作系统虚拟机。
操作系统逻辑结构
处理机的状态
一. 处理机的状态
在计算机系统中有两类程序运行:
用户程序系统程序
为了给操作系统建立一个保护环境,用户程序、系统程序执行时有不同的权限。
根据对系统资源和机器指令的使用权限,把处理机执行时的工作状态分为核态和用户态,有的操作系统还将系统程序执行时的机器的状态又分为核态和管态。
处理机状态的权限次序是:核态、管态、用户态。
1. 核态:
CPU执行操作系统程序时所处的状态。
在此状态下允许CPU使用全部资源和全部指令,其中包括一组特权指令(如涉及外设的I/O、改变处理机状态、修改存储保护的指令),实现对系统资源的分配与管理,为用户提供使用外部设备的服务。
2. 管态:
管态比核态的权限低,在此状态下允许使用一些用户态下不能使用的资源,但不能使用修改CPU状态的指令。无核态时,管态执行核态的全部功能。
:
用户程序执行时CPU所处的状态。在此状态下禁止使用特权指令,不能直接使用系统资源与改变CPU状态,并且只能访问用户程序所在的存储空间。
当CPU执行用户程序时, CPU机处于用户态,在执行的过程中出现了中断(或自陷)时,系统转去处理与中断有关的事件,这时cpu由用户态转换成核态(或管态),处理完中断后,返回断点继续执行用户程序,这时cpu由核态转换成用户态。
右图是UNIX系统环境下处理机状态转换图,在UNIX系统中,把核态称为核心态
二. 特权指令集
在核态下操作系统可以使用所有指令,包括一组特权指令。
允许和禁止中断;
在进程之间切换处理机;
存取用于内存保护的寄存器;
执行输入和输出操作;
停止一个中央处理机的工作。
在下列情况下,由用户态转向核态:
用户程序要求操作系统的服务,系统调用;
发生一次中断;
在用户程序中产生了一个错误的状态;
在用户程序中企图执行一条特权指令;
从核态转回用户态用一条指令实现,这条指令也是特权指令, 一般情况下是中断返回指令。
中断技术
中断概念
所谓中断是指某个事件(例如电源掉电、定点加法溢出或I/O传输结束等) 发生时,系统中止现行程序的运行、引出处理事件程序对该事件进行处理,处理完毕后返回断点,继续执行。
正在执行的用户程序
继续执行
中断处
理程序
中断进入
中断
返回