2026/3/17课程博客 操作系统复习整理-简答

操作系统复习 - 简答题

一、死锁相关

1. 死锁产生的原因

  1. 竞争不可抢占资源;

  2. 竞争可消耗资源;

  3. 进程推进顺序不当。

2. 死锁四大必要条件(缺一不可)

  1. 互斥条件:资源排他性使用,一个资源同一时段仅被一个进程占用;

  2. 请求和保持:进程已持有部分资源,又请求新资源,请求阻塞时不释放已有资源;

  3. 不可抢占条件:进程已获取的资源,不能被其他进程强行剥夺,只能自身使用完毕后释放;

  4. 循环等待条件:存在进程-资源环形等待链。

3. 处理死锁的四种方法

  1. 预防死锁:设置限制条件,破坏死锁四大必要条件(一般不破坏互斥条件);

  2. 避免死锁:资源动态分配时,规避系统进入不安全状态;

  3. 检测死锁:允许死锁发生,通过检测程序及时发现死锁;

  4. 解除死锁:配合检测机制,终止进程或剥夺资源,解除死锁状态。

二、虚拟存储器

1. 定义

具备请求调入、置换功能,逻辑上扩充内存容量的存储管理系统;逻辑容量由内存+外存决定,速度接近内存,成本接近外存。

2. 三大特性

多次性、对换性、虚拟性。

三、进程与线程的联系与区别

  1. 进程:资源分配的基本单位,拥有独立资源(CPU、内存、I/O设备),开销大;

  2. 线程:独立运行、独立调度的基本单位,隶属于进程,共享进程资源,几乎无独立系统资源,调度开销极小;

  3. 关系:一个进程可包含多个线程,线程提升系统并发执行效率。

四、分页、分段存储管理对比

1. 分页存储管理

  • 原理:逻辑地址空间划分为固定大小「页」,物理内存划分为等大「页框」,页与页框大小一致;

  • 优点:无外部碎片,内部碎片不超过页大小;

  • 缺点:需要硬件地址变换机构,系统开销、硬件成本增加。

    2. 分段存储管理

  • 原理:按程序逻辑功能划分不同大小的段(代码段、数据段等),以段为单位分配内存;

  • 优点:便于编程、分段共享、分段保护、动态链接、段动态增长;段逻辑独立,易编译、修改;

  • 缺点:产生外部碎片,内存分配复杂,需要更多硬件支持。

    3. 核心区别

  1. 分页对程序员透明,分段对程序员可见;

  2. 分页是一维地址结构,分段是二维地址结构;

  3. 分页面向内存管理,分段面向程序逻辑结构。

五、操作系统四大基本特性

  1. 并发:多事件同一时间间隔交替执行;

  2. 共享:资源被多个并发进程共同使用;

  3. 虚拟:物理实体逻辑虚拟化;

  4. 异步:进程执行走走停停,速度不可预知;
    补充:并发与共享互为存在前提,是操作系统最核心的两大特征。

六、并行与并发的区别

  1. 并发:多个事件同一时间间隔内执行(微观交替,宏观同时),单处理机系统仅支持并发;

  2. 并行:多个事件同一时刻同时执行,多处理机系统可实现并行。

七、单道批处理与多道批处理(多道批处理优缺点)

多道批处理优点

  1. 大幅提升内存、I/O、CPU等硬件资源利用率;

  2. 系统整体吞吐量大。

多道批处理缺点

  1. 作业平均周转时间变长;

  2. 无交互能力,用户无法干预作业运行。

八、进程三大基本状态及转换

三大状态

就绪态、执行态、阻塞态。

状态转换

  1. 就绪 → 执行:进程调度;

  2. 执行 → 就绪:时间片用完;

  3. 执行 → 阻塞:进程发起I/O请求;

  4. 阻塞 → 就绪:I/O操作完成。

拓展:五种状态(新增创建态、终止态)

引入挂起后新增静止就绪、静止阻塞两种状态,支持激活、挂起操作。

九、进程同步(生产者-消费者问题)

  1. 问题描述:生产者生产产品放入缓冲池,消费者从缓冲池取产品消费,需同步互斥;

  2. 信号量设置

  • mutex:互斥信号量,初值=1(保护缓冲池互斥访问);
  • empty:空缓冲区数量,初值=n;
  • full:满缓冲区数量,初值=0;
  1. 执行规则:先申请资源信号量,再申请互斥信号量,使用P、V操作实现同步。

十、动态分区内存分配算法对比

  1. 首次适应(FF):从低地址开始查找空闲分区,算法开销小,综合性能最优;

  2. 最佳适应(BF):优先分配最小适配分区,保留大分区,易产生微小碎片;

  3. 最坏适应(WF):优先分配最大空闲分区,减少小碎片,易耗尽大分区;

  4. 邻近适应(NF):从上一次查找位置开始检索,高地址大分区易被用完。

十一、页面置换算法(虚拟内存)

  1. 最佳置换算法(理想):置换未来最久不使用的页面,仅作理论参考;

  2. FIFO(先进先出):按页面调入顺序置换;

  3. LRU(最近最久未使用):置换当前最长时间未访问的页面,实用性最强。

十二、存储器管理四大功能

内存分配、地址映射、内存保护、内存扩充。

十三、程序运行三阶段

编译 → 链接 → 装入

  1. 编译:源程序编译为目标模块;

  2. 链接:目标模块+函数库整合为装入模块(静态链接、装入时动态链接、运行时动态链接);

  3. 装入:将装入模块加载至内存(绝对装入、静态重定位、动态运行时装入)。

十四、CPU与作业性能指标

  1. CPU利用率 = CPU有效工作时间 / (CPU有效工作时间 + CPU空闲等待时间);

  2. 周转时间:作业从提交到完成的总时间;

  3. 带权周转时间 = 作业周转时间 / 作业服务时间(值≥1)。

十五、提高磁盘I/O速度的途径

  1. 优化文件目录结构;

  2. 选用合理的文件存储结构;

  3. 使用磁盘高速缓存。

posted @ 2026-06-22 20:44  Moonbeamsc  阅读(20)  评论(0)    收藏  举报
返回顶端