版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
操作系统核心知识点归纳总结操作系统作为计算机系统的核心软件,承担着硬件资源管理、软件运行支撑、用户交互抽象的关键角色。从早期的批处理系统到如今的分布式云操作系统,其设计思想与技术实现始终围绕“高效、可靠、易用”的目标演进。本文将从核心概念、资源管理、调度机制、死锁处理等维度,系统归纳操作系统的关键知识点,助力读者构建完整的知识体系。一、操作系统的本质与功能定位操作系统(OperatingSystem,OS)是控制和管理计算机硬件与软件资源,并为用户及应用程序提供交互接口的系统软件。其核心价值体现在三个层面:资源管理者:对CPU、内存、I/O设备、文件等硬件资源进行分配、调度与回收;对进程、线程、信号量等软件抽象资源进行生命周期管理。硬件抽象层:通过文件、进程、虚拟内存等抽象概念,屏蔽硬件的复杂性(如磁盘物理结构、CPU指令差异),为上层提供统一的编程接口。扩展机器(ExtendedMachine):在硬件基础上构建“虚拟计算机”,提升系统的易用性(如图形界面、命令行shell)与可靠性(如内存保护、错误恢复)。二、进程与线程:程序的动态执行体2.1进程的定义与状态变迁进程是程序在操作系统中的一次执行过程,是资源分配的基本单位(包含内存空间、文件句柄、信号量等)。进程的生命周期包含五种典型状态:创建(New):进程被初始化,资源尚未完全分配。就绪(Ready):进程已就绪,等待CPU调度(如等待时间片或高优先级进程让出CPU)。运行(Running):进程占用CPU,执行指令。阻塞(Blocked):进程因等待资源(如I/O完成、锁释放)而暂停,即使有CPU也无法执行。终止(Terminated):进程执行完毕或异常退出,资源被回收。状态转换的核心触发条件:就绪→运行:调度器分配CPU(抢占式/非抢占式调度)。运行→就绪:时间片耗尽(时间片轮转)、高优先级进程就绪(抢占式调度)。运行→阻塞:发起I/O请求、申请未满足的同步资源(如互斥锁)。阻塞→就绪:I/O完成、同步资源可用(如锁被释放)。2.2线程:轻量级的执行单元线程是进程内的独立执行流,是CPU调度的基本单位。与进程相比,线程具有以下特点:资源共享:同一进程内的线程共享地址空间、文件描述符、信号量等资源,减少通信开销。上下文切换快:线程切换仅需保存寄存器、栈指针等少量状态,而进程切换需切换页表、地址空间,开销更大。并发粒度细:多线程可在同一进程内并行执行(如Web服务器的请求处理线程)。线程的实现分为用户级线程(由用户库管理,OS感知不到,切换快但无法利用多核)和内核级线程(由OS调度,可利用多核但切换开销大),现代系统多采用混合线程模型(如Linux的NPTL)。2.3进程间通信(IPC)与同步互斥进程/线程间的协作需解决通信与同步互斥问题:(1)进程间通信方式管道(Pipe):匿名管道(父子进程间)、命名管道(无亲缘关系进程间),基于文件系统的字节流通信。消息队列:进程通过内核的消息队列收发数据,支持多对多通信,有消息大小限制。共享内存:进程映射同一块物理内存,通信效率最高,但需同步机制(如信号量)保证数据一致性。信号量(Semaphore):用于同步(如控制资源数量)和互斥(如二元信号量),通过PV操作实现。套接字(Socket):支持网络通信,可在同一主机(UNIX域套接字)或跨网络的进程间通信。(2)同步互斥机制临界区(CriticalSection):进程内的共享资源访问段,需通过互斥手段保证同一时间只有一个线程进入。互斥锁(Mutex):二元信号量,用于保护临界区,支持“加锁-访问-解锁”的原子操作。条件变量(ConditionVariable):结合互斥锁使用,实现线程的等待/唤醒(如生产者-消费者模型中,消费者等待队列非空)。读写锁(Read-WriteLock):区分读操作(共享)和写操作(互斥),提高读多写少场景的并发效率。三、处理机调度:让CPU高效运转3.1调度的层次与目标操作系统的调度分为三级:作业调度(高级调度):从外存的作业队列中选择作业进入内存,为其创建进程。进程调度(低级调度):从就绪队列中选择进程分配CPU,是最频繁的调度(如时间片轮转)。中级调度(内存调度):将暂时不用的进程换出到外存(交换空间),释放内存,需时再换入。调度的核心目标是平衡系统效率与用户体验:系统角度:提高CPU利用率、吞吐量(单位时间完成的作业数)。用户角度:缩短周转时间(作业从提交到完成的总时间)、响应时间(交互请求的反馈时间)。3.2经典调度算法不同场景需选择不同调度策略,典型算法如下:(1)先来先服务(FCFS)逻辑:按作业/进程到达顺序调度,非抢占式。优点:实现简单,公平性好。缺点:短作业可能被长作业“饿死”(如长作业先到,短作业等待时间极长),平均等待时间长。(2)短作业优先(SJF)/短进程优先(SPF)逻辑:选择估计运行时间最短的作业/进程调度,非抢占式(或抢占式的“最短剩余时间优先”)。优点:理论上平均等待时间最短。缺点:难以精确预测作业长度,长作业易饥饿,可能导致“饥饿”问题。(3)优先级调度逻辑:为进程分配优先级(静态优先级:创建时确定;动态优先级:随运行时间/等待时间调整),优先调度高优先级进程。问题:低优先级进程可能长期等待(饥饿),需通过“老化”机制(提升等待进程的优先级)缓解。(4)时间片轮转(RoundRobin,RR)逻辑:为每个进程分配固定时间片,超时则抢占CPU,调度下一个就绪进程。优点:响应时间短,适合交互系统(如桌面OS)。关键:时间片大小需平衡(太大→响应时间长;太小→上下文切换开销大)。(5)多级反馈队列(MultilevelFeedbackQueue)逻辑:设置多个就绪队列,优先级从高到低,时间片从小到大;进程根据运行行为(如I/O频繁度)在队列间迁移。优势:兼顾交互性(高优先级队列时间片小,响应快)和批处理效率(低优先级队列时间片大,减少切换开销),是现代OS(如Linux、Windows)的主流调度策略。四、内存管理:空间的高效利用与保护4.1内存层次与局部性原理计算机的内存系统呈层次结构:寄存器(纳秒级)→Cache(纳秒级)→主存(微秒级)→磁盘(毫秒级)。程序的执行具有局部性:时间局部性:近期访问的指令/数据,短期内可能再次访问(如循环变量)。空间局部性:访问某地址,附近地址也可能被访问(如数组遍历)。局部性原理是虚拟内存、Cache缓存的设计基础。4.2内存分配方式操作系统需解决“为进程分配内存空间”的问题,主流分配方式分为两类:(1)连续分配单一连续分配:早期单用户系统,内存分为系统区和用户区,无外部碎片,但利用率低。分区分配:固定分区:将内存划分为多个固定大小的分区,进程只能装入大小适配的分区,有内部碎片(进程小于分区)。(2)离散分配分页(Paging):将内存和进程地址空间分为固定大小的“页(Page)”,通过页表映射虚拟页到物理页帧。优点:无外部碎片;缺点:有内部碎片(进程最后一页未填满)。分段(Segmentation):按程序的逻辑段(如代码段、数据段、栈段)划分,段表记录段的基址和长度。优点:无内部碎片,便于共享(如共享库);缺点:有外部碎片。段页式(SegmentedPaging):先分段,再将每段分页,结合两者优势(逻辑清晰+无外部碎片),是现代OS的主流内存管理方式(如Linux、Windows)。4.3虚拟内存:突破物理内存限制虚拟内存通过磁盘交换空间(Swap)扩展进程的地址空间,基于“局部性原理”:进程只需将“活跃”的页保存在内存,其余页可换出到磁盘。(1)实现方式请求分页(DemandPaging):进程启动时仅加载部分页,访问未加载的页时触发缺页中断,由OS从磁盘加载该页。请求分段:类似请求分页,但以段为单位交换,适合大段(如数据库表)的动态加载。(2)页面置换算法当内存满时,需选择“淘汰”的页,算法的目标是降低缺页率:OPT(最优置换):淘汰未来最长时间不被访问的页(理论最优,无法实现)。FIFO(先进先出):淘汰最早进入内存的页,简单但可能出现Belady异常(增加内存时缺页率反而上升)。LRU(最近最少使用):淘汰最长时间未被访问的页,近似实现(如Clock算法)通过维护页的访问位,模拟LRU。LFU(最不常用):淘汰访问次数最少的页,适合访问模式稳定的场景。五、文件系统:数据的持久化管理5.1文件的逻辑与物理结构文件是数据的组织单元,其结构分为两层:(1)逻辑结构无结构文件(流式文件):如二进制文件、文本文件,按字节流存储。有结构文件(记录式文件):由固定/可变长度的记录组成(如数据库表、CSV文件)。(2)物理结构顺序结构:文件数据连续存储在磁盘块中,访问速度快,但扩展困难(需移动后续数据)。索引结构:为文件建立索引表,记录数据块的位置,支持快速随机访问(如Ext4的inode索引),大文件可采用多级索引(如Linux的extents)。5.2文件系统的组成与管理文件系统的核心组件包括:超级块(Superblock):存储文件系统的元数据(总块数、空闲块数、inode数量等)。inode(索引节点):存储文件的属性(权限、大小、修改时间)和数据块指针,文件名通过目录项映射到inode。数据块:存储文件的实际内容,大小通常为4KB(与内存页大小匹配,减少I/O次数)。文件的访问权限通过r(读)、w(写)、x(执行)控制,分为所有者、组、其他用户三个维度(如UNIX的755权限:所有者rwx,组和其他r-x)。5.3日志与一致性保障为防止系统崩溃(如掉电)导致文件系统损坏,现代文件系统(如Ext4、NTFS)采用日志(Journaling)机制:操作前,将“元数据修改”或“数据+元数据修改”记录到日志区。操作完成后,标记日志为“已提交”。系统恢复时,只需重放日志,确保文件系统元数据的一致性。六、死锁:资源竞争的“死循环”6.1死锁的必要条件死锁是多个进程因竞争资源而相互等待的状态,需同时满足四个条件:互斥条件:资源同一时间只能被一个进程占用。占有并等待条件:进程占有资源的同时,等待其他资源。不可剥夺条件:资源只能被进程主动释放,无法被抢占。循环等待条件:进程间形成资源请求的循环链(如A等B的资源,B等A的资源)。6.2死锁的处理策略针对死锁的四个条件,处理策略分为四类:(1)死锁预防通过破坏任一必要条件避免死锁:破坏互斥:如使用共享磁盘(但部分资源无法共享,如打印机)。破坏占有并等待:进程启动时一次性申请所有资源(如银行家算法的预分配)。破坏不可剥夺:允许OS抢占资源(如优先级高的进程抢占低优先级进程的CPU)。破坏循环等待:资源按序分配(如所有进程必须先申请A资源,再申请B资源)。(2)死锁避免动态检查资源分配状态,确保系统处于安全状态(存在一个进程执行序列,使所有进程都能完成)。经典算法是银行家算法:维护资源的“可用量”、“已分配量”、“最大需求量”。当进程申请资源时,模拟分配后的状态,若存在安全序列则分配,否则拒绝。(3)死锁检测与解除检测:定期扫描资源分配图,若存在环则判定为死锁。解除:通过抢占资源(如从死锁进程中强制回收资源)或终止进程(如终止代价最小的进程)打破循环。七、I/O设备管理:硬件与软件的桥梁7.1I/O控制方式CPU与I/O设备的交互方式决定了系统的I/O效率:程序查询:CPU轮询设备状态,直到I/O完成(CPU忙等,效率极低)。中断驱动:设备完成I/O后触发中断,CPU响应中断并处理数据(CPU无需等待,效率提升)。DMA(直接内存访问):DMA控制器直接控制设备与内存的数据传输,仅在传输开始/结束时通知CPU(CPU干预最少,适合大数据量传输)。通道(I/OProcessor):专用的I/O处理器,可管理多个设备,执行I/O指令(如大型机的通道技术)。7.2设备独立性与缓冲管理设备独立性:用户通过“逻辑设备名”(如/dev/sda)访问设备,OS通过设备映射表转换为物理设备,提高可移植性(如更换磁盘不影响应用)。缓冲管理:在内存中设置缓冲区,缓解CPU与I/O设备的速度差异:单缓冲:CPU与I/O交替使用一个缓冲区(如读入数据后CPU处理,期间I/O空闲)。双缓冲:CPU与I/O可并行操作(如I/O写入缓冲1时,CPU处理缓冲2的数据)。循环缓冲/缓冲池:多个缓冲区组成队列,动态分配,适合多设备共享(如数据库的缓冲池)。7.3设备驱动程序设备驱动是硬件与OS的接口,负责:设备初始化:检测设备、配置寄存器。中断处理:响应设备的中断请求(如I/O完成、错误)。数据传输:实现设备与内存的数据读写(如磁盘驱动的扇
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 3企业财务管理与核算规范(标准版)
- 2026年汽车电子系统安全协议
- 企业安全管理组织落实专人负责制度
- 2026标准版离婚协议书
- 金融风控系统操作规范(标准版)
- 企业财务报表分析与决策制定实施手册(标准版)
- 2025年金融风险管理操作手册
- 小升初奥数试卷及答案
- 教育机构学生管理手册
- 旅游服务接待流程标准手册
- 高校区域技术转移转化中心(福建)光电显示、海洋氢能分中心主任招聘2人备考题库及答案详解(考点梳理)
- 航空安保审计培训课件
- 2026四川成都锦江投资发展集团有限责任公司招聘18人备考题库有答案详解
- 2025年全国职业院校技能大赛中职组(母婴照护赛项)考试题库(含答案)
- 2026江苏盐城市阜宁县科技成果转化服务中心选调10人考试参考题库及答案解析
- 托管机构客户投诉处理流程规范
- 2026年及未来5年中国建筑用脚手架行业发展潜力分析及投资方向研究报告
- 银行客户信息安全课件
- (2025)70周岁以上老年人换长久驾照三力测试题库(附答案)
- 金太阳山西省名校三晋联盟2025-2026学年高三上学期12月联合考试语文(26-177C)(含答案)
- (2025)国际指南:压力性损伤溃疡预防和治疗-第4版预防建议解读课件
评论
0/150
提交评论