1-10
操作系统的程序接口
- 操作系统的程序接口——系统调用
- 操作系统实现的完成某种特定功能的过程
- 为所有运行程序提供访问操作系统的接口
系统调用的实现机制
陷入处理机制:计算机系统中控制和实现系统调用的机制。
陷入指令:也称访管指令,或异常中断指令,计算机系统为实现系统调用而引起处理器中断的指令。每个系统调用都事先规定了编号,并在约定寄存器 中规定了传递给内部处理程序的参数。
系统调用的实现要点
编写系统调用处理程序
设计一张系统调用入口地址表,每个入口地址指向一个系统调用的处理程序,并包含系统调用自带参数的个数。陷入处理机制需开辟现场保护区,以保存发生系统调用时的处理器现场。
系统调用的实现流程
1-11
操作系统软件的规模
在计算机软件发展史上,OS是第一个大规模的软件系统。
1960年代,由OS开发所衍生的体系结构、模块化开发、测试与验证、演化与维护等研究,直接催生 了软件工程这一新兴研究领域(另一个催生来源是 DB应用引发的需求与规格)。OS作为大型软件,结构设计是关键。
操作系统软件的结构设计
OS构件:内核、进程、线程、管程等
设计概念: 模块化、层次式、虚拟化
内核设计是OS设计中最为复杂的部分
操作系统内核
单内核:内核中各部件杂然混居的形态,始 于1960年代,广泛使用;如Unix/Linux,及 Windows(自称采用混合内核的CS结构)。
微内核:1980年代始,强调结构性部件与功能性部件的分离,大部分OS研究都集中在此。
混合内核:微内核和单内核的折中,较多组件在核心态中运行,以获得更快的执行速度。
外内核:尽可能减少内核的软件抽象化和传统微内核的消息传递机制,使得开发者专注于硬件的抽象化;部分嵌入式系统使用。
操作系统实现的一种层次式结构