第一章 导论
- 1.1 操作系统做什么
- 计算机系统
- 计算机硬件
- 操作系统
- 系统程序和应用程序
- 用户
- 1.1.1 用户视角
- 个人PC 设计目的是为了用户使用方便,性能是次要的,而且不在乎资源使用率(如何共享硬件和软件资源
- 性能对用户来说非常重要,而不是资源使用率,优化单用户使用情况
- 大型机 小型机 资源使用
- 工作站 个人使用性能和资源利用率的折中
- 1.1.2 系统视角
- 可以将操作系统看做资源分配器。操作系统管理这些资源。
- 操作系统是控制程序。控制程序管理用户程序的知行以防止计算机资源的错误使用或使用不当。
- 1.1.3 定义操作系统
- 从系统观点看,操作系统是计算机系统中的一个系统软件,它管理和控制计算机系统中的资源。
- 从用户观点看,操作系统是用户和计算机之间的接口;
- 从软件观点看,操作系统是程序和数据结构的集合。
- 计算机系统
- 1.2 计算机系统组织
- 计算机系统操作
- 事件的发生通常通过硬件或者软件中断(interrupt)。硬件可随时通过系统总线向CPU发出信号,以触发中断。软件通过执行特别操作系统如系统调用(system call)(也称为监视器调用)也能触发中断。
- 存储设备层次
上三种通常采用半导体技术,同时,属于易失性设备,下面属于非易失性设备
- 1.3 计算机系统体系结构
- 1.4 操作系统结构
- 多道程序设计系统: 提供了一个可以充分使用各种系统资源(如CPU,内存,外设)的环境。但是没有提供与计算机操作系统直接交互的能力。
- 分时系统(多任务)躲到程序设计的延伸,切换频率很高(作业之间的切换)用户可以在程序运行期间与之进行 交互。
- 分时操作系统采用CPU调度和多道程序设计以提供用户分时计算机的一小部分。每个用户在内存中至少有一个程序。装入到内存并执行的程序通常称为进程(process)。
- 作业池 由所有驻留在吃盘中需要等待分配内存的作业组成。
- 如果多个作业需要调入内存但没有足够的内存,那么系统必须在这些作业中做出选择,这种决策称为作业调度。
- CPU调度 多任务同时需要知行,系统必须做出选择,这样的选择称为CPU调度。
- 1.5 操作系统操作
- 1.5.1 双重模式操作
- 用户模式和监督程序模式(也称为管理模式 系统模式,或者特权模式)。
- 双重模式操作系统了保护操作系统和用户程序不受错误用户程序影响的手段。其实现方法为:将能引起损害的机器指令作为特权指令。
- 1.5.2 定时器
- 在给定时间后中断计算机
- 1.5.1 双重模式操作
- 1.6 进程管理
- 操作系统负责下述与进程管理相关的活动
·创建和删除用户进程和系统进程。
·挂起和重启进程。
·提供进程同步机制。
·提供进程通信机制。
·提供死锁处理机制。
- 1.7 内存管理
- 内存通常是CPU能直接寻址和访问的唯一大容量存储器
操作系统负责下列有关内存管理的活动:
·记录内存的哪部分正在被使用及被谁使用。
·当有内存空间时,决定哪些进程可以装入内存。
·根据需要分配和释放内存空间。
- 1.8 存储管理
- 1.8.1 文件管理
操作系统负责下列有关文件管理的活动:
·创建和删除文件。
·创建和删除目录来组织文件。
·提供操作文件和目录的原语。
- 1.8.2 大容量存储器管理
- 二级存储器
- 操作系统负责下列有关硬盘管理的活动
- 空闲空间管理
- 存储空间分配
- 磁盘调度
- 1.8.3 高速缓存
- 高速缓存一致性
对于多处理器环境,这种情况变得更为复杂,因为每个CPU不但有自己的内部寄存器,还有本地高速缓存。对于这种环境,A的副本会同时出现在多个高速缓存中。由于多个CPU
可并发执行,必须确保在一个高速缓存中对A值的更新马上反映在所有其他A所在的高速缓存中。这称为高速缓存一致性(cache coherency),这通常是硬件问题(在操作系统级别之下处理)
- 1.8.4 I/O系统
- 操作系统的目的之一在于对用户隐藏具体硬件设备的特性。
I /O子系统包括如下几个部分:
·一个包括缓冲、高速缓存和假脱机的内存管理部分。
·通用设备驱动器接口。
·特定硬件设备的驱动程序。