资讯详情

资讯详情

操作系统期末复习:进程调度、存储管理与信号量考点精讲

简介面向计算机相关专业大学生的操作系统期末复习笔记用于考前系统梳理核心考点与查漏补缺。内容覆盖操作系统目标与发展历程、四大基本特性、主要功能以及进程管理中的前趋图、程序顺序/并发执行特征、进程状态转换与PCB、信号量机制与同步原语、管程、线程概念并延伸至处理机调度的三个层次知识点组织成条理清晰的复习脉络。资源包为单个docx文档体积约1.17MB便于按章节翻阅与打印。已有777人学习下载。笔记内还提炼了易混淆对比与关键细节如整型/记录型/AND型信号量的优缺点、互斥与同步实现步骤等适合期末阶段快速记忆与理解。整体信息密度高是一份实用的期末冲刺材料。1. 操作系统期末复习笔记既讲概念又给算法的考点清单操作系统期末复习笔记很多人考前临时找找到的要么是翻录课件的大杂烩要么是只有标题没有展开的提纲。这份笔记不太一样它把从操作系统的目标、基本特性到进程管理、处理机调度、存储管理、虚拟存储和 I/O 控制的所有考点串成一条线每一章都对应着期末卷子上的题型。期末冲刺、考研第一轮复习都能直接用适合时间紧、想知道“背什么、算什么、怎么答”的人。下面的内容就是我逐章过完这份笔记后帮你拆好的复习主线。2. 进程与同步把零散考点串成一条主线进程这一章是操作系统课程的绝对重心。期末卷子里名词解释、简答、计算题几乎都从这里出。复习时如果把“进程控制”和“进程同步”分段背很容易背了后面忘了前面。我翻开这份笔记时先是被它的结构带着走了一遍进程特征 → 状态转换 → PCB → 内核 → 同步机制 → 经典问题。这个顺序本身就是一份不错的复习路线图。2.1 进程状态转换与 PCB从三态到五态的演进逻辑先把进程的基本特征记住动态性、并发性、独立性、异步性。这四个特征里异步性考得最多因为共享资源导致进程总是“停停走走”以不可预知的速度向前推进这是常考的一句话解释题。状态转换是必考的画图题。三态模型只有就绪态、执行态、阻塞态就绪态进程已获得除处理机外的所有资源等待调度。执行态进程正在处理机上运行。阻塞态进程因等待某事件而暂停即使分配处理机也无法运行。三态之间的转换关系要分清就绪 → 执行进程调度选中该进程。执行 → 就绪时间片用完或被更高优先级进程抢占。执行 → 阻塞请求资源、等待 I/O 或等待某个事件。阻塞 → 就绪所等待的事件发生进程被唤醒注意这一步不经过执行态。在此基础上增加创建状态和终止状态就是五态模型。创建态表示进程正在被创建尚未放入就绪队列终止态表示进程已执行完或被迫结束等待系统回收资源。PCB 的四个作用可以当成一个简答模板来背作为独立运行基本单位的标志。能实现间断性运行方式切换进程其实就是切换 PCB。提供进程管理所需要的信息。提供进程调度所需要的信息并为进程同步与通信提供支撑。另外操作系统内核常驻内存的原因也要能说出来一是保护内核不允许用户程序随意修改二是提高效率中断处理、时钟处理、原语这些高频功能不用反复从外存调入。支撑功能对应中断处理、时钟处理、原语操作资源管理功能对应进程管理、存储器管理、设备管理。2.2 信号量机制四种方案彼此的取舍期末对信号量的考查重点在“比较四种信号量的差别”。从整型信号量到记录型信号量再到 AND 型信号量、信号量集每前进一步都在修补前一个方案的缺陷。信号量类型核心思想优点局限整型信号量用整型变量表示资源数量P/V 操作原子执行实现简单能完成互斥忙等不满足“让权等待”记录型信号量结构体包含 value 和阻塞队列value 为负时绝对值表示阻塞进程数真正实现让权等待一次只能分配一类资源AND 型信号量一次申请进程所需的全部资源任一不足则等待避免死锁资源粒度仍为 1效率偏低信号量集一次可申请多种资源并指定数量可设资源下限灵活满足“一次多个”需求参数设置复杂理解成本高记忆这条线可以这样走整型信号量解决了互斥问题但让 CPU 空转记录型信号量引入阻塞队列解决了让权等待AND 型信号量解决多个资源的分配问题信号量集再把“一次一个”扩展成“一次一批”。还要注意wait(S)、signal(S) 通常称为 P、V 操作。原语是“一气呵成、不可中断”的程序段由关中断/开中断指令实现。期末喜欢考的一句话是如果 S.value 初始值设为 1那么记录型信号量就变成了互斥信号量。2.3 用信号量实现互斥、同步与前驱关系这部分解题步骤固定值得逐条记下来。互斥的四个标准步骤找临界资源划定临界区。比如打印机这种一次只能给一个进程用的资源访问它的代码就是临界区。设置互斥信号量 mutex初值设为 1。在临界区之前执行 wait(mutex)申请资源。在临界区之后执行 signal(mutex)释放资源。同步的实现要牢记“一前一后”找到必须保证顺序的两个操作例如“缓冲数据写入后”和“消费者读取前”。设置同步信号量 s初值为 0。在前操作之后执行 signal(s)表示事件完成。在后操作之前执行 wait(s)等待前操作完成。前驱关系本质上是多组同步关系的组合。笔记里强调得很好每一对前驱关系都要单独设置一个同步变量前操作之后对该变量做 V后操作之前做 P。做题时先把前驱图画成若干条“边”每条边对应一个信号量这样就不会漏。生产者—消费者问题、哲学家进餐问题、读者—写者问题期末不一定考原题但会换场景考察信号量分析。我一般会只看这三个经典问题把互斥信号量和同步信号量的设置位置复述一遍基本能覆盖大多数变体。线程作为比进程更小的基本单位让一个进程内可以并发处理多个任务往往是进程概念题的最后一个小问别漏了。3. 调度与死锁计算题的解题框架处理机调度这一章期末一般出两种题一道概念简答调度层次、算法选型一道计算时间片轮转、银行家算法。复习前提是分清“三个调度层次”和“四个考核指标”再把算法按批处理和交互式分开记。3.1 调度层次与基本调度算法三个层次的名称考点高级调度也就是作业调度负责把外存中的作业调入内存到底选哪个作业进入内存由它决定。中级调度也就是内存调度把暂不运行的进程换到外存再把满足条件的进程换入内存提升内存利用率和系统吞吐量。低级调度也就是进程调度决定就绪队列里哪个进程获得处理机发生频率最高。高级调度和中级调度容易混差别在对象高级调度处理的是“作业”中级调度处理的是“进程”。可以记成一句话高级管作业中级管进程低级管 CPU。调度算法可以按系统类型分成两组。批处理系统常考 FCFS、SJF、HRRN交互式系统常考时间片轮转、优先级调度。算法核心思想优点局限典型适用FCFS按到达顺序调度公平、实现简单交互性差长作业拖短作业早期批处理系统SJF运行时间越短越优先平均等待时间、平均周转时间最短长作业可能饥饿早期批处理系统HRRN响应比 (等待时间 运行时间) / 运行时间兼顾长短作业需要动态计算响应比批处理改进时间片轮转就绪队列队头依次执行一个时间片公平、响应快时间片大小直接影响性能分时系统优先级调度优先级最高的进程先执行区分任务紧急程度低优先级可能饥饿实时系统时间片轮转的计算是复习重点。时间片太大算法退化成先来先服务时间片太小进程切换过于频繁系统花大量时间在处理切换上。做题时若给你进程到达时间、执行时间和时间片大小必须画甘特图按时间片逐格推进并注意新到达的进程如何进入就绪队列队尾。3.2 死锁的四个必要条件与处理策略死锁的四个必要条件按顺序背互斥条件临界资源一次只能被一个进程占用。请求和保持条件进程手持资源又申请新资源新资源被占用时进程阻塞但不会释放已占资源。不可抢占条件资源只能由持有者主动释放其他进程不能强行夺走。循环等待条件进程与资源之间形成环形等待链。处理死锁的方法分四种期末常把“预防”和“避免”放在一起混淆预防破坏四个必要条件之一属于事前处理。比如要求进程一次性申请所有资源破坏请求和保持条件资源可抢占破坏不可抢占条件按序申请资源破坏循环等待条件。避免在分配过程中动态判断防止系统进入不安全状态典型代表是银行家算法。检测与解除允许死锁发生运行时定期检测发现死锁后强制终止部分或全部死锁进程并剥夺资源。三种处理策略的区分词是预防靠“规则”避免靠“算法”检测与解除靠“扫描”。另外一个考点是“不安全状态”与“死锁”的差别系统处于安全状态则一定不会死锁处于不安全状态则可能发生死锁但并非必然发生死锁。3.3 银行家算法安全判定四步走银行家算法期末出计算题的概率很高步骤固定按顺序做很容易拿分。第一步判断请求是否在进程需求范围内。如果 Request_i 大于 Need_i说明该进程申请的资源超过自身最大需求直接拒绝。第二步判断请求是否在系统可用范围内。如果 Request_i 大于 Available说明系统剩余资源不足进程需要等待。第三步尝试分配更新三个数组Available Available - Request_i Allocation_i Allocation_i Request_i Need_i Need_i - Request_i第四步运行安全性算法。从进程集合中找一个进程其 Need 小于等于当前 Work初始时 Work Available。假设该进程执行完回收它的 Allocation继续找下一个。如果能找到一条使所有进程都执行完的序列系统处于安全状态否则撤销试分配恢复原值。这道题最常见的丢分点有两个一是第四步忘记“回收已分配资源”这个环节导致找不到安全序列二是只写“安全”两个字没有写出安全序列本身。答题时无论题目是否要求都建议把安全序列完整列出来至少能保证步骤分。4. 存储管理与 I/O分页、分段、置换算法与设备控制存储管理是概念密度最高的一章。连续分配、分页、分段、虚拟存储、页面置换每个知识点都能单独出题。我的复习方法是先抓住“逻辑地址怎么变成物理地址”这条主线再把各种分配方式放进一张对比表里反复看。4.1 装入、链接与地址变换程序要运行必须先编译、链接、装入。装入方式有三种绝对装入、可重定位装入、动态运行时装入。可重定位装入是在装入时一次性完成逻辑地址到物理地址的转换叫静态重定位动态运行时装入则延迟到指令真正执行时才转换所以需要重定位寄存器或页表等硬件结构支撑。链接方式也有三种静态链接、装入时动态链接、运行时动态链接。记忆点静态链接一次搞定装入时动态链接是“边装边链”运行时动态链接是“要用才链”。分页存储管理的地址变换是必考点。计算逻辑地址的页号和页内偏移量页号 逻辑地址 / 页面长度页内偏移量 逻辑地址 % 页面长度这里有一个高频坑如果题目给出页面大小 1KB逻辑地址是十进制除法必须用 1024不能用 1000。我见过太多同学在这里翻车算出来的页号正确但页内偏移量差了一大截。地址变换机构分两种。没有快表时页表存放在内存中每次读取数据要访问两次内存第一次查页表找到物理块号第二次在物理地址中取数据。有快表时先查快表命中就直接访问物理地址未命中再查页表并更新快表。后面的有效访问时间计算就是围绕这个流程展开的。4.2 连续分配、分页、分段从“必须连续”到“允许离散”连续分配方式包括单一连续分配、固定分区分配、动态分区分配、动态可重定位分区分配。动态分区分配里的四种算法要能说清排序逻辑首次适应算法 FF从链首开始找到第一个大小满足的空闲分区实现简单但链首容易积累碎片。循环首次适应算法 NF每次从上次分配位置继续往后找碎片分布更均匀。最佳适应算法 BF空闲分区按容量升序排序选最小满足分区产生的碎片最小但可能留下很多难以利用的小碎片。最坏适应算法 WF空闲分区按容量降序排序优先用最大分区剩下的分区都比较小不利于后续大作业。动态可重定位分区分配的关键在于“紧凑”把已运行的作业移动到一起将散落的空闲分区合并为大分区代价是需要动态重定位寄存器记录程序的新起始地址。分页和分段的对比是期末高频简答题。比较维度分页分段单位性质页是物理单位段是逻辑单位大小固定由系统决定不固定由用户程序逻辑决定地址空间一维线性二维主要目的提高内存利用率方便分配方便用户编程、共享、保护碎片内部碎片外部碎片记忆口诀分页是系统视角分段是用户视角。分段方式下段间离散、段内连续既满足离散分配又保持逻辑意义的完整所以容易实现段的共享和回收。4.3 页面置换算法与缺页处理虚拟存储器的实现依赖局部性原理时间局部性指的是某条指令执行后短时间内很可能再次执行空间局部性指的是访问某个存储单元后附近单元很快也会被访问。这两个名词解释基本年年有。页面置换算法的考查方式是“给一个访问序列算缺页次数”。四种算法要熟算法淘汰策略实现难度常考特征OPT淘汰未来最长时间不用的页不可实现作为其他算法的评价基准FIFO淘汰驻留内存时间最长的页简单可能出现 Belady 异常LRU淘汰最久未使用的页需要硬件支持用寄存器或栈实现Clock淘汰访问位为 0 的页简单改进型还需考虑修改位计算缺页次数的通用步骤从头开始模拟页框初始为空时每次装入新页面都算一次缺页。FIFO 用队列操作LRU 用栈操作。LRU 最常犯的错是页面被再次访问时要把它提到栈顶漏了这个步骤访问序列后半段基本全算错。笔记里还提到页面缓冲算法 PBA在内存中设置空闲页面链表和修改页面链表显著降低页面换进换出的频率这个适合作为名词解释准备。4.4 I/O 控制方式与 SPOOLingI/O 控制方式的演进正好体现“如何减少 CPU 干预”的过程。方式CPU 参与程度特点轮询的可编程 I/O 方式全程等待最简单的控制方式也最浪费 CPU中断驱动的可编程 I/O 方式发起 I/O 后做别的设备完成时发中断提高 CPU 利用率直接存储器访问方式 DMACPU 只干预数据块开始和结束块内传输由 DMA 控制器负责每个数据块 CPU 参与一次I/O 通道控制方式通道执行一组 I/O 指令CPU 只管宏观控制基本解放 CPU支持复杂 I/O 任务SPOOLing 假脱机技术是“把独占设备改造成共享设备”的经典案例。它的核心组成有四部分输入井和输出井在外存上模拟脱机输入输出时的磁盘收容输入输出数据。输入缓冲区和输出缓冲区在内存中暂存数据缓和 CPU 与磁盘速度不匹配。输入进程和输出进程模拟脱机输入输出时的外围控制机。井管理程序控制作业与磁盘井之间的信息交换。假脱机打印机系统是最常考的例子。用户进程发出打印请求时假脱机管理进程在磁盘缓冲区申请空闲盘块暂存打印数据同时申请一张用户请求打印表挂到假脱机文件队列真正打印由假脱机打印进程完成按队列依次处理。这样做的好处是一台物理打印机可以虚拟成多台逻辑打印机多用户同时提交打印任务也不会互相阻塞。5. 避坑与常见问题期末复习中最容易丢分的几组概念复习笔记最大的价值不是把概念抄一遍而是把容易踩坑的地方标出来。我按“现象 → 原因 → 解决”把高频丢分点整理成四条考前看一遍比多做两套卷子更有用。5.1 并发与并行表述一换就丢分现象简答题写“并发就是多个进程同时运行”结果被扣分或者把并行描述成“宏观上同时进行”完全说反。原因没有区分“同一时间间隔”和“同一时刻”。并发是在一个时间间隔内多个事件交替推进宏观上看似同时微观上仍是顺序执行并行才是多个事件在同一时刻真正同时发生。单处理机只能并发不能并行多核或多处理机系统才谈得上并行。解决答题时优先用“同一时间间隔”和“同一时刻”两个词来区分再补一句“并发通过引入进程实现并行依赖多处理机”。5.2 死锁预防、避免、检测与解除四个概念对号入座现象把银行家算法归类到死锁预防把“破坏循环等待”归类到死锁避免简答题四个术语混在一起写。原因没有从时间维度上区分这四种处理策略。预防是事前处理在进程运行前就通过破坏必要条件来杜绝死锁避免是事中处理在资源分配过程中动态判断不允许系统进入不安全状态检测与解除是事后处理允许死锁发生运行时发现后再终止进程或剥夺资源。解决记三个时间锚点事前 → 预防事中 → 避免事后 → 检测与解除。预防的关键词是“破坏条件”避免的关键词是“银行家算法”检测的关键词是“资源分配图”。5.3 EAT 公式命中率权重容易漏现象计算有效访问时间时有快表的情况下直接写成 EAT 查快表时间 查页表时间 访问内存时间完全没乘命中率。原因把“命中率”当成必然命中忽略了未命中的分支。快表命中和未命中访问内存的次数完全不同。解决先写加权模板再代入数值。设命中率为 a命中时查快表时间 访问内存时间。未命中时查快表时间 查页表时间 更新快表时间 访问内存时间。EAT a × 命中时的访问时间 (1 - a) × 未命中时的访问时间。如果题目进一步讨论页面不在内存的情况返回时还要加上缺页中断处理时间和更新页表的时间。考试通常只会考到快表和页表两层但笔记里把“不在内存”的完整链路也列出来了理解这层有助于做综合题。5.4 分页与分段物理单位和逻辑单位记反现象选择题里问“分页的页属于什么单位”选项给了“逻辑单位”结果选错。原因把分页和分段的出发点搞混了。分页是为了满足系统内存管理的需要页的大小固定且由系统决定所以页是物理单位分段是用户编程时按逻辑意义划分的所以段是逻辑单位。解决记住一句话“页是给内存看的段是给用户看的。”由此可以推导出碎片类型分页产生内部碎片分段产生外部碎片分页的地质空间是一维线性分段是二维分段方便共享和保护分页便于内存分配。只要把“系统的物理视角”和“用户的逻辑视角”区分开这道题就不容易错。5.5 信号量初值设置同步和互斥不要搞反现象在生产者—消费者问题里把互斥信号量初值写成 0把同步信号量初值写成 1结果分析时发现缓冲区和锁的逻辑全乱。原因互斥信号量和同步信号量的初值含义完全不同。互斥要求初值为 1表示临界资源当前可用一次只能进去一个同步信号量的初值取决于资源初始数量比如空缓冲区有 N 个同步信号量初值就是 N满缓冲区为 0。解决做题时先标出“临界资源”和“顺序关系”两类对象。临界资源用互斥信号量初值固定为 1顺序关系用同步信号量初值根据资源初态设置。这个习惯能帮你避免一半以上的信号量错误。6. 把笔记变成自己的——考前三天的高效过法无论是期末突击还是考研冲刺拿到这份笔记后我建议用“三天三遍”的节奏过完。第一天通读加画表。不要逐字背诵而是把笔记里的表格自己抄一遍包括四种信号量机制表、五个调度算法表、三种地址分配方式对比表。抄表格时把关键参数单独写在纸片上比如互斥信号量初值为 1、同步信号量初值为 0、EAT 的加权模板。第二天计算题专项。把银行家算法、时间片轮转模拟、EAT 计算、页面置换四个题型各做两遍。做法是像考试一样独立推导卡住的地方再回头看笔记重点理解“卡在哪一步”而不是直接背答案。第三天只翻目录回忆。把每一章的大标题遮住只看小节标题在纸上写出关键词。写不出来的知识点就是没内化的当晚优先补。这个方法对概念密度高的存储管理章节尤其有效。最后一个技巧把笔记里所有“最主要的特点”“最基本的特性”这类字眼圈出来它们几乎都是简答题的得分点。比如“方便性和有效性是操作系统最重要的目标”“并发和共享是操作系统最基本的特性”“分时系统最主要的特点是及时响应”“实时系统更注重在截止时间前完成处理”。期末卷子的问法有时就是直接翻原文这样的句子背下来就是送分题。还有一个容易被忽略的细节操作系统的发展历程也是一道简答题。从人工操作、单道批处理、多道批处理、分时系统到实时系统每一阶段的关键特点其实都浓缩在笔记对应的那句“最主要的特点”里。把每个阶段用一个词概括比如单道“独占”、多道“CPU 不空闲”、分时“及时响应”、实时“截止时间”答题时先给关键词再适当展开比死背一大段更稳。这样做的好处是你背的不是笔记里的某一段文字而是由关键词串起的知识网络。考试时一旦遇到模糊表述可以依靠“这个概念属于哪一章、哪个分类”来定位答案。从那以后我每次考前复习都会强制自己走一遍“通读画表 → 计算专项 → 目录回忆”的流程不追求背完整段只求每个知识点能用自己的话讲清楚。希望这份笔记也能帮到你考场上少翻车、多拿分。本文还有配套的精品资源点击获取
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →