目录
1、定时装置
2、堆与栈
3、寄存器
4、特权指令与非特权指令
5、处理器状态及状态转换
6、地址映射机构
7、存储保护设施
8、中断装置
9、通道与DMA
10、IO保护
1、定时装置
- 绝对时钟:记载实际时间,不发中断。
- 间隔时钟:定时发生中断,一般间隔单位为“毫秒”。
绝对时钟是必要的,操作系统通过根据绝对时钟的值记录作业进入系统和处理时间、文件的修改和存取时间、资源占用时间、日志记录时间等。
间隔时钟是实现多道程序的基础—保证操作系统获得控制权。 其它中断也进入操作系统,但是否发生,何时发生没有保障。(中断时系统并发必要条件按,即只有通过中断才能实现多道批处理)
2、堆与栈
堆:属于用户空间,用于保存程序中的动态变量
用户栈:属于用户空间,用于保存用户函数调用时返回点、参数、局部变量、返回值,传动调用操作系统时传给操作系统的值。
系统栈:也成为核心站,在逻辑上属于操作系统空间,用于保存中断现场,保存子程序转移返回点、参数、局部变量、返回值
程序切换的同时伴随着堆、用户栈、系统栈的切换,但硬件的指针时多个进程共享的。
3、寄存器
硬件系统提供一套寄存器,由运行进程使用。切换程序时,一般要把寄存器的当前值保存起来,再次运行前再次恢复。这些寄存器有:
程序状态字(PSW)
指令计数器(PC):记载运行程下一条指令地址
栈指针SP:管态和目态各一个,分别保存系统栈和用户栈的栈顶位置。
通用寄存器(regs):若干个,用于存数和计算,还可以用来保护系统调用时传给操作系统的参数,以及由操作系统传给用户的返回值。
浮点寄存器(fregs):若干个,用于存数和计算,也可以用来保存系统调用时传给操作系统的参数,以及由操作系统传给用户的返回值。
地址映射寄存器:一般有一对,分别记录内存区域的起始地址和长度,分别成为基地寄存器(base)和限长寄存器(limit)
4、特权指令与非特权指令
特权指令(privileged instruction) 只有在管态才能执行的指令(影响系统状态)
关中断,置程序状态字,停机, IO,…….
非特权指令(non-privileged instruction)所有程序可用(不影响系统状态),即管态和目态下均可运行
取数,四则运算,……
5、处理器状态及状态转换
处理机状态
系统态(system mode)(管态,核态),即管态是操作系统运行时所处的状态
用户态(user mode) (目态,常态),即目态是一般用户程序运行时所处的状态
状态转换
管态 =>目态(置程序状态字,特权指令)
目态 => 管态(中断,trap)
6、地址映射机构
逻辑地址=>物理地址
逻辑地址(虚地址):程序中产生的地址
物理地址(实地址):存储器地址
7、存储保护设施
防止应用程序
侵犯操作系统空间; 侵犯其它用戶空间.
地址检查
越界检查; 越权检查(对共享区域).
8、中断装置
发现并响应中断的硬件机构
当前(PSW,PC)=>系统栈
中断向量(PSW,PC)=>寄存器
9、通道与DMA
通道:负责IO操作的处理机
通道指令系统
读写操作 控制操作 转移操作
通道运控部件
- 通道地址字CAW
- 通道命令字CCW
- 通道状态字CSW
- 通道数据字CDW
10、IO保护
定义所有IO指令为特权指令。
- 方便使用
- 防止发生冲突