还剩28页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
操作系统基础与原理第一章操作系统概述什么是操作系统?系统定义桥梁作用资源管理者计软为层计资连应软关键将杂细节隐简操作系统是算机系统中最核心的件,作用户与硬件之间的中间,承担着管理算机源和提操作系统扮演着接硬件与用件的桥梁,复的硬件藏在洁的接口之下,使普通现计础软层现计供服务的重要角色它是代算机不可或缺的基件用户无需了解底实即可使用算机操作系统的主要功能资源管理任务调度调时内资级资对进进调有效度和分配CPU间、存空间和I/O设备,确保系统源得根据优先和源需求多个程行合理度,支持多任务并断内执现时数进过杂调到最优化利用处理器管理包括任务分配与中处理;存管理行行代操作系统能够同运行百个程,通复的则负责驱协调关键执时应涉及地址空间分配与保护;设备管理动程序的与控度算法确保任务优先行,同保持系统的响性制文件系统管理用户接口创储访问组盘提供文件的建、存、和保护机制,织磁空间文件储细节过观层结访问系统抽象了物理存,使用户能够通直的次构数时权数据,同提供了限控制和据完整性保障操作系统的发展历程1950年代批处理系统1970年代个人计算机操作系统须计开最早的操作系统以批处理形式运行任务,程序必排随着微处理器的发明,个人算机始普及CP/M成队执将给员员将为计来依次行用户程序提交操作,由操作早期个人算机的主流操作系统,后MS-DOS在计执资应时软领其装入算机行,系统源利用率低,且响间IBM PC上的成功奠定了微在操作系统域的地位这时诞为来开长IBM的OS/360是一期的代表Unix系统的生也后的源操作系统发展打下基础12341960年代分时系统现代移动与云操作系统为时许脑解决批处理系统的缺点,分系统允多个用户同智能手机和平板电的兴起催生了iOS和Android等移时计资计术共享算机源CTSSCompatible Time-动操作系统;云算技推动了分布式操作系统的发开创时带来轻级Sharing System和MULTICS系统了分操作系展物联网设备的普及也了量操作系统的需资应虚术统的先河,极大提高了源利用率和系统响能力求拟化技使一台物理机器上可运行多个操作系统实例操作系统发展时间轴1969UNIX诞生验开为现础贝尔实室发的UNIX系统成代操作系统的重要基,引入了多用户、多任务处理能力1985Windows
1.0发布软图开脑时微推出形界面操作系统,启了个人电普及的新代1991Linux内核发布内开Linus Torvalds发布了Linux核,催生了源操作系统的蓬勃发展2007iOS/Android出现开时移动操作系统迅速发展,启智能手机代现在云操作系统术为趋势基于容器技的云原生操作系统成新第二章操作系统结构与组成将讨内组本章深入探操作系统的部架构、模块成与工作原理操作系统的组成部分用户空间程序1应命令行工具、系统用系统调用接口2标许应访问提供准化API,允用程序系统服务设备驱动程序3负责硬件设备的控制与通信内核(Kernel)4础操作系统的核心,直接控制硬件,提供基服务现层计层内为层础驱负责代操作系统通常采用分设,每一都有明确的功能定位核作最底模块,直接与硬件交互,提供基功能;设备动程序特定硬件的调为应则终控制;系统用接口用程序提供统一的服务入口;用户空间程序提供最用户可见的功能这层开维时稳种分架构增强了系统的模块化程度,使发和护更加便捷,同保障了系统的安全性和定性内核模式与用户模式内核模式Kernel Mode用户模式User Mode对访问权访问权严•拥有所有硬件的完全限•限受到格限制执权执权•可行任何CPU指令,包括特指令•不能行特指令访问内访问给内•可直接所有存地址空间•只能分配自己的存空间码应•操作系统核心代在此模式下运行•普通用程序在此模式下运行断调过调请•通常由中、异常或系统用触发•需通系统用求系统服务内错误导溃码执错误该稳这现础核模式下程序可能致整个系统崩,因此只有受信任的操作系统代才能在此模式下行用户模式下的程序通常只会影响程序本身,不会危及整个系统的定性,是代操作系统安全机制的重要基系统调用示例调请内调系统用是用户程序求操作系统服务的接口,是用户模式与核模式之间的桥梁以下是常见的系统用分类及示例123文件操作系统调用进程管理系统调用设备控制系统调用open开fork创进进ioctl:打文件并返回文件描述符:建新程(子程):设备控制操作的通用接口read读数缓区exec进执mmap将内:从文件取据到冲:在程中行新程序:文件或设备映射到存write将缓区数写wait进终这调许应进:冲据入文件:等待子程止些用允用程序与硬件设备行交驱开础close关闭exit终当进互,是设备动发的重要基:文件描述符:止前程这调础这调进编为些用构成了文件I/O操作的基,几乎些用是多程程的核心,程序提供级这调创进所有高文件操作都基于些基本用实了建和管理程的能力现操作系统结构示意图层计区内过调进操作系统采用分架构设,清晰分核空间与用户空间,并通系统用接口行通信内组访问权则须过核空间中的件拥有直接硬件的特,而用户空间程序必通系统调请这用求些服务内核空间主要包含进调进获时•程度器-决定哪个程得CPU间内单负责•存管理元-地址空间分配与页面管理储检•文件系统管理器-处理文件存与索驱•设备动程序-控制各种硬件设备络协议栈现络•网-实网通信功能则应库们过内用户空间包含各种用程序、系统和系统服务,它通定义良好的API与核交这计稳互,种隔离设增强了系统的安全性和定性第三章进程与线程管理将详细绍进线调关本章介操作系统中的程概念、程模型、度算法及相管理机制什么是进程?进执资单进独程是程序的行实例,是操作系统分配源的基本位每个程都拥有立的地址资空间和系统源进程的特征独进资单独立性-程是源分配和保护的基本位,拥有立的地址空间态进态执过静态码动性-程是程序的动行程,而非的代进执时并发性-多个程可以并发行,共享处理器间进执对预测调资异步性-程行的相速度不可,取决于度和源分配进程控制块PCB进进状态计数内针每个程都有一个PCB,包含程ID、、程序器、CPU寄存器、存指、打开进数结文件列表等信息,是操作系统管理程的核心据构线程与多线程线程的定义线程与进程的区别线进内执单调单进内线该进资线计数栈线调单进资单程是程的行元,是CPU度的基本位同一程的多个程共享程的地址空间和源,但每个程有自己的程序器、寄存器集合和•程是CPU度的基本位,而程是源分配的基本位进内线码数资空间•同一程的程共享代段、据段和系统源线换开销远进换•程切小于程切线简单内•程间通信更高效(共享存方式)多线程的优势多线程编程模型级线应•提高程序的并发处理能力,充分利用多核处理器用户程由用程序管理,操作系统不感知应应内级线•改善用程序的响性,如后台处理任务核程由操作系统直接支持和管理资换开销•源共享效率高,减少上下文切结级内级线混合模型合用户和核程的优点简计将杂为独线•化程序设,复任务分解立程进程状态与生命周期就绪Ready新建New进获资程已得除CPU外的所有必要源,等待进创资绪队程被建,源分配中,尚未放入就列CPU分配运行Running进获时执程得CPU间,正在行终止Terminated阻塞Blocked进执毕错误终释资程行完或因被止,放所有源进暂时程等待某一事件(如I/O完成)发生,执不能行进状态转换当进时时状态转为绪状态当进请程在其生命周期中会多次在不同之间例如,一个运行中的程间片用完,会从运行就;运行中的程求I/O操时状态转为状态当时进状态转为绪状态作,会从运行阻塞;I/O操作完成,程从阻塞就过维状态进队现对进调操作系统通护不同的程列,实程的有效管理和度进程调度算法先来先服务FCFS时间片轮转RR进绪队顺简单导进为进时时将进队按程到达就列的序分配处理器,公平但可能致短程每个程分配一个间片,间片用完后程移至列末尾,适时过时等待间长合分系统现简单饥饿现应时环•优点实,无象•优点响间快,适合交互境时较换开销时难•缺点平均等待间可能长,不利于短作业•缺点上下文切大,间片长短以确定优先级调度多级反馈队列进级执顺级进获时综将绪进级队进为态调根据程优先决定行序,高优先程优先得CPU间合算法,就程分配到不同优先列,根据程行动级调资整优先•优点可灵活整系统源分配顾进计进导级进饥饿•优点兼交互性程和算密集型程•缺点可能致低优先程现杂数难•缺点实复,参设置度大进程状态转换与调度示意进状态转换图进状态径程清晰展示了程在其生命周期中的变化路,包括绪进创进绪队•新建→就程建完成后入就列绪调选进•就→运行度器中程并分配CPU绪时级进抢•运行→就间片用完,被更高优先程占•运行→阻塞等待某事件(如I/O操作完成)绪进绪队•阻塞→就等待的事件发生后重新入就列终进执毕终•运行→止程行完或被强制止调绪队选择进执不同的度算法会按不同策略从就列中程行来则队•FCFS按先先服务原排选择预执时进•SJF优先估行间最短的程级调选择级进•优先度优先最高的程时执•RR按固定间片轮流行第四章内存管理将讨内资内虚内术本章探操作系统如何管理和分配存源,包括物理存管理与拟存技内存管理的目标有效分配内存保护地址空间扩展内资内进内进访过虚内术为进有效分配存源是存管理的首要目保护程存空间免受其他程非法通拟存技,操作系统能够标内问础过内操作系统需要追踪存使用情况,是系统安全的基通硬件支持程提供比实际物理存更大的地址空进获内内单软这应内确保程能够得所需的存空间,同(如存管理元MMU)和件机制间使得大型用程序能够在有限时内内简开避免存碎片化,最大化存利用(如地址空间隔离),操作系统确保一存的机器上运行,并且化了程序这寻计闲进读进内为员内率包括址方案设、空空间管个程不能取或修改另一个程的发,因程序无需担心实际物理存内恶码错误导杂内细节理和回收机制存容,防止意代或程序致的限制和复的存管理溃系统崩现内还虑匀内访问缓内杂代操作系统存管理需要考多核处理器架构、非均存NUMA、高速存一致性等因素,使存管理变得更加复但也更加高效分区分配与分页机制内存分区分配分页机制固定分区现内术将内虚内分页是代操作系统普遍采用的存管理技,它物理存和拟存都划分为为将内为区区给进现简单固定大小的页面(通常4KB)物理存划分固定大小的分,每个分只能分配一个程实但关键概念导内区灵活性差,可能致部碎片(分中未使用的空间)动态分区虚内单页面Page拟存中的固定大小位内单进内内产页框Frame物理存中的固定大小位根据程实际需要分配不同大小的存块,提高存利用率但可能生外部碎片维虚连续闲满内请页表Page Table护拟页面到物理页框的映射(多个不的小空空间无法足大存求)连续内简内应闲分页的优点包括减少外部碎片、支持非物理存分配、化存保护机首次适分配第一个足够大的空块现虚内应闲制、便于实拟存最佳适分配最小的足够大的空块应闲现级来内最差适分配最大的空块代系统通常采用多页表或反向页表减少页表占用的存空间页面置换算法当内时选择将换盘为腾换选择物理存不足,操作系统需要哪些页面出到磁,新页面出空间页面置算法的直接影响系统性能先进先出FIFO最近最少使用LRU时钟算法Clock简单选择内时选择时访问进换进称为最的算法,在存中停留间最最长间未被的页面行置,FIFO的改版本,也最近未使用算法进换过较时结现简单长的页面行置基于局部性原理,去长间未使用的NRU,合了FIFO的实性和LRU将来较势现维队队页面被使用的可能性小的性能优实护一个列,新页面加入尾,换队现为记录访问时现为访问置首页面实每个页面最后间,或实每个页面设置一个位,形成链维访问顺环队访问时换时将现简单开销使用表护序形列,被置1,查找替0优点实,小换较访问换位页面替优点性能优良,符合程序局部性缺点可能会替出经常使用的页面,存现简单优点实,性能接近LRU在Belady异常(增加物理页框反而增加缺断现杂维开没虑频页中)缺点实复,需要硬件支持,护缺点有完全考页面使用率销大选择换对关现进时脏标记进时合适的页面置算法提高系统性能至重要,代操作系统通常采用改的钟算法或其变种,如增加了页面的改钟算法虚拟内存与交换空间虚拟内存原理交换空间虚内内术为进连续进认为内数时内换盘区储内换虚内组拟存是一种存管理技,它程提供了一个的、私有的地址空间,使程自己拥有足够大的存,而实际上只有部分据需要同存在于物理存中交空间Swap Space是磁上的一块域,用于存从物理存中出的页面,是拟存系统的重要成部分交换空间特点核心思想基于执过倾访问区数独区程序局部性原理-程序在行程中向于集中在某一域的指令和据•通常位于立分或文件中调将当载内访问内按需页-只程序前需要的部分加到物理存•速度比存慢,但比普通文件系统快为内虚内现赖当访问内时断将应盘载内•大小通常物理存的1-2倍拟存的实依于硬件支持MMU和操作系统的页面管理机制程序不在物理存中的页面,会触发缺页中,操作系统相页面从磁加到存当内时写换当这访问时换载内物理存不足,不常用的页面会被入交空间;些页面再次被,会从交空间重新加到物理存过赖换频换换导严这现称为度依交空间(繁的页面入出)会致系统性能重下降,种象抖动Thrashing虚拟内存分页示意图虚内现内将连续虚拟存分页是代操作系统存管理的核心机制,它的拟地址空间映射到不连续内的物理存上地址转换过程虚
1.CPU生成拟地址VA内单将虚为内
2.存管理元MMU拟地址分解页号和页偏移过对应
3.通页表查找的物理页框号项则组内
4.如果页表有效,合物理页框号和页偏移得到物理地址项则断盘载
5.如果页表无效,触发缺页中,操作系统从磁加所需页面性能优化为转换现级提高地址效率,代系统采用多优化转换缓缓项TLB后备冲器-存最近使用的页表级内多页表-减少页表占用的存空间项数大页面支持-减少页表量,提高TLB命中率第五章文件系统将详细绍计现本章介操作系统文件系统的设、实与管理机制文件系统的作用目录结构管理数据持久化存储层录结文件系统提供次化的目构,使用户能够按逻辑关组过录树结数储照系织文件通目构,用户可创录录文件系统使据能够永久保存在非易失性存设关闭数以建、删除和重命名目,在不同目间移动备上,即使系统或重启,据也不会丢失将储节组为文件,有效管理大量文件它物理存设备上的位和字织有意义的单储检访问控制与安全文件元,方便用户存和索信息现权文件系统实文件的限控制机制,确保只权访问过读有授用户才能特定文件通、写执权组组、行限的合,以及所有者、和其区层存储空间管理他用户的分,提供多次的安全保护负责盘闲资源共享文件系统分配和回收磁空间,跟踪空过块,并处理文件分配与删除通有效的空间管进时访问储问题文件系统支持多用户、多程同文件,实理算法,最大化存利用率,减少碎片化现资过锁源共享通机制和并发控制,确保共享访问数的一致性和完整性,防止据破坏常见文件系统类型Windows文件系统Linux文件系统macOS文件系统FAT32ext3HFS+为溃认•文件大小限制4GB•支持日志功能,提高系统崩后恢复速•早期macOS默文件系统数度•兼容性好,适用于可移动设备•支持Unicode文件名和元据权较•兼容ext2,但功能更强大•不支持限控制,安全性低APFS为•最大文件大小2TB为闪储现NTFS•存存优化的代文件系统区ext4•支持大文件和大分•支持快照和强加密级写时•支持更大的文件和文件系统•提供文件安全和加密功能•空间共享和复制功能•提高性能和减少碎片•支持日志功能,提高系统可靠性•提高SSD性能和寿命迟术数损压缩额•延分配技减少据坏风险•支持和配管理针对场进选择对数场不同文件系统不同使用景行了优化,合适的文件系统系统性能和据安全有重要影响跨平台文件系统如exFAT和UDF也在特定景下挥发重要作用文件操作与目录管理文件操作目录管理基本操作目录结构创录单级录层组建分配空间并在目中添加条目目所有文件位于同一次,不支持文件分开将盘载内级录为录打文件从磁加到存,返回文件描述符两目每个用户提供私有目读当读数内缓区树录层结现取从文件前位置取据到存冲形目次构,支持无限嵌套,代系统通用写将内缓区数写环图许录链入存冲的据入文件有向无允文件和目共享,如符号接当读写目录操作定位修改文件前位置(seek操作)关闭释资将缓数写盘放系统源,冲据入磁创录录结录建/删除目管理目构删除从目中移除条目,回收占用空间开关闭读录访问录内高级操作打//取目目容录录搜索目查找特定文件或目创历录树归录结复制/移动在不同位置建文件副本或改变位置遍目递处理整个目构录称权限设置重命名修改文件在目中的名获访问数取/设置属性和修改文件元据过读写执权访问在类Unix系统中,通r、w、行x限控制文件第六章设备管理与输入输出将讨现本章探操作系统如何管理各种硬件设备及实输入输出控制设备驱动程序设备驱动的定义与作用驱动程序的结构驱负责软组驱数传断设备动程序是操作系统中控制特定硬件设备的件件,它在操作系一个典型的动程序包含设备初始化、命令处理、据输和中处理等模内当译将级标请转换为现驱简驱开过驱统核与硬件设备之间充翻器,高的、准化的I/O求特定块代操作系统通常提供设备动框架,化动发程动程序需级规内设备能够理解的低命令序列要遵循特定的接口范,以便与操作系统核正确交互数据传输机制中断处理机制驱现数传编过断当错时设备动实了三种主要的据输方式程I/OPIO通CPU直接控制中是设备通知CPU事件发生的主要方式I/O操作完成或出,设备会数传断驱许传过执内访问断暂当执转执断现据输;中动I/O允CPU在输程中行其他任务;直接存触发中信号,CPU停前行,而行中处理程序代系统中,则绕过现内数传断负责断级断断DMA完全CPU,实设备和存之间的直接据输,大幅提高效中控制器中优先管理和中向量分配,提高中处理效率率驱现问题为们内为稳现趋驱设备动程序是操作系统中最容易出的部分,因它直接与硬件交互并运行在核模式提高系统定性,代操作系统向于使用用户空间设备动内将驱环和微核架构,动程序故障隔离在受保护的境中总结与展望核心地位理论与实践未来趋势现计连习仅论识术继续操作系统是代算机系统的核心,接硬学操作系统不需要掌握理知,更需•云操作系统与容器技发展应软资践励们开专轻级件与用件,管理系统源,保障系统安要动手实鼓同学参与源操作系统•物联网设备用量操作系统兴起稳项编写简单驱尝试内全与定运行深入理解操作系统原理,是目,的动程序,或构建微计础将论识转为•人工智能深度集成到操作系统核掌握算机科学的基型操作系统,理知化实际能力计论践•量子算操作系统的理与实探索领满创论验还应计断们操作系统域充新机会,无是提高性能、增强安全性、改善用户体,是适新型算架构,都需要不探索与突破希望同学习过养问题识创为来贡在学程中培意与新精神,操作系统的未发展献力量。
个人认证
优秀文档
获得点赞 0