本文若未注明均摘抄自《操作系统精髓与设计原理》:William Stallings著,陈向群、陈渝译,机械工业出版社出版第六版
2 操作系统概述
关键词 | |||
---|---|---|---|
批处理 | 管程 | 物理地址 | 串行处理 |
批处理系统 | 单体内核 | 特权指令 | 对称多处理 |
执行上下文 | 多道批处理系统 | 进程 | 任务 |
中断 | 多道程序设计 | 进程状态 | 线程 |
作业 | 多任务 | 实地址 | 分时 |
作业控制语言 | 多线程 | 常驻监控程序 | 分时系统 |
内核 | 时间片轮转 | 但到程序设计 | 内存管理 |
操作系统 | 调度 | 虚地址 | 微内核 |
2.1 操作系统的目标和功能
操作系统是应用程序和计算机之间的接口,它的目标是方便、有效、可扩展。
2.1.1 作为用户/计算机接口的操作系统
应用程序的用户,即终端用户,通常不需要关心计算机的硬件细节。
如果完全用控制计算机硬件的机器指令开发应用程序,将是非常复杂的任务。为了简化这个任务,操作系统提供了以下几个方面的服务:
- 程序开发:操作系统提供了各种各样的工具和服务,如编辑器和调试器,用于帮助程序员开发程序。不属于操作系统核心的一部分
- 程序运行:操作系统为用户处理调度问题,如运行一个程序前的载入内存,初始化等工作
- I/O设备访问
- 文件访问控制
- 系统访问
- 错误检测和响应:计算机运行时发生的内部外部硬件错误,操作系统应当有所响应以清除错误条件,使其对正在运行的程序影响最小
- 监控和记录
2.1.2 作为资源管理器的操作系统
一台计算机就是一组资源,这些资源用于对数据的移动、存储和处理, 以及对这些功能的控制。操作系统负责管理这些资源。
操作系统也是一种软件,与普通计算机软件原理相同,因此也经常会释放控制,而且必须依赖处理器才能恢复控制。
2.2 操作系统的发展
2.2.1 串行处理
原始的串行系统存在两个影响性能的问题:
- 调度:大多数装置使用一个硬拷贝的登记表预定机器时间,预定1小时但45分钟运行完,就只能闲置15分钟。预定45分钟但运行1小时,解决问题的过程就会被终止。
- 准备时间:一个程序称作“作业”,作业的每一步可能都需要安装或卸载磁带,准备卡片组,准备程序运行需要大量的时间
2.2.2 简单批处理系统
为了克服串行处理的弊端,人们开始开发批处理操作系统,简单批处理方案的中心思想是使用一个称作监控程序的软件。计算机操作人员直接将一批作业放在输入设备上,这个监控程序将自动顺序加载这些作业。
简单的说,这个监控程序对于处理器来说就是一个不断调用其他子程序的