计算机操作系统知识点总结一.docx
第一章1.操作系统的概念:通常把操作系统定义为用以限制和管理计算机系统资源便利用户运用的程序和数据构造的集合。2.操作系统的根本类型:批处理操作系统, 分时操作系统, 实时操作系统, 个人计算机操作系统, 网络操作系统, 分布式操作系统。批处理操作系统特点:用户脱机运用计算机成批处理多道程序运行优点:由于系统资源为多个作业所共享,其工作方式是作业之间自动调度执行。并在运行过程中用户不干预自己的作业,从而大大提高了系统资源的利用率和作业吞吐量。缺点:无交互性,用户一旦提交作业就失去了对其运行的限制实力;而且是批处理的,作业周转时间长,用户运用不便利。批处理系统中作业处理及状态分时操作系统(Time Sharing OS)分时操作系统是一个联机的多用户交互式的操作系统,如UNIX是多用户分时操作系统。分时计算机系统:由于中断技术的运用,使得一台计算机能连接多个用户终端,用户可通过各自的终端运用和限制计算机,我们把一台计算机连接多个终端的计算机系统称为分时计算机系统,或称分时系统。分时技术:把处理机的响应时间分成假设于个大小相等或不相等的时间单位,称为时间片如100毫秒,每个终端用户获得CPU,就等于获得一个时间片,该用户程序开场运行,当时间片到用完,用户程序暂停运行,等待下一次运行。特点:人机交互性好:在调试和运行程序时由用户自己操作。共享主机:多个用户同时运用。用户独立性:对每个用户而言好象独占主机。实时操作系统(real-time OS)实时操作系统是一种联机的操作系统,对外部的恳求,实时操作系统能够在规定的时间内处理完毕。特点:有限等待时间有限响应时间用户限制牢靠性高系统出错处理实力强设计实时操作系统要考虑的一些因素:1实时时钟管理2连续的人机对话3过载 (4) 高度牢靠性和平安性须要实行冗余措施。通用操作系统同时兼有多道批处理, 分时, 实时处理的功能,或其中两种以上的功能。个人计算机上的操作系统个人计算机上的操作系统是联机的交互式单用户操作系统,目前在个人计算机上运用的操作系统以windows系列和linux系统为主。网络操作系统特征:1计算机网络是一个互连的计算机系统群体。这些计算机在物理上是分散的。2这些计算机是自治的,每台计算机有自己的操作系统,各自独立工作,它们在网络协议限制下协同工作。3系统互连要通过通信设施硬件, 软件来实现。4系统通过通信设施执行信息交换, 资源共享, 互操作和协作处理。分布式系统(Distributed System)特征:1功能的分布2坚毅性3高牢靠性3操作系统的功能处理机管理, 存储管理内存安排, 存储爱护, 内存扩大, 设备管理通道, 限制器, 输入输出设备的安排及管理,设备独立性, 信息管理文件系统管理, 用户接口程序一级的接口, 作业一级的接口。通道:用于限制I/O设备及内存间的数据传输。启动后可独立于CPU运行,实现CPU及I/O的并行。¡ 通道有专用的I/O处理器,可及CPU并行工作¡ 可实现 I/O联机处理中断是指CPU在收到外部中断信号后,停顿原来工作,转去处理该中断事务,完毕后回到原来断点接着工作。¡ 中断处理过程:中断恳求,中断响应,中断点暂停当前任务并保存现场,中断处理例程,中断返回复原中断点的现场并接着原有任务监视程序开展为执行系统(executive system),常驻内存特点¡ 多道:内存中同时存放几个作业;¡ 宏观上并行运行:都处于运行状态,但都未运行完;¡ 微观上串行运行:各作业交替运用CPU;优点:¡ 资源利用率高:CPU和内存利用率较高;¡ 作业吞吐量大:单位时间内完成的工作总量大;缺点:¡ 用户交互性差:整个作业完成后或中间出错时,才及用户交互,不利于调试和修改;¡ 作业平均周转时间长:短作业的周转时间显著增长;多道程序系统中,要解决的问题:同步互斥, 内存不够, 运用效率, 内存爱护6.计算机硬件:构成计算机的根本硬件元素:处理器, 存储器, 输入输出限制及总线, 外部设备。及操作系统相关的几种主要的存放器数据存放器n 地址存放器n 条件码存放器n 程序计数器n 指令计数器n 程序状态字PSWn 中断现场爱护存放器n 过程调用用堆栈存储器的访问速度指令的执行和中断操作系统的启动启动电源产生中断信号触发CPU中的一段指令发觉操作系统引导区位置导入内存执行操作系统程序加载到内存制定区域初始化硬件begin.end 算法的开场于完毕 repeat 操作.until 条件 当“条件未被满意时重复所描述的“操作while 条件 do 操作.od 当“条件满意时,进展相应的“操作if 条件 then 操作 else 操作 fi 满意“if所指的“条件时,进展“then后的相关“操作,否那么完成“else后的相关操作。第二章1.作业:在一次应用业务处理过程中,从输入开场到输出完毕,用户要求计算机所做的有关该次业务处理的全部工作称为一个作业。作业由不同的依次相连的作业步组成,作业步是一个作业的处理过程中计算机所做的相对独立的工作。2.作业的组织:作业由三局部组成,即程序, 数据和作业说明书。作业中包含的程序和数据完成用户所要求的业务处理工作,作业说明书那么表达用户的限制意图。由作业说明书在系统中生成一个称为作业限制块JCB的表格,JCB包括:作业名, 估计执行时间, 优先数用于调度, 作业说明书文件名, 程序类型, 资源要求(静态申请和动态申请), 作业状态提交后各执行完成。作业说明书包括:作业根本状况描述用户名, 作业名, 运用语言名, 允许最大处理时间等, 作业限制描述限制方式, 操作依次, 出错处理等, 作业资源要求描述要求处理时间, 内存空间, 外设类型和数量, 处理及优先级, 库函数或好用程序等。联机输入输出方式联机输入输出方式大多用在交互式系统中,用户及系统通过交互式会话输入输出作业。在联机输入输出方式中,外围设备干脆及主机相连接。脱机输入输出方式脱机输入又称为预输入方式,利用低档个人计算机作为外围处理机进展输入输出处理。干脆耦合方式把主机及低档外围通过一个公用的大容量外存干脆耦合起来。SPOOLING系统外围设备同时联机操作多台外围设备通过通道或DMA器件和主机及外存连接起来。网络联机方式网络联机方式以上述几种输入输出方式为根底。当用户通过计算机网络中的某一台设备对计算机网络中的另一台主机进展输入输出操作时,就构成了网络联机方式。系统调用大致可分为6类:1设备管理:该类系统调用被用来恳求和释放有关设备以及启动设备操作等。2文件管理:包括对文件的读, 写, 创立和删除等。3进程限制:包括进程创立, 进程执行, 进程撤销, 进程等待和执行优先级限制等。4进程通信:该系统调用被用在进程之间传递消息或符号。5存储管理:包括调查作业占据内存区的大小, 获得作业占据内存区的始址等。6线程管理:包括线程的创立, 调度, 执行, 撤销等。系统调用的实现:当用户运用系统调用时,产生一条相应的指令,处理机在执行到该指令时发生相应的中断,并发出有关信号给该处理机制。该处理机制在收到了处理机发来的信号后,启动相关的处理程序去完成该系统调用所要求的功能。陷进处理机构:在系统中为限制系统调用效劳的机构称为陷进处理机构。陷进指令:把由于系统调用引起处理机中断的指令称为陷进指令。第三章程序用来描述计算机所完成的独立功能,并在时间上严格地按前后次序相继地进展计算机操作序列集合,是一个静态概念。个程序由假设干个程序段组成,而这些程序段的执行必需是依次的,这种程序执行的方式就称为程序的依次执行。程序依次执行的特点:n 处理机严格依据程序所规定的依次执行,即每个操作必需在下一个操作开场之前完毕。n 程序一旦开场执行,其计算结果不受外界的影响,当程序的初始条件给定之后,其后的状态只能由程序本身确定,即只有本程序才能变更它。n 程序执行的结果及初始条件有关,而及执行时间无关。即只要程序的初始条件一样,它的执行结果是一样的,不管它在什么时间执行,也不管计算机的运行速度。多道程序系统中程序执行环境的变更执行环境的特点:n 1独立性在多道环境下执行的每道程序都是逻辑上独立的。n 2随机性程序和数据的输入和执行开场时间都是随机的。n 3资源共享软硬件资源的有限性导致资源共享。程序并发执行:假设干个程序段同时在系统中运行,这些程序的执行在时间上是重迭的,一个程序段的执行尚未完毕,另一个程序段的执行已经开场,即使这种重迭是很小的,也称这几个程序段是并发执行的。2.进程:进程是一个程序对某个数据集的执行过程,是安排资源的根本单位。进程和程序的区分及联系:程序是指令的集合,是静态的概念。 进程是程序在处理机上的一次执行的过程,是动态的概念。程序可以作为软件资料长期保存。进程是有生命周期的。进程是一个独立的运行单位,能及其它进程并行并发活动。而程序那么不是。进程是竞争计算机系统有限资源的根本单位,也是进展处理机调度的根本单位。不同的进程可以包含同一程序,只要该程序所对应的数据集不同。作业和进程的关系作业是用户须要计算机完成某项任务时要求计算机所做工作的集合。而进程那么是已提交完毕程序的执行过程的描述,是资源安排的根本单位。其主要区分如下:n 作业是用户向计算机提交任务的任务实体。n 一个作业可由多个进程组成。n 作业的概念主要用于批处理系统中。进程描述在系统中一个进程存在:进程限制块PCB, 有关程序段, 数据构造集 进程限制块 PCB (Process Control Block)包含一个进程的描述信息, 限制信息及资源信息,有些系统还有进程调度等待所运用的现场爱护区。PCB集中反映一个进程的动态特征。在创立时,建立PCB,并伴随进程运行的全过程,当进程完成其功能后,系统释放PCB,进程也随之消亡1描述信息 1, 进程名或进程标识号 name 每个进程都必需有一个唯一的标识符,可以是字符串,也可以是一个数字。UNIX系统中就是一个整型数。在进程创立时由系统给予。 2, 用户名或用户标识号 每个进程都隶属于某个用户,用户名或用户标识号有利于资源共享和爱护 3, 家族关系 process family 有的系统允许一个进程可创立自已的子进程,子进程还可以创立,一个进程往往处在一个家族之中,就须要记录进程在家族中位置的信息。 2限制信息 1, 进程当前状态 status说明进程当前所处的状态。为了管理的便利,系统设计时会将一样的状态的进程组成一个队列,如就绪进程队列,等待进程那么要依据等待的事务组成多个等待队列,如等待打印机队列, 等待磁盘I/O完成队列等等。2, 进程优先级 priority 进程的优先级反映进程的紧迫程度,通常由用户指定和系统设置。3, 执行程序开场地址 start-addr4, 各种计时信息进程占用系统资源的状况,不同的系统的处理差异很大。5, 通信信息 communication information是指某个进程在运行的过程中要及其它进程进展通信,该区记录有关进程通信方面的信息。3资源管理信息包括有关存储器的信息, 运用输入, 输出设备的信息, 有关文件系统的信息:1, 占用内存大小及管理用数据构造指针。2, 在某些困难系统中,还有对换或覆盖用的有关信息。3, 共享程序段大小及起始地址。4, 输入输出设备的设备号,所要传送的数据长度, 缓冲区地址, 缓冲区长度及运用设备的有关数据构造指针等。5, 指向文件系统的指针及有关标识等。4, CPU现场爱护区 cpustatus当进程因某种缘由不能接着占用CPU时等待打印机,释放CPU,这时就要将CPU的各种状态信息爱护起来,为将来再次得到处理机复原CPU的各种状态,接着运行。进程上下文事实上是进程执行活动全过程的静态描述。进程上下文是一个抽象的概念,它包含了每个进程执行过的, 执行时的以及待执行的指令和数据,在指令存放器, 堆栈存放个调用子程序的返回点和参数等,状态字存放器等中的内容。上文:已执行过的进程指令和数据在相关存放器及堆栈中的内容。正文:正在执行的指令和数据在相关存放器及堆栈中的内容。下文:待执行的指令和数据在相关存放器及堆栈中的内容。进程上下文切换进程上下文切换发生在不同的进程之间而不是同一个进程内。包含3个局部,第一局部为保存被切换进程的正文局部或当前状态至有关存储区。第二局部操作系统进程中有关调度和资源安排程序执行,并选取新的进程。第三局部那么是将被选中进程的原来被保存的正文局部从有关存储区中选出,并送至有关存放器或堆栈中,激活被选中进程执行。进程空间和大小任一进程都有自己的地址空间,把该空间称为进程空间或虚空间。进程空间的大小只及处理机的位数有关。程序的执行都在进程空间内进展。用户程序, 进程的各种限制表格等都按确定的构造排列在进程空间中。在有的系统中进程空间被划分为两局部:用户空间和系统空间。为了防止用户程序访问系统空间,造成访问出错,计算机通过程序状态存放器等设置不同的执行模式,即用户模式用户态和系统模式系统态来进展爱护。进程的三种根本状态:执行状态, 就绪状态, 等待状态又称堵塞, 挂起, 睡眠就绪状态Ready) 存在于处理机调度队列中的那些进程,它们已经打算就绪,一旦得到CPU,就马上可以运行,这些进程所取的状态为就绪状态。有多个进程处于此状态执行状态(Running当进程由调度/分派程序分派后,得到CPU限制权,它的程序正在运行,该进程所处的状态为执行状态。在系统中,总只有一个进程处于此状态等待状态Wait)假设一个进程正在等待某个事务的发生如等待I/O的完成,而暂停执行,这时,即使给它CPU时间,它也无法执行,那么称该进程处于等待状态。进程状态转换运行到等待 等待某事务的发生如等待I/O完成等待到就绪 事务已经发生如I/O完成运行到就绪 时间片到例如,两节课时间到,下课新建进程到就绪 新创立的进程进入就绪状态就绪到运行 当处理机空闭时,由调度分派程序从就绪进程队列中选择一个进程占用CPU。进程限制:就是系统运用一些具有特定功能的程序段来创立, 撤销进程以及完成进程各状态的转换,从而到达多进程高效率并发执行和协调, 实现资源共享的目的。原语:把系统态下执行的某些具有特定功能的程序段称为原语。用于进程限制的原语有:创立原语, 撤销原语, 堵塞原语, 唤醒原语。进程创立方式:由系统程序模块统一创立;由父进程创立。进程创立系统调用: create(name,priority,start-addr) UNIX系统:fork()进程撤销:1该进程已完成所要求的功能而正常终止2由于某种错误导致非正常终止3祖先进程要求撤销某个子进程。在一般操作系统中进程撤消的系统调用是:kill UNIX系统中是exit() 假如撤销进程有自己的子进程,那么撤销原语先撤销其子进程的PCB构造并释放子进程所释放的资源后,再撤销当前进程的PCB构造和释放其资源。进程的堵塞及唤醒当一个处在运行状态的进程,因等待某个事务的发生如等待打印机而不能接着运行时,将调用进程挂起系统调用,把进程的状态置为堵塞状态,并调用进程调度程序等于让出处理机。进程从运行状态转换成堵塞状态是由进程挂起原语实现的,因此,调用进程挂起操作是在进程处于运行状态下执行的。它的执行将引起等待某事务的队列的变更.一个正在运行的进程会因等待某事务例如,等待打印机的发生,由运行状态转换成堵塞状态,当它等待的事务发生后,这个进程将由堵塞状态转换成就绪状态。这种转换由进程唤醒操作完成。唤醒一个进程有两种方式:系统进程唤醒, 事务发生进程唤醒。 调用进程唤醒操作一般在中断处理, 进程通信等过程中。例如,打印机完成中断处理程序, 在完成了打印完成的操作后,就去检查等待打印机的队列,假设不为空,那么调用进程唤醒操作,唤醒一个或多个等待打印机的进程。 产生互斥的缘由:资源共享, 进程合作临界资源:一次仅允许一个进程运用的资源称为临界资源。临界区:每个进程中访问临界资源的那段程序段称为临界区临界段。间接制约:由于共享某公有资源而引起的在临界区内不允许并发进程穿插执行的现象称为有共享公有资源而造成的对并发进程执行速度的间接制约,简称间接制约。互斥:在操作系统中,当某一进程正在访问某临界区时,就不允许其它进程进入,否那么就会发生(后果)无法估计的错误。我们把进程之间的这种相互制约的关系称为互斥。进入临界区的准那么:(1)不能假设各并发进程的相对执行速度;2并发进程中的某个进程不在临界区时,它不能阻挡其他进程进入临界区;3并发进程中的假设干个进程申请进入界区时,只能允许一个进程进入;(4)当有假设干个进程欲进入临界区时,应在有限的时间内使其进入。解决进程互斥的最简洁的方法是加锁。在系统中为每个临界资源设置一个锁位,n 1 表示资源可用,n 0 表示资源已被占用不行用。这样当一个进程运用某个临界资源之前必需完成以下操作:1, 考察锁位的值;2, 假设原来的值是为“1,将锁位置为“0占用该资源;3, 假设原来值是为“0,该资源已被别人占用,那么转到1。当进程运用完资源后,将锁位置为“1“,称为开锁操作。5.信号量及P, V原语信号量sem:是一个整数,在sem大于等于零时,代表可供并发资源运用的资源实体数,但sem小于零时那么表示正在等待运用临界区的进程数。sem代表资源的实体。在实际应用中应精确地说明sem的意义和初值。P操作:1sem减1;2假设sem减1后仍大于等于0,那么进程接着执行;3假设结果小于0,那么该进程挂起。注:挂起该进程包括:保存调用进程CPU现场;置“等待状态;入等待队列;转进程调度; V操作:1s值加1;2假设相加结果大于0,进程接着执行;3否那么,唤醒一个或多个等待该信号灯的进程,然后本进程接着执行或转进程调度。 P, V原语实现互斥的原理当一个进程想要进入临界区时,它必需先执行P原语操作以将信号量sem减1。在一个进程完成对临界资源的操作后,它必需执行V原语操作以释放它占用的临界资源。由于信号量初始值为1,所以,任一进程在执行P原语操作之后将sem的值变为0,表示该进程可以进入临界区。在该进程未执行V原语操作之前如有另一进程想进入临界区的话,它也应先执行P原语操作,从而使sem的值变为-1,因此,第二个进程将会被堵塞,直到第一个进程执行V原语操作之后,sem的值变为0,从而可唤醒第二个进程进入就绪队列,经调度后进入临界区。在第二个进程执行完V原语操作之后,假如没有其它进程申请进入临界区的话,那么sem又复原到初始值。用信号量实现两并发进程Pa,Pb互斥的描述如下:(1) 设sem为互斥信号量,其取值范围为1,0,-1。其中sem=1标记进程Pa,Pb都未进入类名为S的临界区,sem=0表示进程Pa,Pb已进入类名为S的临界区,sem=-1表示进程Pa,Pb中,一个进程已进入临界区,而另一进程等待进入临界区。(2) 描述Pa:Psem<S>V(sem):.Pb:Psem<S>V(sem):.同步:把异步环境下的一组并发进程,因干脆制约而相互发送消息而进展相互合作, 相互等待,使得各进程按确定的速度执行的过程称为进程间的同步。用wait消息名表示进程等待合作进程发来的消息.功能:等待到消息名为true的进程接着执行。用signal消息名表示向合作进程发送消息功能:发送消息名,并将其值置为true。利用过程wait和singnal描述计算进程Pc和打印进程Pp的同步关系(1) 设消息名Bufempty表示buf为空,消息名Buffull表示Buf中装满了数据。(2) 初始化Bufempty=true,Buffull=false.。(3) 描述:Pc : A:wait(Bufempty) 计算 Buf 计算结果 Bufempty false signal(Buffull) Goto APp : B:wait(Bufful) 打印Buf中的数据 去除Buf中的数据 Bufful false signal(Bufempty) Goto B私有信号量private Semaphore:进程同步的信号量只及制约进程及被制约进程有关而不是及整组并发进程有关。因此该信号量称为私有信号量。用P,V原语操作实现同步首先,为各并发进程设置私有信号量,然后,为私有信号量赋初值,最终,利用P,V原语和私有信号量规定各进程的执行依次。例:设进程Pa和Pb通过缓冲区队列传递数据。Pa为发送进程,Pb为接收进程。Pa发送数据时调用发送过程deposit(data),Pb承受数据时调用过程remove(data),且数据的发送和承受过程满意如下条件:1在对于生产者进程:产生一个数据,当要送入缓冲区时,要检查缓冲区是否已满,假设未满,那么可将数据送入缓冲区,并通知消费者进程;否那么,等待;对于消费者进程:当它去取数据时,要看缓冲区中是否有数据可取,假设有那么取走一个数据,并通知生产者进程,否那么,等待。这种相互等待,并互通信息就是典型的进程同步。同时,缓冲区是个临界资源,因此,诸进程对缓冲区的操作程序是一个共享临界区,因此,还有个互斥的问题。 通信communication意味着进程间传递数据。操作系统可以看作是各种进程组成的,这些进程都具有各自独立的功能,且大多数都被外部须要而启动执行。在单机系统中进程的通信有4种形式:1主从式2会话式3消息或邮箱机制4共享存储区方式会话方式的特点:(1)运用进程在运用效劳进程所供应的效劳之前,必需得到效劳进程的许可。(2)效劳进程依据运用进程的要求供应效劳,但对所供应效劳的限制由效劳进程自身完成。3运用进程和效劳进程在进展通信时有固定连接关系。消息或邮箱机制的特点是:1只要存在空缓冲区或邮箱,发送进程就可以发送消息。2及会话系统不同,发送进程和承受进程之间无干脆联接关系。3发送进程和承受进程之间存在缓冲区或邮箱用来存放被传送消息。邮箱通信就是由发送进程申请建立一及承受进程联接的邮箱。设置邮箱的最大好处是发送进程和承受进程之间没有时间上的限制。共享存储区方式不要求数据移动,两个须要相互交换信息的进程通过共享数据区的操作到达相互通信的目的。9.死锁问题死锁:指个并发进程彼此相互等待对方所拥有的资源,且这些并发进程在得到对方的资源之前不会释放自己所拥有的资源。从而造成大家都想得到资源而又得不到资源,个并发进程不能接着向前推动的状态。死锁的起因:根本缘由在于系统供应的资源个数少于并发进程所要求的该类资源数。产生死锁有四个必要条件:1互斥条件。并发进程所要求和占有的资源是不能同时被两个以上进程运用或操作的,进程对他所须要的资源进展排他性限制。 2不剥夺条件。进程所获得的资源在未运用完毕之前,不能被其它进程强行剥夺,而只能由获得该资源的进程自己释放。3局部安排。进程每次申请它所须要的一局部资源,在等待新资源的同时,接着占用已安排的资源。4环路等待条件。存在一种进程循环链,链中每一个进程已获得的资源同时被下一个进程所恳求。只要有一个条件不满意,死锁就可解除。预防死锁 1破坏“恳求及保持条件 每个进程在运行之前,必需预先提出自己所要运用的全部资源,调度程序在该进程所须要的资源末得到满意之前,不让它们投入运行,并且当资源一旦安排给某个进程之后,那么在该进程的整个运行期间相应资源始终被它占有,这就破坏了产生死锁的局部安排条件。2破坏环路条件 对系统供应的每一项资源,由系统设计者将它们按类型进展线性排队,并给予不同的序号。3资源受控动态安排 为了防止死锁发生,操作系统必需依据预先驾驭的关于资源用法的信息限制资源安排,使得共同进展路径的下一步不致于进入危急区,即只要有产生死锁的可能性,就防止把一种资源安排给一个进程。 死锁的检测和复原 1资源剥夺法 1复原算法。即复原计算结果和状态。2建立检查点主要是用来复原安排前的状态。 2撤消进程法 按确定的依次中止进程序列,直至已释放到有足够的资源来完成剩下的资源为止。第四章1.一个作业从提交给计算机系统到执行完毕退出系统,一般都要经验提交, 收容, 执行和完成四个状态。一个作业在其处于从输入设备进入外部存储设备的过程成为提交状态。处于提交状态的作业,因其信息尚未全部进入系统,所以不能被调用程序选取。收容状态也称为后备状态,输入管理系统不断地将作业输入到外存中对应局部或称输入井,即特地用来存放待处理作业信息的一组外存分区。假设一个作业的全部信息已全部被输入进输入井,那么,在它还未被调度去执行之前,该作业处于收容状态。作业调度程序从后备作业中选取假设干作业到内存投入运行。它为被选中作业建立进程并安排必要的资源,这时,这些被选中的作业处于执行状态。当作业运行完毕,但它所占用的资源尚未全部被系统收回时,该作业处于完成状态。一般来说,处理机调度可分为4级:作业调度, 交换调度, 进程调度, 线程调度。 作业调度:又称宏观调度或高级调度,其主要任务是按确定的原那么对外存输入井上的大量后备作业进展选择,给选出的作业安排内存, 输入输出设备等必要的资源,并建立相应的根程序,以使该作业的进程获得竞争处理机的权利,另外,当该作业执行完毕时,还负责回收系统资源。交换调度:又称中级调度,其主要任务是依据给定的原那么和策略,将处于外存交换区中的就绪状态或就绪等待状态的进程调入内存,或把处于内存就绪状态或内存等待状态的进程交换到外存交换区。交换调度主要涉及内存的管理和扩大,一般将它归在存储管理之中。进程调度:又称微观调度或低级调度,其主要任务是依据某种策略和方法选取一个处于就绪状态的进程占用处理机。只有在多道批处理系统中才有作业调度,而在分时和实时系统中一般只有进程调度, 交换调度和线程调度。这是因为在分时和实时系统中,为了缩短响应时间或为了满意用户需求的截止时间,作业不是建立在外存中,而是干脆建立在内存中。作业调度的功能:1记录系统中各作业的状况,包括执行阶段的有关状况。通常,系统为每个作业建立一个作业限制表JCB记录这些有关信息。作业限制块JCB:在作业调度的过程中记录作业各方面的信息。它随作业的创立而产生,随作业的撤消而被去除。2从后备队列中选取一局部作业投入执行3为被选中的作业做好执行前的打算工作。4在作业执行完毕时做好善后处理工作。作业调度目标:(1) 对全部作业应当是公允合理的。(2) 应使设备有高的利用率。(3) 每天执行尽可能多的作业(4) 有快的响应时间对于批处理系统,作业的平均周转时间或平均带权周转时间,被作为衡量调度算法优劣的标准;对于分时系统和实时系统,外加平均响应时间作为衡量调度算法优劣的标准(1)周转时间:作业i从提交时刻到完成时刻称为作业的周转时间。Ti = Tei - TsiTei为作业i的完成时间,Tsi为作业的提交时间一个作业的周转时间说明白该作业在系统内停留的时间,包含两局部:一是等待时间;二为执行时间Ti = Twi + TriTwi主要是指作业i由后备状态到执行状态的等待时间,它不包括作业进入执行状态后的等待时间。一批作业的平均周转时间为: nT=1/n Ti i=1带权周转时间Wi=Ti/Tri Ti作业周转时间 Tri作业执行时间一批作业的平均带权周转时间为 nW=1/n Wi i=13进程调度进程调度的功能:用PCB块记录系统中全部进程的执行状况依据确定的调度算法,选择一个处于就绪状态的进程,给它安排处理机(这是最重要的功能)实施进展进程上下文的切换引起进程调度的缘由:(1) 正在执行的进程执行完毕。这时,假如不选择新的就绪进程执行,将奢侈处理机资源。(2) 执行中进程自己调用堵塞原语将自己堵塞起来进入睡眠等待状态。(3) 执行中进程调用了P原语操作,从而因资源缺乏而被堵塞;或调用了V原语激活了等待资源的进程队列。(4) 执行中进程提出了I/O恳求后被堵塞。(5) 在分时系统中时间片已经用完。(6) 在执行完系统调用,在系统程序返回用户进程,可认为系统进程执行完毕,从而可调度选择一新的用户程序执行。以上都是CPU执行不行剥夺方式下做引起的进程调度的缘由,在CPU执行方式是可剥夺时,还有:(7) 就绪队列中的某进程的优先级变得高于当前执行进程的优先级,从而也将发生进程调度。可剥夺方式:即就绪队列中一旦有优先级高于当前进程优先级的进程存在时,便马上发生进程调度,转让处理机。非剥夺方式不行剥夺方式:即使在就绪队列存在有优先级高于当前执行进程时,当前进程仍将接着占有处理机,直到该进程因自己调度调用原语操作或, 等待I/O进入堵塞状态或时间片用完时才重新发生调度让出处理机。进程调度性能评价1进程调度性能是衡量操作系统性能的一个重要指标2在大多数状况下,利用测试或模拟系统响应时间的方法来评价进程调度的性能先来先效劳(FCFS)算法将用户作业和就绪进程按提交依次或变成就绪状态的先后排成队列,并依据先来先效劳的方式进展调度处理。优点:在一般意义下是公允的,即每个作业或进程都依据它们在队列中等待时间长短来确定它们是否优先享受效劳。缺点:对于那些执行时间较短的作业或进程来说,假如它们在某些执行时间很长的作业或进程之后到达,那么它们等待很长时间。(时间片)轮转法(RR)算法描述:就绪队列按进程到达的时间来排列。处理机的时间被分为固定大小的时间片。调度程序总是选择就绪队列中的第一个进程。一个执行进程假如在用完一个时间片后还没有完成其任务,它就自动释放处理机回到就绪队列的末尾重新排队,等待下一次被调度。缺点:只能用来安排那些可抢占资源,而且这种算法只能用于进程调度,不能用于作业调度作业调度包含了不行抢占资源。 时间片的选取特别重要,时间片长度的选择会干脆影响系统开销和响应时间。假如时间片长度过短,那么调度程序剥夺处理机的次数增多,这将使进程上下文交换次数也大大增加,加重了系统开销。假如时间片长度选择过长(大),大到一个进程足以完成其全部运行工作所需的时间,那么时间片轮转法就退化为先来先效劳策略了。最正确的时间片量值应能使分时用户得到好的响应时间。时间片的确定在轮转法中,时间片长度q依据系统对响应时间的要求R和就绪队列中所能容纳的最大进程数Nmax确定的。 q=R/Nmax一种改良的方法就是每当一轮调度开场时,系统依据就绪队列中当前的进程数计算一次q,作为新一轮调度的时间片。多级反应轮转法(进程调度)1在时间片轮转法中设置三个就绪队列2每个队列建立时按FCFS排列,同一队列中进程的优先级一样,不同队列具有不同的优先级优先级高的队列中进程的时间片短,优先级低的队列中进程的时间片长。3进程调度时,先调度高优先级就绪队列中的进程,当高优先级就绪队列为空时才调度优先级低的就绪队列中的进程4一个进程在执行过程中要经验不同的就绪队列优先级法算法描述:依据某种原那么给作业或进程确定一个优先级,进程的就绪队列或作业的后备队列按对象的优先级进展排列,高前低后。对象进入队列是插入。当调度发生时,排列在最前面的进程或作业被调度。确定优先级的方法有两类:动态法和静态法静态法是依据作业或进程的静态特性,在作业或进程开场执行之前就确定它们的优先级,一旦开场执行后就不能变更。动态法:把作业或进程静态性和动态性结合起来确定作业或进程的优先级,随着作业或进程的执行过程,优先级不断变更。作业调度中静态优先级确定原那么:(1) 由用户自己依据作业的紧急程度输入一个适当的优先级(2) 由系统或操作员依据作业类型指定优先级。(3) 系统依据作业要求资源状况确定优先级。进程调度静态优先级确定原那么:(1) 依据进程的类型给及不同的优先级。(2) 将作业的静态优先级作为它所属进程的优先级。由于在进程调度中静态优先级确定方法的缺陷:系统效率低, 调度性能不高,所以多采纳动态的方法确定优先级。进程调度动态优先级确定原那么:(1) 依据进程占有CPU时间的长短来确定。一个进程占有处理机时间越长,那么在被堵塞后再次获得调度的优先级越低,反之,获得调度的可能性越大(2) 依据就绪进程等待CPU的时间长短来确定。一个就绪进程在就绪队列中等待的时间越长,那么它获得调度选中的优先级就越高。最短作业优先法SJF(作业调度)选择那些估计须要执行时间最短的作业投入执行,为它们创立进程和安排资源。优点:可使得系统在同一时间内处理的作业