操作系统
- 任务: 为用户进程提供一个更好、更简单、更清晰的计算机模型,并管理主要硬件设备。
- 作为扩展机器的操作系统:隐藏硬件,呈现给程序(及程序员)良好、清晰、优雅、一致的抽象。
-
作为资源管理者的操作系统:在相互竞争的程序之间有序地控制对处理器、存储器以及其他I/O接口设备的分配。
- 在时间上复用,cpu运行时间分配;
- 在空间上复用,如内存空间分配;
硬件概要
- 处理器
- 任务:从内存中取出指令并执行。
- 寄存器:
- 通用寄存器:因为访问内存以得到指令或数据,比执行指令费时,所以用它来保存。
- 程序计数器:保存将要取出的下一跳指令的内存地址。
- 堆栈指针:指向内存中当前栈的顶端,该堆栈框架保存了有关输入参数、局部变量和临时变量。
- 程序状态字寄存器:条件码位(?)、CPU优先级、模式(用户态或内核态)。
概念
- 进程
- 本质:正在执行的程序
- 一个挂起的进程包括:进程的地址空间(可执行程序、程序的数据、程序的堆栈)和进程相关资源集,通常包括寄存器及重启进程所需的其他信息。
- 地址空间
- 文件:抽象
- 输入/输出
- 保护
- shell
- 个体重复系统发育:
- 技术的变化会把一些“过时概念”带回来,重要的是理解为什么一个概念会过时,而什么样的环境的变化又会启用“过时概念”。
系统调用
操作系统结构
- 单体系统
- 层次式系统
- 微内核
- 客户机-服务器模式
- 虚拟机