苏州科技学院操作系统期末复习整理Word文件下载.docx
《苏州科技学院操作系统期末复习整理Word文件下载.docx》由会员分享,可在线阅读,更多相关《苏州科技学院操作系统期末复习整理Word文件下载.docx(20页珍藏版)》请在冰豆网上搜索。
有效性、方便性、可扩充性、开放性
*3操作系统的特征
操作系统都具有并发、共享、虚拟和异步这四个基本特征。
(1)并发性:
指两个或多个时间在同一时间间隔发生。
在多道程序环境下,并发性是指在一段时间宏观上有多个程序在同时运行。
进程和并发性是现代操作系统中最重要的基本概念
(2)共享性:
是指系统中的资源可供存中多个并发执行的进程(线程)共同使用,相应的把这种资源共同使用成为资源共享,或称为资源复用。
方式:
a)互斥共享方式。
b)同时访问方式。
(3)虚拟技术:
是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。
用于实现虚拟的技术称为虚拟技术。
两种方式实现:
a)时分复用技术。
b)空分复用技术。
(4)异步性:
进程是以人们不可预知的速度前进,此即进程的异步性。
*4操作系统的功能
(1)处理机管理功能
(2)存储器管理功能。
(3)设备管理功能。
(4)文件管理功能。
进程管理,处理机调度与死锁
*1进程的定义、进程的特征、进程的基本状态及其转换过程和转换条件,进程的挂起状态。
临界资源的定义
进程的定义:
(1)进程是程序的一次执行。
(2)进程是一个程序及其数据在处理机上顺序执行时所发生的活动。
(3)进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。
进程实体:
由程序段。
相关的数据段和PCB(进程控制块)三部分构成
在引入进程实体的概念后,我们可以把传统OS中的进程定义为:
进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。
进程的特征:
结构特征、动态性、并发性、独立性、异步性。
进程的基本状态:
(1)就绪状态。
(2)执行状态。
(3)阻塞状态。
(注释:
其他状态有,挂起状态、创建状态、终止状态。
)
引起挂起状态的原因有:
终端用户的请求、父进程请求、负荷调节的需要、操作系统的需要。
临界资源的定义:
在一段时间只允许一个进程访问的资源。
2进程控制块PCB与进程的生命期。
用程序描述进程前趋图。
进程控制块PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构,OS是根据PCB来对并发执行的进程进行控制和管理的。
进程的生命周期:
(1)进程的创建
(2)进程的终止(3)进程的阻塞与唤醒(4)进程的挂起与激活
用程序描述进程前趋图见书本P36页
*3进程控制:
进程的创建、终止、阻塞与唤醒、挂起与激活
进程的创建:
一旦操作系统发现了要求创建新进程的事件(用户登录、作业调度、提供服务、应用请求)后,便调用进程创建原语Creat()按步奏创建一个新进程。
(1)申请空白PCB
(2)为新进程分配资源(3)初始化进程控制块(4)将新进程插入就绪队列。
终止:
正常结束、异常结束、外界干预。
原语Holt。
过程:
根据标识符找到PCB若执行则终止有子进程也终止释放全部资源从队列移出。
引起阻塞或唤醒时间:
1)请求系统服务
2)启动某种操作
3)新数据尚未到达
4)无新工作可做
阻塞原语block()唤醒原语wakeup()挂起原语suspend()激活原语active()
*4线程的基本概念。
线程与进程的区别
线程:
比进程更小的能独立运行的基本单位。
为了减少程序在并发执行所付出的时空开销,使OS具有更好的并发性。
区别:
线程又称为轻型进程,进程称为重型进程。
一个进程通常有一个或多个线程。
(1)调度。
线程作为调度和分派的基本单位,进程作为资源拥有的基本单位。
(2)并发性。
进程之间可以并发执行,一个进程的多个线程之间也可并发执行。
(3)拥有资源。
进程都可以拥有资源。
线程不再拥有系统资源(也有一点必不可少的资源),但它可以方位隶属于进程的资源。
(4)系统开销。
进程需要操作系统所付出的开销明显大于线程的开销。
*5进程同步的基本概念、临界区与临界资源、临界区的进入与退出、进程互斥
进程同步的主要任务是对多个相关进程在执行次序上进行协调,以使并发执行的诸进程之间能有效地共享资源和相互合作,从而使程序的执行具有可再现性。
由于资源共享和进程合作,诸进程间有两种形式的制约关系。
(1)间接相互制约关系。
源于资源共享。
(2)直接相互制约关系。
主要源于进程间的合作。
临界资源定义见前面!
临界区:
人们把每个进程中访问临界资源的那段代码称为临界区。
每个程序在进入临界区之前,应先对欲访问的临界资源进行检查,看它是否正被访问。
如未被访问,进程便可进入临界区访问该临界资源,并设置它正被访问的标志,如果正在被访问,则本进程不能进入临界区。
在临界区前加一段用于上述检查的代码,这段代码称为进入区。
相应地,在临界区后面也要加上一段称为退出区的代码,用于将临界区正在被访问的标识恢复为未被访问的状态。
为了实现进程互斥的进入自己的临界区可用软件方法,更多的是在系统设置专门的同步机构来协调各进程间的运行。
所有同步机制都应遵循:
(1)空闲让进
(2)忙则等待(3)有限等待(4)让权等待
*6通信量机制实现互斥,整型信号量与记录型号量
整型信号量:
表示资源数目的整型量S,和两个标准的原子操作(AtomicOperation)wait(S)和signal(S)来访问。
这两个操作一直被分别称为P、V操作。
wait(S):
whileS≤0dono-op
S∶=S-1;
signal(S):
S∶=S+1;
记录型信号量:
增加一个进程链表L,用于上述的所有等待进程。
采用了记录型的数据结构。
*7经典进程同步问题:
生产者-消费者问题P,V
8进程通信的类型,管道、共享存储区、消息通信原理。
进程通信的类型:
1.共享存储器系统(Shared-MemorySystem)
(1)基于共享数据结构的通信方式
(2)基于共享存储区的通信方式
2.消息传递系统(Messagepassingsystem)
分为直接通信方式和间接通信方式。
3.管道(Pipe)通信
管道是用于连接一个读进程和一个写进程以实现他们之间通信的一个共享文件,又名pipe文件。
*9进程调度类型(与作业调度的区别),进程调度算法:
先来先服务算法FCFS、短作业优先算法SJ(P)F、时间片轮转算法、优先权调度算法
作业调度(高级调度或长程调度)调度对象是作业
进程调度(低级调度或短程调度)调度对象是进程
进程调度方式:
非抢占方式、抢占方式(优先权原则、短进程优先原则、时间片原则)
先来先服务调度算法(FCFS):
先来的先服务(FCFS、SJP例子见书本92页,RR95页)
短作业(进程)优先调度算法(SJ(P)F):
找服务时间最短的,从短到长
时间片轮转算法(RR):
按来到时间(到达时间加服务完后再排队时间)排队执行
优先权调度算法:
非抢占式、抢占式。
优先权:
静态、动态。
高响应比优先算法
*10.(平均)周转时间,(平均)带权周转时间,响应时间
(平均)周转时间:
从作业被提交给系统到作业完成时间间隔。
(平均周转时间就是所有的周转时间求平均)
(平均)带权周转时间:
作业周转时间与系统为它服务时间的比值(平均带权周转时间就是所有带权周转时间求平均)
响应时间:
从用户通过键盘提交一个请求开始,直至系统首次产生响应为止的时间
*11死锁的基本概念、死锁产生的原因、产生死锁的必要条件;
死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵局状态时,若无外力作用,他们都将无法再向前推进。
产生死锁的原因:
(1)竞争资源。
(2)进程间推进顺序非法。
产生死锁的必要条件:
(1)互斥条件
(2)请求和保持条件
(3)不剥夺条件
(4)环路等待条件
12、死锁的预防和避免方法
预防死锁:
1.摒弃“请求和保持”条件
2.摒弃“不剥夺”条件
3.摒弃“环路等待”条件
避免死锁:
在资源的动态分配过程中,用某种方法去防止系统进入不安全状态。
(银行家算法)
*13、银行家算法
先看是否超过还需要的资源数量,再看是否超过系统还有的资源数量,都满足尝试分配给该进程,找安全序列即它运行完后的资源能不能有一个顺序让其他进程都能顺利运行结束。
(例子见书本110页)
存储器管理
*1存储管理的功能
存分配、存保护、地址映射、存扩充
*2连续分配存储管理:
单一连续分配、固定分区分配、动态分区分配、动态重定位分区分配,动态分区分配算法、分配与回收过程。
单一连续分配:
最简单的一种存储管理方式,只能用于单用户、单任务的操作系统中。
固定分区分配:
多道程序环境下,整个用户空间划分为若干个固定大小的区域,每个分区中只装入一道作业。
分区大小可等可不相等。
动态分区分配:
可变分区分配,分配的时候给区域不事先划分
动态重定位分区分配:
没有大空间的时候可以紧凑
动态分区分配算法:
按空闲块的方式不同,可以有以下四种算法:
首次适应法:
每次从低址到高找到合适的放入
循环首次适应法:
从上次放入地方到高找到合适的放入
最佳适应法:
大小最合适的
最坏适应法:
大小最不合适的
分配流程:
存回收:
回收存:
当进程运行完毕释放存时,系统根据回收区的首址,从空闲区链(表)中找到相应的插入点,进行合并回收
①回收区与插入点的前一个空闲分区F1相邻接
②回收分区与插入点的后一空闲分区F2相邻接
③回收区同时与插入点的前、后两个分区邻接
④回收区既不与F1邻接,又不与F2邻接
3了解对换作用与工作过程
把存中暂时不能运行的进程或者暂时不用的程序和数据,调出到外存上,以便腾出足够的存空间,再把已具备运行条件的进程或进程所需要的程序和数据,调入存。
对换是提高存利用率的有效措施。
*4分页存储管理方式基本工作原理、页表及地址变换机构,快表。
离散分配方式基本单位是页。
分页存储管理,是将一个进程的逻辑地址空间分成若干个大小相等的片,称为页面或页,并为各页加以编号,从0开始。
把存空间分成与页面相同大小的若干个存储块,称为(物理)块或页框(frame),也同样为它们加以编号。
在为进程分配存时,以块为单位将进程中的若干个页分别装入到多个可以不相邻接的物理块中。
页表
地址变换机构
快表:
具有并行查寻能力的特殊高速缓冲寄存器,又称为“联想寄存器”
5分段存储管理方式基本工作原理、段表及地址变换机构
原理和分页一样只是基本单位是段。
页固定段不固定。
(见书本140页)
*6虚拟存储器的基本概念、局部性原理
所谓虚拟存储器,是指具有请求调入功能和置换功能,能从逻辑上对存容量加以扩充的一种存储器系统。
其逻辑容量由存容量和外存容量之和所决定。
局部性原理:
早在1968年,Denning.P就曾指出:
(1)程序执行时,除了少部分的转移和过程调用指令外,在大多数情况下仍是顺序执行的。
(2)过程调用将会使程序的执行轨迹由一部分区域转至另一部分区域,但经研究看出,过程调用的深度在大多数情况下都不超过5。
(3)程序中存在许多循环结构,这些虽然只由少数指令构成,但是它们将多次执行。
(4)程序中还包括许多对数据结构的处理,如对数组进行操作,它们往往都局限于很小的围。
局限性还表现在:
时间局限性和空间局限性
*7请求分页存储管理方式基本工作原理、调页策略。
缺页中断与一般中断的区别。
地址转换。
请求分页系统是建立在基本分页基础上,为了能支持虚拟存储器功能而增加了请求调页功能和页面置换功能,每次调入调出基本单位都是长度固定的页面。
调页策略:
1.调入页面的时机:
预调页策略、请求调页策略
2.确定从何处调入页面
3.页面调入过程
缺页中断与一般中断的区别:
1)在指令执行期间产生和处理中断信号
2)一条指令在执行期间,可能产生多次缺页中断
地址转换过程
*8页面置换算法(重点FIFO、LRU,OPT),产生抖动的原因。
最佳置换算法(OPT):
最晚被使用的页面换出
先进先出页面置换算法(FIFO):
先进入的先出去
最近最久未使用置换算法(LRU):
最久没有使用的换出
Clock置换算法即最近未用算法(NRU)
最少使用置换算法(LFU)、页面缓冲算法(PBA)
产生抖动的原因:
置换算法选择不当
设备管理
*1设备管理的功能
缓冲区管理、设备分配、设备处理、虚拟设备以及实现设备独立性等
2I/O控制方式:
程序I/O、中断驱动I/O、DMA、I/O通道,什么是通道
程序I/O方式、中断驱动I/O控制方式、直接存储器访问(DMA)I/O控制方式、I/O通道控制方式。
通道:
I/O通道是一种特殊的处理机,它具有执行I/O指令的能力,并通过执行通道(I/O)程序来控制I/O操作。
*4缓冲管理:
缓冲区的概念、单缓冲、双缓冲、循环缓冲、缓冲池结构和工作原理
缓冲区的概念:
为了缓和CPU与I/O设备速度不匹配的矛盾,提高CPU和I/O设备的并行性,在现代操作系统中,几乎所有的I/O设备在与处理机交互数据时都用了缓冲区。
缓冲管理的主要职责是组织好这些缓冲区,并提供获得和释放缓冲区的手段。
引入缓冲区原因:
1.缓和CPU与I/O设备间速度不匹配的矛盾
2.减少对CPU的中断频率,放宽对CPU中断响应时间的限制
3.提高CPU与I/O设备之间的并行性
分为:
单缓冲、双缓冲、循环缓冲(结构原理见书本172页)
缓冲池结构和工作原理:
5设备分配:
数据结构DCT、COCT、CHCT、SDT;
独占设备、共享设备、虚拟设备、逻辑设备、设备的独立性概念,设备分配算法,独占设备的分配程序
设备控制表(DCT):
每一个设备都配置了一DCT,用于记录本设备的情况
字段:
设备类型、设备标识字段、设备队列队首指针、设备状态、与设备连接的控制器表指针、重复执行次数
控制器控制表(COCT):
系统为每一个控制器都设置了一用于记录本控制器情况的控制器控制表。
通道控制表(CHCT)每一个通道都配有一CHCT。
系统设备表(SDT)这是系统围的数据结构,其中记录了系统中全部设备的情况。
独占设备:
一段时间只允许一个用户(进程)访问的设备,即临界资源
共享设备:
一段时间允许多个进程同时访问的设备
虚拟设备:
指通过虚拟技术奖一台独占设备变换为若干台逻辑设备,供若干个用户(进程)同时访问。
为了实现设备独立性而引入了逻辑设备和物理设备这两个概念
逻辑设备:
在应用程序中,使用逻辑设备名称来请求使用某类设备;
物理设备:
系统在实际执行时,使用物理设备名称
设备的独立性:
即设备无关性。
应用程序独立于具体使用的物理设备。
设备分配算法:
先来先服务和优先级高者优先
独占设备的分配程序:
基本的设备分配程序:
1)分配设备
2)分配控制器
3)分配通道
设备分配程序的改进:
1)增加设备的独立性
2)考虑多通路情况
6什么是SPOOLing,SPOOLing系统组成、基本工作原理和特点,共享打印机实现原理
SPOOLing(外部设备联机并行操作):
在主机的直接控制下,实现脱机输入、输出功能。
此时的外围操作与CPU对数据的处理同时进行,我们把这种在联机情况下实现的同时外围操作称为SPOOLing,或称为假脱机操作。
通过SPOOLing技术可将一台物理I/O设备虚拟为多台逻辑I/O设备,同样允许多个用户共享一台物理I/O设备。
组成:
三部分1.输入井和输出井。
2.输入缓冲区和输出缓冲区。
3.输入进程SPi和输出进程SPo。
SPOOLing系统的组成
SPOOLing系统的特点:
(1)提高了I/O的速度。
(2)将独占设备改造为共享设备。
(3)实现了虚拟设备功能
打印机工作原理:
当用户进程请求打印输出时,SPOOLing系统同意为它打印输出,但并不真正立即把打印机分配给该用户进程,而只为它做两件事:
①由输出进程在输出井中为之申请一个空闲磁盘块区,并将要打印的数据送入其中;
②输出进程再为用户进程申请一空白的用户请求打印表,并将用户的打印要求填入其中,再将该表挂到请求打印队列上。
7什么是设备处理程序(设备驱动程序)、功能、特点(见实验)
设备处理程序(设备驱动程序):
它是I/O进程与设备控制器直接的通信程序又由于它常以进程的形式存在,故以后就简称之为设备驱动进程。
功能:
(1)接收由I/O进程发来的命令和参数,并将命令中的抽象要求转换为具体要求,例如,将磁盘块号转换为磁盘的盘面、磁道号及扇区号。
(2)检查用户I/O请求的合法性,了解I/O设备的状态,传递有关参数,设置设备的工作方式。
(3)发出I/O命令,如果设备空闲,便立即启动I/O设备去完成指定的I/O操作;
如果设备处于忙碌状态,则将请求者的请求块挂在设备队列上等待。
(4)及时响应由控制器或通道发来的中断请求,并根据其中断类型调用相应的中断处理程序进行处理。
(5)对于设置有通道的计算机系统,驱动程序还应能够根据用户的I/O请求,自动地构成通道程序。
(1)驱动程序主要是指在请求I/O的进程与设备控制器之间的一个通信和转换程序。
(2)驱动程序与设备控制器和I/O设备的硬件特性紧密相关,因而对不同类型的设备应配置不同的驱动程序。
(3)驱动程序与I/O设备所采用的I/O控制方式紧密相关。
(4)由于驱动程序与硬件紧密相关,因而其中的一部分必须用汇编语言书写。
(5)驱动程序应允许可重入。
(6)驱动程序不允许系统调用。
8、了解磁盘I/O:
数据组织、磁盘性能指标、磁盘调度算法。
性能:
数据的组织、磁盘的类型和访问时间(寻道时间、旋转延迟时间、传输时间)
数据组织:
盘片、盘面、磁道、扇区
磁盘调度算法:
先来先服务(FCFS):
按请求的先后次序依次访问
最短寻道时间优先(SSTF):
访问与当前磁头位置距离最近的磁道
扫描算法(SCAN):
按来回顺序不变的访问到头才返回反向访问到头(电梯调度算法)
循环扫描算法(CSCAN):
磁头单向运行,到头后回到最开始
(NStepSCAN算法、FSCAN算法)
文件管理
*1文件管理的功能。
文件系统主要完成的工作。
文件管理的功能:
1.文件存储空间的管理
2.目录管理
3.文件的读/写管理
4.文件的共享和保护
5.(有的书上还有用于文件的逻辑地址转换为物理地址的机制)
文件系统主要完成的工作:
对用户文件和系统文件进行管理,以方便用户使用,并保证文件的安全性。
1.文件的存取。
包括顺序存取和随机存取
3.文件组织。
物理文件和逻辑文件的转换
4.文件存储空间管理
5.文件操作。
创建,打开,读,写,关闭
6.文件的共享与保护
*2文件类型,文件逻辑结构:
顺序文件、索引文件、索引顺序文件的结构和特点(优缺点)
文件类型:
1.按用途分类:
系统文件、用户文件、库文件
2.按文件中数据的形式分类:
源文件、目标文件、可执行文件
3.按存取控制属性分类:
只执行文件、只读文件、读写文件
4.按组织形式和处理方式分类:
普通文件、目录文件、特殊文件(特指I/O设备)
文件逻辑结构:
这是从用户观点出发所观察到的文件组织形式,是用户可以直接处理的数据及其结构,它独立于文件的物理特性,又称为文件组织。
文件的逻辑结构可分为:
有结构文件(记录式文件)、无结构文件(流式文件)
有结构文件:
1.顺序文件:
一系列记录按某种顺序排列所形成的文件。
其中的记录通常是定长的。
优点:
批量存储时效率最高。
顺序文件才能存储在磁带上。
缺点:
交互场合在大文件或者可变长记录文件查找修改单个记录开销大,增删记录困难。
2.索引文件:
当记录为可变长度时,通常为之建立一索引表,并为每个记录设置一个表项,以加快对记录检索的速度。
较快的检索速度,主要用于信息处理的及时性要求较高的场合。
除了主文件还须配置一索引表,而每个记录都要有一个索引项,因此提高了存储费用。
3.索引顺序文件:
上述两种方式的结合。
它为文件建立一索引表,为每一组记录中的第一个记录设置一个表项。
克服了变长记录文件不便于直接存储的缺点。
文件大时依旧需要查找很多次(解决多级索引)
文件物理结构:
顺序文件结构、式文件结构、索引文件结构
3目录管理:
FCB和索引结点、目录查询技术
目录管理实现按名存取。
FCB(文件控制块):
用于描述和控制文件的数据结构。
文件与文件控制块一一对应,而人们把文件控制块的有序集合称为文件目录。
文件控制块含有三类信息
1.基本信息(文件名、文件物理位置、文件逻辑结构、文件的物理结构)
2.存取控制信息(文件主的存取权限、核准用户的存取权限以及一般用户的存取权限)
3.使用信息(文件的建立日期和时间、文件上一次修改的日期和时间以及当前使用信息)
索引节点:
使文件描述信息单独形成形成一个称为索引节点的数据结构。
磁盘索引结点:
每个文件有唯一一个磁盘索引结点,主要包括:
文件主标识符、文件类型、文件存取权限、文件物理地址、文件长度、文件计数、文件存取时间
存索引结点:
文件被打开时,要将磁盘索引结点拷贝到存的索引结点便于以后使用,增加了索引结点编号、状态、访问计数、文件所属文件系统的逻辑设备号、指针。
目录查询技术:
线性检索法和Hash方法
4文件共享方法,基于索引结点和符号链的文件共享
共享方法:
基于索引点的共享方式和利用符号链实现文件共享
*5外存分配方法:
连续分配、分配、索引分配
1.连续分配:
要求为每一个文件分配一组相邻的盘块。
所形成的文件结构称为顺序文件结构,此时的物理文件称为顺序文件。
顺序访问容易、顺序访问速度快。
要求有连续的存储空间、必须事先知道文件的长度
2、分配:
通过在每个盘块上的指针,将同属于一个文件的多个离散