1、1 1/1212第一章 操作系统简介第一章 操作系统简介知识点名称知识点名称内容内容什么是操作系统什么是操作系统1.操作系统(OS)是一种复杂的系统软件。2.功能:(1)管理计算机硬件和软件资源(2)提供计算机用户与计算机硬件之间的接口(3)为应用程序的运行提供环境。操作系统的发展操作系统的发展1.无操作系统因等待人工操作暂停运行,这样一种不能连续自动工作的状态。2.单道批处理系统特点:(1)自动性(2)顺序性(3)单道性优点:减少了等待人工操作的时间。缺点:CPU 资源不能得到充分利用。3.多道程序系统多道批处理系统特点:(1)多道性(2)无序性(3)调度性(4)复杂性优点:能够提高 CPU
2、、内存和 I/O 设备的利用率和系统吞吐量。缺点:系统平均周转时间长,缺乏交互能力。分时操作系统特点:(1)多路性(2)独立性(3)及时性(4)交互性优点: 向用户提供了人机交互的方便性, 使多个用户可以通过不同的终端共享主机。4.实时操作系统特点:(1)多路性(2)独立性(3)及时性(4)交互性(5)可靠性用于实时控制和实时信息处理领域。优点:比分时系统要求有更高的可靠性。嵌入式操作系统嵌入式操作系统1.特征:小巧、实时性、可装卸、代码固化,弱交互性、强稳定性、接口统一、低能耗。操作系统的特征操作系统的特征1.并发两个或多个事件在同一时间间隔内发生,多道程序系统可以实现并发执行。2.共享指系
3、统中的资源可供内存中多个并发执行的进程共同使用。资源共享有两种方式,即互斥共享和同时共享。3.虚拟指通过某种技术把一个物理实体变成若干逻辑上的对应物。4.异步性进程以不可预知的速度向前推进。操作系统的主要功能操作系统的主要功能1.内存管理(目的:提高内存的利用率):内存分配、内存保护、地址映射(将逻辑地址变换为物理地址)、内存扩充;2.进程管理:包括进程的描述与组织、进程控制、进程同步、进程通信及进程调度。3.文件管理:文件的读、写管理和存取控制。4.设备管理:主要完成用户的 I/O 请求,为用户分配 I/O 设备。应具有以下功能:(1)缓冲管理(2)设备分配(3)设备处理(4)设备独立性和虚
4、拟设备。5.提供用户接口:操作系统向最终用户提供命令行和图形用户接口,向程序员提供应用程序与操作系统之间的接口即系统调用(程序接口)。命令接口又可分为联机用户接口和脱机用户接口。操作系统的体系结构操作系统的体系结构1.发展历程包括:(1)简单的监控程序模型(2)单体结构模型(具有单体内核结构的典型操作系统有:UNIX 系统、MS-DOS、Linux、MacOSX 和 BSD 等系统)(3)层次结构模型:最经典的例子是 Dijkstra 的 THE 系统。(4)客户/服务器模型与微内核结构(5)动态可扩展结构模型2.微内核结构的操作系统的代表有:(1)微软公司研制的 WindowsNT;(2)我
5、国自行研制的COS-IXV2.3;(3)WindRiver 公司研制的 Vxworks;(4)卡内基梅隆大学研制的 Mach 等。自考押题 vx 344647 公众号/小程序 顺通考试资料2 2/1212指令周期指令周期1.一个单一指令需要的处理称为指令周期。2.一个指令周期可以划分成两个步骤:取指周期和执行周期。取指令和执取指令和执行指令行指令1.取指令:在每个指令周期开始时,处理器从存储器中取一条指令。在典型的固定长度指令的处理器中,程序计数器(PC)保存有下一次要取的指令的地址。2.执行指令:取到的指令被放置在处理器的指令寄存器(IR)中。指令中包含确定处理器将要采取动作的位,处理器解释
6、指令并执行要求的动作。第二章第二章 进程管理进程管理知识点名称知识点名称内容内容程序的顺序程序的顺序执行执行1.先进入内存的程序先执行,在一个程序执行完毕之前,不能执行其他程序。2.特点:(1)顺序性;(2)封闭性;(3)可再现性。程序的并发程序的并发执行执行1.并发指在同一时间间隔内运行多个程序。2.特点:(1)间断性;(2)失去封闭性;(3)不可再现性。进程定义进程定义1.定义 1:进程是允许并发执行程序在某个数据集合上的运行过程。2.定义 2:进程是由正文段、用户数据段及进程控制块共同组成的执行环境。进程特征进程特征1.并发性;2.动态性;3.独立性;4.异步性;5.结构特征。进程和程序
7、进程和程序的比较的比较1.区别:(1)进程是动态的,程序是静态的;(2)进程是暂时的,程序是永久的。(3)程序与进程的存在实体不同。程序是指令的集合,而进程是包括了正文段、用户数据段和进程控制块的实体。2.联系:(1)进程是程序的一次执行,进程总是对应至少一个特定的程序。(2)一个程序可以对应多个进程。进程控制块进程控制块1.应用程序对应的进程由程序、用户数据和操作系统管理进程所需要的进程控制块构成。是操作系统感知进程存在的唯一标志。进程控制块进程控制块中的信息中的信息1.进程标识符信息:进程标识符用于唯一标识一个进程。2.处理机状态信息:包括通用寄存器、指令计数器、程序状态字 PSW 和用户
8、栈指针。3.进程调度信息:进程状态信息、进程优先级和进程调度所需的其他信息。4.进程控制信息:程序和数据的地址、进程同步和通信机制、资源清单,以及链接指针。进程的进程的 3 3 种种基本状态基本状态1.就绪态:在多任务系统中,可以有多个处于就绪态。进程在 CPU 上运行的时间片递减为 02.执行态:单 CPU 系统中,任意时刻只能有一个进程处于执行态。有 N 个 CPU 的多 CPU 系统中,3.任意时刻系统中最多有 N 个进程处于执行态。时间片的长度应该是0。4.阻塞态:处于阻塞态的进程数量可以有很多。进程状态的进程状态的转换转换3 3/1212进程的组织进程的组织1.链接方式:具有相同状态
9、的进程的进程控制块用其中的链接字链接成一个队列。2.索引方式:根据所有进程的状态,建立几张索引表,索引表的每一个表项指向一个 PCB 的物理块。3.进程队列:把具有相同状态的进程放在同一个队列中,具有不同状态的进程就形成了不同的进程队列。进程的创建进程的创建1.条件:(1)用户登录;(2)作业调度;(3)提供服务;(4)应用请求。2.过程:(1)申请空白 PCB;(2)为新进程分配资源;(3)初始化进程控制块;(4)将新进程插入就绪队列。进程的阻塞进程的阻塞1.条件:(1)请求系统服务;(2)启动某种操作;(3)新数据尚未到达;(4)无新工作可做。2.过程:(1)将进程的状态改为阻塞态;(2)
10、将进程插入相应的阻塞队列;(3)转进程调度程序,从就绪进程中选择进程为其分配 CPU。进程的唤醒进程的唤醒1.过程:(1)将进程从阻塞队列中移出;(2)将进程状态由阻塞态改为就绪态;(3)将进程插入就绪队列。进程的终止进程的终止1.条件:(1)当进程正常执行完毕,调用终止进程的系统调用,请求操作系统删除该进程;(2)一个进程调用适当的系统调用,终止另外一个进程。2.过程:(1)从进程 PCB 中读进程状态;(2)若进程正在执行,则终止进程的执行;(3)若进程有子孙进程,在大多数情况下需要终止子孙进程。(4)释放资源。(5)将终止进程的 PCB 移出。操作系统内操作系统内核核1.定义:是计算机硬
11、件的第一次扩充,内核执行操作系统与硬件关系密切,执行频率高的模块,常驻内存。2.功能:(1)支撑功能:中断处理、时钟管理和原语操作。(2)资源管理功能:进程管理、存储器管理和设备管理。中断中断1.定义:是改变处理器执行指令顺序的一种事件。2.过程:(1)系统关闭中断,保护断点(2)转中断处理程序(3)执行中断处理子例程(4)恢复现场,开中断。3.中断子程序的入口地址相关信息在内存中的地址=idtr 中的地址+8中断向量的值。时钟的重要时钟的重要性性1.时钟是计算机系统的脉搏。计算机系统计算机系统中的时钟中的时钟1.实时时钟 RTCBIOSOS 时钟应用程序操作系统的操作系统的时钟机制时钟机制1
12、.OS 时钟管理硬件(可编程间隔定时器 PIT):主要由 3 部分构成:晶振、计数器和保持寄存器。2.时钟软件时钟驱动程序,也称为时钟中断处理程序。什么是系统什么是系统调用调用1.系统调用是一群预先定义好的模块,它们提供一条管道让应用程序或一般用户能由此得到核心程序的服务。系统调用是系统程序与用户程序之间的接口系统调用与系统调用与一般函数的一般函数的区别区别1.用户态执行:用户空间是指用户进程所处的地址空间,一个用户进程不能访问其他进程的用户空间,只有系统程序才能访问其他用户空间。当 cpu 执行用户空间的代码时,称该进程在用户态执行。2.系统态执行:系统空间是指含有一切系统核心代码的地址空间
13、,当 CPU 执行系统核心代码时,称进程处于系统态执行。4 4/1212进程同步的进程同步的基本概念基本概念1.进程同步有两个任务:(1)对具有资源共享关系的进程,保证诸进程以互斥的方式访问临界资源。(2)对具有相互合作关系的进程,保证相互合作的诸进程协调执行。2.临界资源是必须以互斥方式访问的共享资源。3.临界区是进程中访问临界资源的那段代码。同步机制应同步机制应遵循的准则遵循的准则1.空闲让进;2.忙则等待;3.有限等待;4.让权等待。记录型信号记录型信号量机制量机制1.设某一临界区对应的记录型信号量 mutex(1)mutex.value=0 时,值表示资源数量。(2)mutex.val
14、ue0 时,表示资源分配完毕。其绝对值表示阻塞队列的进程个数。管程的基本管程的基本概念概念1.管程是描述共享资源的数据结构和在数据结构上的共享资源管理程序的集合。 每次只有一个进程调用管程执行,任意时刻管程中只能有一个活跃进程。2.其中包括:变量的定义、变量的初始化代码,以及管理共享资源的过程管程的应用管程的应用1.需建立的管程名为 PC,其中包括了两个过程:enter(item)过程,生产者进程调用该过程向缓冲池中投放消息;另一个是 remove(item)过程,消费者进程调用该过程从公共缓冲池中取消息。进程通信进程通信1.进程间通信的基本方式:共享存储器系统、消息传递系统、管道通信、消息缓
15、冲队列。2.进程之间的高级通信机制分为:(1)共享存储器系统;(2)消息传递系统;(3)管道通信系统。共享存储器共享存储器系统系统1.相互通信的进程共享某些数据结构或共享存储区。分为基于共享数据结构的通信方式;基于共享存储区的通信方式。消息传递系消息传递系统统1.进程间通过操作系统提供的一组通信程序传递格式化的消息。分为直接通信方式和间接通信方式。管道通信管道通信1.发送进程通过管道(连接读写进程的一个特殊文件)把数据以字符流的形式发送给接收进程。消息缓冲队消息缓冲队列列1.通过消息缓冲区(数据结构)、发送原语和接收原语通信。消息缓冲队列机制广泛用于本地进程之间的通信。线程的概念线程的概念和分
16、类和分类1.在支持线程的操作系统中,线程是进程的一个实体,线程是被系统独立调度和分派的基本单位;进程是资源分配的基本单位。2.分类:(1)用户级线程;(2)内核级线程。线程线程的的控制控制1.四项基本操作功能:(1)线程创建。(2)线程的终止。(3)线程的调度与切换。(4)线程的阻塞与唤醒 。第三章第三章 进程调度与死锁进程调度与死锁知识点名称知识点名称内容内容进程调度的进程调度的功能功能1.按照某种策略和算法从就绪态进程(在 Linux 中是可执行进程)中为当前空闲的 CPU 选择在其上运行的新进程。进程调度的进程调度的时机时机1.当一个进程运行结束(包括正常结束和异常结束)、进程阻塞、中断
17、返回、在支持抢占式调度的系统中有比当前运行进程优先级更高的进程到来、当前运行进程的时间片用完等。选择调度方选择调度方式和算法的式和算法的1.周转时间短;2.响应时间快;3.截止时间的保证;4.系统吞吐量高;5.处理机利用率好。5 5/1212若干准则若干准则周转时间短周转时间短1.周转时间:指从作业被提交给系统开始,到作业完成为止的这段时间间隔。它包括 4 部分时间:作业在外存后备队列上等待调度的时间,进程在就绪队列上等待进程调度的时间,进程在 CPU 上执行的时间(服务时间 Ts),以及进程等待 I/O 操作完成的时间。2.平均周转时间:如果系统中有 n 个作业,系统的平均周转时间 T 等于
18、 n 个作业的周转时间之和除以n,其公式为:niiT1n1T3.带权周转时间:W 是作业的周转时间 T 与系统为它提供的服务时间 Ts 之比,即 W=T/Ts。n 个作业的平均带权周转时间表达式为:nisiTT1n1W先来先服务先来先服务调度算法调度算法(FCFSFCFS)1.在进程调度中,FCFS 就是从就绪队列的队首选择最先到达就绪队列的进程,为该进程分配 CPU。2.优缺点:FCFS 适合长进程,不利于短进程。有利于 CPU 繁忙型进程,不利于 I/O 繁忙型进程。短进程优先短进程优先调度算法调度算法(SPFSPF)1.从就绪队列中选择估计运行时间最短的进程,将处理机分配给它,使它立即执
19、行并一直执行完成,或发生某事件而被阻塞放弃处理机时,再重新调度。2.优点:能有效降低进程的平均等待时间,提高系统的吞吐量。3.缺点:对长进程不利;不能保证紧迫进程的及时处理;不一定能真正做到短进程优先。优先权调度优先权调度算法算法1.系统将 CPU 分配给就绪队列中优先权值最高的进程。2.非抢占式优先权调度算法:有高优先权进程到来,系统也不能剥夺当前进程的 CPU 使用权,高优先权进程只能先进入就绪队列。3.抢占式优先权调度算法:如果新到达进程的优先权高于当前正在运行进程的优先权,那么系统会抢占 CPU,把它分配给新到达的高优先权进程,而正在执行的低优先权进程暂停执行。4.问题:低优先权进程无
20、穷等待问题,可通过老化技术解决。时间片轮转时间片轮转调度算法调度算法(RRRR)1.在现代分时系统中广泛使用。2.系统将所有的就绪进程按先来先服务的原则,排成一个队列,每次调度时把 CPU 分配给队首进程,并令其执行一个时间片。当时间片用完时,调度程序终止当前进程的执行,并将它送到就绪队列的队尾。3.时间片大小的确定:系统响应时间为 T,进程数目为 N,时间片为 q,有 T=Nq(1)时间片的大小与响应时间成正比;(2)时间片的大小就与系统允许的最大进程数成反比。(3)系统的处理能力。多级队列调多级队列调度度1.将就绪队列分成多个独立队列,根据进程的某些属性,如需要占用的内存大小等,进程会被永
21、久地分配到一个队列。多级反馈队多级反馈队列调度列调度1.在采用多级反馈队列调度的系统中建立多个优先权不同的就绪队列,为每个队列赋予大小不同的时间片。6 6/1212提供必要的提供必要的调度信息调度信息1.就绪时间。2.开始截止时间和完成截止时间。3.处理时间。4.资源要求。5.优先级。采用抢占式采用抢占式调度机制调度机制1.抢占式调度算法根据抢占 CPU 的时机不同,可以分为基于时钟中断的抢占和立即抢占。具有快速切具有快速切换机制换机制1.应具有的能力:(1)对外部中断的快速响应能力:要求系统具有快速的硬件中断机构,还应使禁止中断的时间间隔尽可能短。(2)快速的进程切换能力:应使系统中的每个运
22、行功能单位适当地小,以减少进程切换的时间开销。最低松弛度最低松弛度优先(优先(LLFLLF)算法算法1.松弛度松弛度用来表示一个实时进程的紧迫程度。松弛度越小,进程的优先级越高,越优先获得处理机。如果一个进程的完成截止时间为 T,当前时间为 Tc,处理完该任务还需要的时间为 Ts,则松弛度 L的计算式表示为:L=T-Tc-Ts2.在使用最低松弛度优先算法时, 调度程序在调度时机到来时, 每次选择松弛度 L 最小的进程, 把 CPU分配给该进程。多处理器系多处理器系统(统(MPSMPS)的类型、进的类型、进程分配方式程分配方式1.根据处理器的耦合程度(1)紧密耦合的多处理器系统:共享主存储器系统
23、和 I/O 设备。(2)松弛耦合的多处理器系统:每台计算机都有自己的存储器和 I/O 设备,每一台计算机都能独立工作。2.根据处理器结构是否相同(1)对称多处理器系统:属于同构的多处理器系统,各处理单元在功能和结构上都是相同的。进程分配方式:静态分配、动态分配(2)非对称多处理器系统:有多种类型的处理单元,它们的功能和结构各不相同。其中只有一个主处理器,有多个从处理器。进程分配方式:主从式自调度自调度1.最常用的调度方式之一,也是最简单的一种调度方式。2.优点:易移植和有利于提高 CPU 的利用率。3.缺点:瓶颈问题、低效性和线程切换频繁。成组调度成组调度1.由系统将一组相互合作的进程或线程同
24、时分配到一组处理器上运行,进程或线程与处理器一一对应。优点是减少线程切换和减少调度开销。2.时间分配有两种方式:面向所有的应用程序平均分配处理器时间和面向所有的线程平均分配处理器时间。专用处理器专用处理器分配分配1.在一个应用程序执行期间,专门为该应用程序分配一组处理器,每个线程一个,这组处理器供该应用程序专用,直至应用程序完成。2.优点:加速了应用程序的运行速度和避免了进程切换。3.缺点:会造成处理器资源的严重浪费。产生死锁的产生死锁的原因和必要原因和必要条件条件1.死锁定义:由于多个进程竞争共享资源而引起的进程不能向前推进的僵死状态称为死锁2.原因:竞争共享资源且分配资源的顺序不当。3.产
25、生死锁的必要条件:(1)互斥条件;(2)请求和保持条件;(3)不剥夺条件;(4)环路等待7 7/1212条件。死锁的预防死锁的预防1.摒弃请求和保持条件(1)所有进程执行前要一次性地申请在整个运行过程中所需要的全部资源。(2)对某些进程在申请其他资源前要求该进程必须释放已经分配给它的所有其他资源。2.摒弃不剥夺条件:一个已保持了某些资源的进程,当它再提出新的资源要求而不能立即得到满足时,必须释放它已经保持的所有资源。3.摒弃环路等待条件:进程必须按规定的顺序申请资源。死锁的避免死锁的避免1.当系统能找到一个进程执行序列,使系统只要按此序列为每个进程分配资源,就可以保证进程的资源分配和执行顺利完
26、成,不会发生死锁时,称系统处于安全状态。若系统不存在这样的安全序列,则称系统处于不安全状态。2.系统处于安全状态,死锁就不会发生。系统进入不安全状态,便可能进入死锁状态。3.公式:设系统有一类数量为 M 的独占性资源,系统中 N 个进程竞争该类资源,每个进程对资源的最大需求为 W。当 M、N、W 满足 N(W-1)+1=M 时,系统处于安全状态。银行家算法银行家算法1.银行家算法是一种能够避免死锁的资源分配算法。能保证至少有一个进程可得到需要的全部资源而执行到结束,然后释放资源。其实质是避免系统处于不安全的状态。2.过程:(1)进行资源试分配;(2)对试分配后系统的状态做安全性检测。3.还需要
27、的数量 need=最大需求 max-已分配 allocation。死锁的检测死锁的检测1.死锁定理为:S 为死锁状态的充分条件是当且仅当 S 状态的资源分配图是不可能完全简化的。死锁的解除死锁的解除1.进程终止:终止所有进程或一次只终止一个处于死锁的进程,直到死锁解除。2.资源抢占:逐步从进程中抢占资源给其他进程使用,直到死锁环被打破为止。第四章第四章 内存管理内存管理知识点名称知识点名称内容内容内存管理内存管理1.目标:(1)实现内存分配、内存回收等基本内存管理的功能;(2)提高内存空间的利用率和内存的访问速度。存储器的层存储器的层次结构次结构1.由不同容量、不同成本和不同访问时间的存储设备
28、所构成的存储系统中,容量最小速度最快的设备是寄存器。局部性原理局部性原理1.时间局部性:如果程序中的某条指令一旦执行,则不久后该指令可能再次执行。2.空间局部性:一旦程序访向了某个单元,在不久之后,其附近的存储单元也将被访问。程序的链接程序的链接1.静态链接优点:运行速度较快;缺点:内存开销大,程序开发不灵活。2.动态链接优点:节省内存和外存空间,方便了程序开发。程序的装入程序的装入1.绝对装入方式按照装入模块的物理地址将程序和数据装入内存。2.可重定位装入方式(静态重定位)(1)在程序装入时对目标程序中的指令和数据地址的修改过程称为重定位。(2)物理地址=有效逻辑地址+程序在内存中的起始地址
29、3.动态运行时装入(动态重定位)(1)一个进程在被换出之前所在的内存位置与后来被从外存重新调入内存时所在的内存位置不同,在这种情况下,地址映射必须延迟到进程执行时再进行,把这种装人方式称为动态运行装入。8 8/1212(2)物理地址=有效逻辑地址+重定位寄存器的值动态分区分动态分区分配配1.空闲分区表:每个表项中包括分区编号、分区大小和分区起始地址。2.空闲分区链:每个结点包括分区大小、分区起始地址、指向前一个空闲分区结点的指针,以及指向后一个空闲分区结点的指针。3.算法:(1)首次适应算法 FF(2)循环首次适应算法 NF(3)最佳适应算法 BF(内存利用率高,但易留下难以利用的小空闲区)分
30、页存储管分页存储管理的基本原理的基本原理理1.页:将一个进程的逻辑地址空间分成若干个大小相等的片。2.页框:将物理内存空间分成与页大小相同的若干个存储块。进程的最后一页一般装不满一个页框,形成了不可利用的碎片,称为“页内碎片”,是一种内部碎片。页大小=页框大小。3.页表:系统为进程建立的数据结构,页表的作用是实现从页号到页框号的映射。基本分页存基本分页存储管理方式储管理方式中的地址结中的地址结构构1.基本分页的逻辑地址结构包含两部分:页号 P 和页内偏移量 W。用 m 位表示逻辑地址,页大小为2 字节,则用低 n 位表示页内偏移量 W,用高 m-n 位表示页号 P。2.物理地址=页框大小 x
31、页框号+页内偏移量。3.若 A 为逻辑地址,L 为页大小,P 为页号,W 为页内偏移量,则有以下计算关系。P=INT(A/L)W=MOD(A/L)分页地址变分页地址变换换1.分页地址变换是指:为了能将用户地址空间中的逻辑地址变换为内存空间中的物理地址,在系统中必须设置地址变换机构。2.基本任务:实现逻辑地址到物理地址的变换。引入引入 TLBTLB 的的性能分析性能分析1.在 TLB 中找到某一个页号对应的页表项的百分比称为 TLB 命中率。2.有 TLB:有效访存时间=一次访问 TLB 的时间加上一次访问内存的时间。3.没有 TLB:访存时间=一次访问 TLB 的时间加上两次访问内存(一次访问
32、内存页表,一次访问内存读写数据或指令)的时间。两级页表两级页表1.在二级分页系统中,为了能在地址映射时得到离散存放的页表在物理内存中的地址,需要为页表再建立一个连续存放的外层页表,本书也称之为页目录表。页目录表的表项中存放了每一个页表在物理内存中所在的页框号。2.逻辑地址结构:基于分页的基于分页的虚拟存储系虚拟存储系统统1.虚拟存储器: 指具有请求调入功能和置换功能, 能从逻辑上对内存容量进行扩充的一种存储器系统。页表页表1.是支持请求分页系统最重要的数据结构。2.页表结构:页框号、状态位 P、访问字段 A、修改位 M、保护位。缺页异常机缺页异常机构构1.虚拟存储系统中,当访问内存而发现所需要
33、的内容不在内存时,缺页异常机构产生信号,CPU 则中断当前控制流的执行,然后进行相应的处理,完成请求调页。页分配和置页分配和置1.页分配策略固定分配组合成以下 3 种页分配和置换策略:9 9/1212换策略换策略定分配局部置换可变分配全局置换可变分配局部置换可变分配2.页置换策略局部置换全局置换页置换算法页置换算法1.最佳置换算法和先进先出置换算法(FIFO)(1)最佳置换算法:选择以后永远不会被访问的页或者在未来最长时间内不再被访问的页作为换出页。(理论)(2)先进先出页置换算法(FIFO):最简单的页置换算法。实现这种算法的一种方式是为每个页记录该页调入内存的时间,当选择换出页时,选择进入
34、内存时间最早的页。2.最近最久未使用LRU 置换算法择最近最久未使用的页换出 (最近最久未使用的页在最近的将来被访问的可能性也比较小)。(常用)抖动产生的抖动产生的原因和预防原因和预防方法方法1.原因:系统中的进程数量太多,每个进程能分配到的页框太少,以至于进程运行过程中频繁请求调页。2.预防:采取局部置换策略;在 CPU 调度程序中引人工作集算法;挂起若干进程。分段机制的分段机制的引入引入1.在使用分段存储管理的系统中,程序员使用二维的逻辑地址,一个数用来表示段,另一个数用来表示段内偏移。2.优点:方便编程、分段共享、分段保护、动态链接,以及存储空间的动态增长。分段系统的分段系统的基本原理基
35、本原理1.原理:进程的地址空间被划分成若干个段。段的大小不一样,每个段的逻辑地址从 0 开始,采用一段连续的地址空间。2.逻辑地址结构:二维的,由段号和段内地址组成。第五章第五章 文件系统文件系统知识点名称知识点名称内容内容文件文件1.文件系统管理是操作系统的重要功能之一,它为用户提供了在计算机系统中对数据信息进行长期、大量存储和访问的功能。2.文件系统的用户接口,包括文件的命名、类型、属性和对文件的操作。文件命名文件命名1.多数操作系统都支持文件名用圆点隔开分为两部分文件结构文件结构1.无结构字节序列:也称为流式文件,操作系统所见到的就是字节。2.固定长度记录序列:具有固定长度的记录。3.树
36、形结构:文件由一棵记录树构成,记录长度不定,在记录的固定位置包含一个关键字域,记录树按关键字域排序。文件类型文件类型1.正规文件,一般分为 ASCII 文件和二进制文件。ASCII 文件由多行正文组成,在某些系统中每行用回车符结束,某些则用换行符结束,而有些系统还同时采用回车符和换行符,各行的长度不必相同。2.二进制文件:二进制文件具有一定的内部结构,如可执行的.exe 文件。3.目录文件。4.字符设备文件。5.块设备文件。文件存取文件存取1.常用的文件存取方式有两种:顺序存取和随机存取。文件属性文件属性1.为方便管理,除了文件名和文件数据外,文件系统还会保存其他与文件相关的信息,如文件的创建
37、日期、文件大小和修改时间等,这些附加信息称为文件属性。1010/1212文件操作文件操作1.CREATE:创建文件。2.OPEN:打开文件。3.CLOSE:关闭文件。当存取结束后,不再需要文件属性和地址信息,这时应该关闭文件以释放内部表空间。4.READ:从文件中读取数据。5.WRITE:往文件中写数据。6.APPEND:该操作是 WRITE 调用的限制形式,它只能在文件末尾添加数据。7.SEEK:对于随机存取文件,要指定从何处开始取数据。8.GETATTRffiUTES:获取文件属性。9.SETATTRIBUTES:修改属性。10.RENAME:修改已有文件的名件名。目录目录1.目录是文件系
38、统中实现按名访问文件的重要数据结构。层次目录系层次目录系统统1.目录文件的结构:属性放在目录项中和放在 i 结点中。2.目录类型:(1)单层目录(如果文件系统中有两个文件重名,不应采用单层目录)这种目录也被称为根目录。在整个系统中设置一张线性目录表,表中包括了所有文件的描述信息。 (2)两级目录:优点是解决了文件的重名问题和文件共享问题,查找时间降低。缺点是增加了系统的存储开销。(3)树形目录:把两级目录的层次关系加以推广,就形成了多级目录,又称树形目录。树形目录的优点是便于文件的分类,层次结构清晰,便于管理和保护,解决了重名问题,查找速度加快。目录操作目录操作1.CREATE:根据给定的目录
39、文件名,创建目录。2.DELETE:删除目录。3.OPENDIR:目录内容可以被读取。4.CLOSEDIR:关闭目录。5.READDIR:以标准格式返回打开目录的下一级目录项。6.RENAME:更换目录名。连续分配连续分配1.把每个文件作为一连串连续数据块存储在磁盘上。2.优点:实现简单、读操作性能好。3.缺点:随着时间的推移,磁盘会变得零碎。当删除文件时,文件所占的簇被释放,这些空闲的连续簇形成“空洞”,即磁盘零碎。使用磁盘链使用磁盘链接表的分配接表的分配1.优点:可以充分利用每个簇,不会因为磁盘碎片(除了最后一块中的内部碎片)而浪费存储空间,管理也比较简单。2.缺点:随机存取相当缓慢。使用
40、内存的使用内存的链接表分配链接表分配1.将文件所在的磁盘的簇号存放在内存的表(文件分配表)中。访问文件时,只需从内存文件分配表中顺着某种链接关系查找簇的簇号。不管文件有多大,在目录项中只需记录文件的第一块数据所在簇的簇号,根据它査找到文件的所有块。2.缺点:必须把整个表都存放在内存中。不适合大容量的磁盘。3.MS-DOS 就使用这种方法进行磁盘分配。i-i-结点结点1.为每个文件赋予一个被称为 i 结点数据结构,其中列出了文件属性和文件块的磁盘地址。簇大小簇大小1.一般簇大小是 2 的整数次幂个连续的扇区。1111/1212记录空闲块记录空闲块1.磁盘空间管理中,记录空闲块的两种常用方法:(1
41、)空闲簇链接表。用一些空闲簇存放空闲簇的簇号,并专门留出最后几个字节存放指向下一个存放空间簇的指针。(2)位图。每个簇用一个二进制位表示,其中空闲簇用 1 表示,已分配簇用 0 表示(或者反过来)。第六章第六章 I/OI/O 设备管理设备管理知识点名称知识点名称内容内容I/OI/O 系统的结系统的结构构1.微机 I/O 系统:总线型 I/O 系统:CPU 与内存之间可以直接进行信息交换,但是不能与设备直接进行信息交换,必须经过设备控制器。2.主机 I/O 系统:四级结构,包括主机、通道、控制器和设备。一个通道可以控制多个设备控制器,一个设备控制器也可以控制多个设备。I/OI/O 设备的分设备的
42、分类类1.按传输速率分类低速设备、中速设备、高速设备。2.按信息交换的单位分类块设备和字符设备3.按设备的共享属性分类独占设备、共享设备和虚拟设备设备控制器的设备控制器的功能功能1.接收和识别命令。2.数据交换。3.设备状态的了解和报告。4.地址识别。5.数据缓冲。6.差错控制。I/OI/O 通道通道1.I/O 通道是大型主机系统中专门用于 I/O 的专用计算机。DMADMA 控制方控制方式式1.I/O 控制方式有:轮询、中断、DMA。2.DMA 控制器的逻辑组成包括 3 部分:主机与 DMA 的接口、DMA 与设备的接口,以及 I/O 控制逻辑。3.DMA 控制器中 4 类寄存器:命令/状态
43、寄存器 CR、内存地址寄存器 MAR、数据寄存器 DR 和数据计数器 DC。缓冲池的组成缓冲池的组成1.公共缓冲池既可用于输入,又可用于输出,其中至少包含三种类型的缓冲区:(1)空缓冲区。(2)装满输入数据的缓冲区。(3)装满输出数据的缓冲区。单缓冲单缓冲1.对于面向块的设备:输入数据被传送进入系统缓冲区。2.对于面向流的 I/O:如键盘、打印机和传感器等。一般用于面向流的设备循环缓冲循环缓冲1.申请:Getbuf 过程;2.释放:Releasebuf 过程。设备独立性设备独立性1.含义:为了提高操作系统的可适应性和可扩展性,在现代操作系统中都毫无例外地实现了设备独立性,也称为设备无关性。2.
44、主要功能:(1)执行所有设备的公有操作(2)向用户层软件提供统一的接口。3.实现设备独立性好处:(1)应用程序与物理设备无关,系统增减或变更外围设备时不需要修改应用程序;(2)易于处理输入输出设备的故障;(3)提高了系统的可靠性,增加了设备分配的灵活性。独占设备的分独占设备的分配程序配程序1.如果系统有 I/O 通道分配步骤:(1)分配设备(2)分配控制器(3)分配通道。2.如果系统没有 I/O 通道分配步骤:(1)分配设备(2)分配控制器。1212/1212SPOOLinSPOOLing g技术技术1.SPOOLing 系统的组成包括:(1)输入井和输出井;(2)输入缓冲区和输出缓冲区;(3
45、)输入进程 SPi 和输出进程 SPo;(4)请求 I/O 队列。I/OI/O 软件原理软件原理1.设备管理软件的层次结构:(1)用户层软件:进行 I/O 调用,格式化 I/O。(2)与设备无关的软件层:命名、保护、阻塞、缓冲、分配。(3)设备驱动程序:包括中断处理程序、设备服务程序。(与硬件关系最密切)(4)中断处理程序(底层):执行 I/O 操作。设备管理软件设备管理软件的功能的功能1.实现 I/O 设备的独立性。2.错误处理。3.异步传输。4.缓冲管理。5.设备的分配和释放。6.实现 I/O控制方式。磁盘调度磁盘调度1.先来先服务算法:FCFS 是一种最简单的磁盘调度算法。它根据进程请求
46、访问磁盘的先后顺序进行调度。该算法的优点是公平、简单,且每个进程的请求都能依次得到处理,不会出现某一进程的请求长期得不到满足的情况。但此算法由于未对寻道进行优化,致使平均寻道时间可能较长。移动距离(磁道数)=|被访问的下一个磁道号-当前磁头在磁道号上|2.最短寻道时间优先:SSTF。其要求访问的磁道与当前磁头所在的磁道距离最近,以使每次的寻道时间最短。2.扫描算法:SCAN。解决“饥饿”现象。不仅考虑到要访问的磁道与当前磁道的距离,更优先考虑磁头当前的移动方向。又称电梯调度算法。直到达到尽头,再换方向。3.循环扫描算法:CSCAN,规定磁头是单向移动提高磁盘提高磁盘 I/ I/OO速度的方法速度的方法1.提前读。2.延迟写。3.优化物理块的分布。4.虚拟盘。5.磁盘高速缓存。