课程
5033 字
约 15 分钟
大三上
os-short-answers
操作系统notes·更新于 2026-09-15
1. 操作系统的四个基本特征
操作系统的四个基本特征是:并发、共享、虚拟、异步。其中并发和共享是两个最基本的特征,二者互为存在条件。
- 并发 (Concurrency):
- 指两个或多个事件在同一时间间隔内发生。
- 在一段时间内同时存在多道运行的程序(进程)。
- 并发执行能有效改善系统资源利用率,但使系统复杂化,需要对活动进行控制和管理。
- 共享 (Sharing):
- 计算机系统中的资源可供内存中多个并发的进程同时使用。
- 资源不再为某道程序所独占。
- 虚拟 (Virtual):
- 将一个物理实体变为若干个逻辑上的实体。
- 是操作系统管理系统资源的重要手段,可提高资源利用率。
- 异步 (Asynchronism):
- 也叫不确定性,指进程以人们不可预知的速度向前推进。
- 进程的执行时间、顺序、速度和完成时间都是不可预知的。
2. 微内核操作系统
- 提高了系统的可拓展性:采用 C/S 模式,许多功能由相对独立的服务器实现,扩展时只需增加专门的服务器。
- 增强了系统的可靠性:内核精简,正确性易保证;服务器间采用通信机制,单点出错不影响其他。
- 可移植性强:能较容易地运行在不同的计算机硬件平台上。
- 提供了对分布式系统的支持:采用消息传递机制,支持分布式系统和网络系统。
- 融入了面向对象技术:封装、继承等机制有利于提高系统的正确性、易修改性和易扩展性。
- 运行效率低:完成一次用户请求需要利用消息实现多次交互,并多次进行用户/内核模式的上下文切换。
3. 三种操作系统的特点
| 类型 | 特点/优点 | 缺点/适用场景 |
|---|---|---|
| 批处理操作系统 | 特点:脱机、多道、成批处理。 优点:系统利用率高,系统吞吐量大。 | 缺点:平均周转时间长,无交互能力。 分为单道(自动、顺序、单道) 和多道(调度、无序、多道)。 |
| 分时操作系统 | 特点:多路性、独立性、 及时性、交互性。 | 缺点:系统开销大。 适合小的不成熟的作业。 |
| 实时操作系统 | 特点:多路性、独立性、 及时性、交互性、高可靠性。 | 重点:必须在规定时间内响应外部事件, 系统必须安全可靠(如航空订票、生产控制)。 |
4. 进程与程序
- 动态性:进程是动态的(程序的执行),程序是静态的(有序代码的集合)。
- 持久性:进程是暂时的(状态变化过程),程序是永久的(可长久保存)。
- 组成:进程包括数据段、程序段及 PCB(进程控制块),而程序组成不同。
- 对应关系:一个程序可对应多个进程(如多开 QQ),一个进程也可通过调用关系包含多个程序。
5. 同步与互斥
- 引入原因:协调进程之间的相互制约关系。
- 同步 (直接制约关系):
- 为完成某种任务而建立的两个或多个进程,需要协调工作次序而产生的制约关系。
- 通俗理解:只有运行了 A 才能运行 B。
- 互斥 (间接制约关系):
- 当一个进程进入临界区使用临界资源时,另一个进程必须等待。
- 通俗理解:运行了 A 就不能运行 B。
临界区互斥的四个原则:
- 空闲让进:临界区空闲时,允许一个进程进入。
- 忙则等待:临界区已有进程时,其他进程必须等待。
- 有限等待:进程要在有限时间内退出临界区,避免死等。
- 让权等待:不能进入临界区时,应让出 CPU,避免忙等。
6. 死锁 (Deadlock)
产生死锁的四个必要条件
- 互斥条件:资源在一段时间内只能被一个进程排它性使用。
- 请求和保持条件:进程保持了至少一个资源,但又提出新请求并被阻塞,且不释放已获得资源。
- 不可抢占条件:已获得的资源未使用完之前不能被抢占。
- 循环等待条件:存在一个进程-资源的循环链(如 等 ,… 等 )。
死锁的处理方法
- 预防死锁:破坏四个必要条件(通常是破坏请求和保持、不剥夺、循环等待条件,互斥较难破坏)。
- 避免死锁:安全状态、银行家算法。
- 检测死锁:利用死锁定理。
- 解除死锁:资源剥夺法、撤销进程法、进程回退法。
补充公式:死锁计算
进程数小于资源数,则不会发生死锁的公式:
- 如果可以整除: 。
- 如果不可以整除: 。
- 例:。
7. 假脱机技术 (Spooling) - 打印机共享
处理过程:
- 接收请求:当多个用户进程提出打印请求时,假脱机管理进程不直接分配打印机,而是做两件事:
- 在磁盘输出井申请空闲缓冲区,存入要打印的数据。
- 申请一张打印请求表,填入信息并挂到假脱机文件队列上。
- 执行打印:当打印机空闲时,输出进程从队列队头取出一张请求表,将数据从输出井传送到输出缓冲区,再送到打印机打印。
8. 分页存储管理 vs 分段存储管理
| 比较维度 | 分页存储管理 | 分段存储管理 |
|---|---|---|
| 单位性质 | 物理单位。为了实现离散分配,消减内存外零头。 | 逻辑单位。含有一组相对完整的信息,更好满足用户需求。 |
| 大小 | 固定,由系统决定。硬件实现。 | 不固定,由用户编写的程序决定(编译时划分)。 |
| 地址空间 | 一维(单一线性地址空间)。 | 二维(需给出段名 + 段内地址)。 |
| 权限 | 读、写。 | 读、写、执行。 |
9. 内存访问与地址计算习题
习题 1:内存访问次数
题目:无快表(TLB)的基本页式存储管理中,每次从主存中取指令或取操作数,至少要 2 次访问主存。
-
解析:
- 第一次访问主存中的页表,获取物理地址。
- 第二次根据物理地址访问主存中的数据或指令。
- 注:如果有快表(TLB),且命中,则只需要访问 1 次主存。
习题 2:页面地址转换计算
题目:有一系统采用页式存储管理,作业大小 8KB,页大小 2KB。
依次装入内存的第 7、9、10、5 块。
试将虚拟地址 7145 转换成内存地址 7575。
解题步骤:
-
已知条件:
- 页大小 。
- 虚拟地址 。
- 页表映射关系(隐含在题目描述中):
- 页号 0 -> 块号 7
- 页号 1 -> 块号 9
- 页号 2 -> 块号 10
- 页号 3 -> 块号 5
- (注:题目中“依次装入”通常暗示页号 0, 1, 2, 3 分别对应这些块号)
-
计算页号 (P) 和页内偏移 (W):
- (取整)。
- 。
-
查找对应块号:
- 页号 3 对应的块号是 5。
-
计算物理地址:
- 。
- (注:原文计算式写为
5*2048+1001-11241,结果正确)
答案:虚地址 7145 的内存地址是 11241。
10. 文件检索与物理结构
检索方法
- 索引文件:利用关键字进行折半查找 -> 找到表项(指针) -> 访问记录。
- 索引顺序文件:利用关键字检索索引表 -> 找到记录组第一个表项 -> 顺序查找主文件。
文件的物理结构
- 连续组织方式(顺序文件结构):分配连续磁盘空间。
- 链接组织方式(链接式文件结构):分配不连续空间,通过指针链接。
- 索引组织方式(索引式文件结构):建立索引表管理盘块。
11. 磁盘空间管理:位示图法 (Bitmap)
-
分配过程:
- 顺序扫描位示图,找到 的空闲位。
- 计算盘块号 ( 为每行位数)。
- 将位示图对应位置为 1。
-
回收过程:
- 根据盘块号 计算行号和列号。
- 。
- 。
- 修改位示图:令 。
- 根据盘块号 计算行号和列号。













