操作系统原理
- 操作系统原理复习
- 1.名词解释
- 2.简答题
- 1.简述进程的三种基本状态及其相互转换
- 2.进程调度的时机有哪些
- 3.I/O软件的四个层次并简述其功能
- 4.简述SPOOLing系统的虚拟设备原理
- 5.资源虚化与资源抽象的区别是什么
- 6.什么叫通道技术?通道技术的作用是什么?
- 7.简述请求页式存储管理的优缺点
- 8.产生死锁的4个必要条件是什么?如何防止死锁的发生
- 9.存储管理的功能是什么?
- 10.I/O软件分为四个层次,试说明以下各个工作是在哪一层完成的
- 11.虚拟存储器大小有什么限制?
- 12.文件操作有哪些
- 13.进程间同步和互斥的含义是什么?分别解决什么问题?
- 14.程序状态字包含哪些主要内容
- 15.什么是输入输出操作
- 16.为实现分页式虚拟存储,页表中至少应包含有哪些内容
- 17.简述请求页式存储管理的优缺点
- 18.虚拟存储器的基本特征是什么?虚拟存储器的容量主要受到什么限制
- 19.段页式管理这种存储管理方式中为什么要设置高速联想寄存器?
- 20.进程和程序有什么区别和联系
- 21.什么是系统调用?简述系统调用的实现过程
- 22.简述操作系统的基本特征。
- 23.试分析引起进程阻塞和唤醒的事件主要有哪些
- 24.简述在操作系统中引入缓冲的主要原因
- 25.以独占设备为例,简述设备分配的过程。
- 26.在操作系统中,P操作和V操作各自的动作是如何定义的。
- 27.二级目录和多级目录的好处
- 28.什么是分页,什么是分段?二者的主要区别是什么。
- 第一章
- 第二章
- 第三章
- 第四章
- 知识点
- 1.何谓静态链接?静态链接时需要解决两个什么问题?
- 2.何谓装入时动态链接?装入时动态链接方式有何优点?
- 3.在动态分区分配方式中,应如何将各空闲分区链接成空闲分区链。
- 4.为什么要引入动态重定位?如何实现?
- 5.什么是基于动态顺序搜索的动态分区分配算法?它可分为哪几种?
- 6. 什么是基于引索搜索的动态分区分配算法?它可分为几种?
- 7.为什么要引入对换?对换可分为哪几种类型
- 8.什么是页面?什么是物理块?页面的大小应该如何确定?
- 9.什么是页
- 10.在分页系统中是如何实现地址转换的
- 11.具有快表时是如何实现地址变换的
- 12.在具有快表的段页式存储管理方式中,如何实现地址变换?
- 13.为什么说分段系统比分页系统更易于实现信息的共享和保护?
- 14.分页和分段存储管理有何区别?
- 第五章
- 第六章
- 第七章
- 第八章
- 填空题
操作系统原理复习
计算机操作系统是方便用户管理和控制计算机软硬件资源的系统软件(或程序集合)
操作系统目前有五大类型(批处理、分时、实时、网络和分布式)和五大功能(作业管理、文件管理、存储管理、设备管理和进程管理)
1.名词解释
1.系统调用
答案:系统调用是为了扩展机器的功能,增强系统能力,方便用户使用而在内核中建立的过程(函数),它是用户程序或其它系统程序获得操作系统服务的唯一途径,系统调用也成为广义指令。
2.死锁
答案:在一个进程集合中的每个进程都在等待只能由该集合中的其它进程才能引发的事件,而无限期陷入僵持的局面
指并发进程彼此互相等待对方所用的资源,而且这些并发进程在得到对方的资源之前不会释放自己所拥有的资源,从而造成大家都想得到资源又得不到资源,个并发进程不能继续向前推进的状态
3.虚拟储存器
答案:在具有层次结构存储器的计算机系统中,采用自动实现部分装入和部分对换功能,为用户提供一个比物理主存容量大,可寻址的模拟“主存储器”,有进程中的目标代码、数据等的虚拟地址组成的虚拟空间称为虚拟存储器。也可解释为仅把作业的一部分装入内存便可运行作业的操作系统;具体的说是指具有调入功能和置换功能,能从逻辑上对内存容量进行扩充的一种存储器系统
4.索引节点
答案:索引节点是一种目录结构组织方式。该方法将查找文件所需的文件名与找到文件后需要访问的文件属性信息分开存放,查找期间仅需加载由文件名和标识文件属性信息存放位置的索引节点号组成的基本目录项。找到目标目录后,才根据索引节点号加载所需文件属性信息项。
5.中断
答案:中断是指程序执行过程中,当发生某个事件时,中止cpu上现行程序的运行,引出处理该事件程序的执行过程
6.临界区
答案:并发进程中与共享变量有关的程序段称为“临界区”
7.进程
答案:进程是一个可并发执行的,具有独立功能的程序关于某个数据集合的一次执行过程,也是操作系统进行资源分配和保护的基本单位
8.绝对路径
答案:从根目录到文件的路径串称为绝对路径
9.资源虚化
答案:资源虚化是指利用一类事物模拟另一类事物,造成另一类事物数量更多或者容量更大的假象
10.资源抽象
答案:资源抽象是指利用软件封装复杂的硬件或软件设施,简化资源应用接口的一种资源管理技术
记录的成组和分解
答案:1.把若干逻辑记录合并成一组,存入一个物理块的工作称为记录的成组
2.从一组中把一个逻辑记录分离出来的工作称为记录的分解
2.简答题
1.简述进程的三种基本状态及其相互转换
答:进程的三种基本状态:就绪,运行和等待
进程状态间的四种转换如下:1.运行态–>等待态:等待使用资源或某事件发生;2.等待态–>就绪态:资源得到满足或者事件发生;3.运行态–>就绪态:运行时间片断或者出现更高优先级进程;4.就绪态–>运行态:CPU空闲时选择一个就绪进程
2.进程调度的时机有哪些
答:进程调度的时机有四种:1.当进程进入等待态时;2.当进程完成其系统调用返回用户态,但不是最有资格获得CPU时;3.当内核完成中断处理,进程返回用户态但不是最有资格而获得CPU时;4.当进程执行结束时;
3.I/O软件的四个层次并简述其功能
答:I/O软件的四个层次:I/O中断处理程序,设备驱动程序,独立于设备的I/O软件,用户空间的I/O软件。中断处理程序的功能时发生中断时查明中断缘由,获取设备状态,唤醒用户进程。设备驱动程序的主要功能:设备初始化,控制设备运行或者退出服务,控制设备与内核之间交换数据,设备出错检测和处理。设备无关I/O软件功能:设备管理功能,缓冲管理错误报告,分配与释放设备,提供与设备无关的,用户空间的I/O软件作用:产生I/O请求,I/O格式化,假脱机
4.简述SPOOLing系统的虚拟设备原理
答:SPooling系统即假脱机系统。将原来以联机方式使用的独占设备改造成脱机使用的虚拟共享设备。在练级方式下,每个需要设备I/O的进程排队等待向设备提交输入输出作业。
5.资源虚化与资源抽象的区别是什么
答:资源虚化与资源抽象的区别在于:资源虚化强调从逻辑上扩充资源数量;而资源抽象强调封装,隐藏软硬件内部细节,简化资源应用结构
6.什么叫通道技术?通道技术的作用是什么?
通道是一个独立于CPU的转关输入/输出控制的处理机,它控制设备与内容直接进行数据交换,它有自己的通道指令,这些通道指令受CPU启动,并在操作结束时向CPU发中断信号。通道方式进一步减轻了CPU的工作负担,增加了计算机系统的并行工作程序
7.简述请求页式存储管理的优缺点
答:优点:1.虚存量大,适合多道程序运行,用户不必担心内存不够的调度操作。动态页式管理提供了内存与外存统一管理的虚存实现方式,2.内存利用率高,不常用的页面尽量不留在内存3.不要求作业连续存放,有效的解决了碎片问题。与分区化管理比,不需要移动作业,与多重分区比,无零星碎片产生。
8.产生死锁的4个必要条件是什么?如何防止死锁的发生
答:产生死锁的必要条件:1.互斥条件2.占有和等待条件3.不剥夺条件4.循环等待条件
只要破坏产生死锁的四个条件之一既可防止死锁的发生,破坏互斥条件使资源可同时访问而而不是互斥使用,静态分配可以破坏占有和等待条件,破坏不剥夺条件及用有剥夺式调度方法,采用层次分配策略可以破坏循环等待条件。
9.存储管理的功能是什么?
答:1.内存分配和回收2.内存抽象和映射3.存储隔离和共享4.存储扩展
10.I/O软件分为四个层次,试说明以下各个工作是在哪一层完成的
答:
1.向设备寄存器发写命令、唤醒请求I/O的进程:设备驱动程序
2.设备缓冲区管理、逻辑地址转换为物理地址:操作系统的I/O软件
3.检查设备状态寄存器内容:在I/O中断处理程序
4.将二进制整数转化成ASCII码以便于打印、用户进程请求打印一个输出文件:用户层I/O软件
11.虚拟存储器大小有什么限制?
答:虚拟存储器是利用外存的一部分(对换区),通过在内外存之间对换进程,从逻辑上扩充内存容量。外存容量远大于内存容量,但能够用来扩充内存容量的外存仅仅是其中的一小部分,因为虚拟存储器的容量受地址总线宽度的制约,地址总线宽度决定了程序可访问的最大地址空间,超过该空间的存储区域或者说是地址是无法访问的
12.文件操作有哪些
答:1.创建文件2.打开文件3.写文件4.读文件5.调整读写指针6.关闭文件7.删除文件
13.进程间同步和互斥的含义是什么?分别解决什么问题?
答:同步:并发进程之间存在的相互制约和相互依赖的关系
互斥:若干进程共享统一资源是,任何时刻只允许一个进程使用
进程的同步是解决进程间协作关系的手段,进程互斥是解决进程竞争关系的手段
14.程序状态字包含哪些主要内容
答:1.程序基本态2.中断码3.中断屏蔽位
15.什么是输入输出操作
答:主存与外围设备之间的信息传送操作称为输入输出操作
16.为实现分页式虚拟存储,页表中至少应包含有哪些内容
答:1.页号2.标志3.主存块号4.磁盘上的位置
17.简述请求页式存储管理的优缺点
答:优点:
1.虚存量大,适合多道程序运行,用户不必担心内存不够的调度操作。动态页式管理提供了内存与外存统一管理的虚存实现方式。
2.内存利用率高,不常用的页面尽量不留在内存
3.不要求作业连续存放,有效解决了“碎片”问题。与分区式比,不需要移动作业:与多重分区比,无零星碎片产生。UNIX操作系统较早采用
缺点:
1.要处理页面中断、缺页中断处理等,系统开销较大
2.有可能产生“抖动”
3.地址变换机构复杂,为提高速度采用硬件实现,增加了机器成本
18.虚拟存储器的基本特征是什么?虚拟存储器的容量主要受到什么限制
答:虚存是由操作系统调度,采用内外存的交换技术,各道程序在必须使用时调入内存,不用的调出内存,这样好像内存容量不受限制,但要注意:
1.虚存容量不是无限的,极端情况下受内存、外存的可使用总容量限制;
2.虚存容量还受计算机总线长度的地址结构限制
3.速度和容量的“时空“”矛盾,虚存量的扩大是以牺牲CPU工作时间以及内外存交换时间为代价
19.段页式管理这种存储管理方式中为什么要设置高速联想寄存器?
答:因为如果不采用高速联想寄存器,段页式的地址转换需要访问内存的次数达三次以上,这将使CPU执行指令速度大大降低,所以必须要设置高速联想寄存器,存放当前最常用的段号,页号和对应的内存页面与其他控制栏目,达到大大提高地址转换的目的
20.进程和程序有什么区别和联系
答:区别:
1.进程是一个动态概念,而程序是一个静态概念,程序是指令的有序集合,无执行含义进程则强调执行的过程
2.进程具有并行特征,程序没有
3.进程是竞争计算机系统资源的基本单位
4.不同的进程可以包含同一个程序,同一程序也可产生多个进程
21.什么是系统调用?简述系统调用的实现过程
答:系统调用是操作系统提供给编程人员的唯一接口。编程人员利用系统调用,在源程序一级动态请求和释放系统资源,调用系统中已有的系统功能来完成那些与机器硬件部分相关的工作以及控制程序的执行速度等。
实现过程:用户在程序中使用系统调用,给出系统调用名和函数后,及产生一条相应的陷入指令,通过陷入处理机制调用服务,引起处理机中断,然后保护处理机现场,取系统调用功能号并寻找子程序入口,通过入口地址表来调用系统子程序,然后返回用户程序需继续执行
22.简述操作系统的基本特征。
1.并发。在单处理机。多道程序环境下并发是指一段时间内,宏观上多个程序同时运行,微观上交替运行的情形。OS中引入进程的概念就是为了实现并发。
2.共享。是指系统中并发执行的多个进程共享系统资源。根据资源属性可以有互斥共享和同时访问两种方式。
3.虚拟。OS会通过虚拟技术实现系统功能的扩充。
4.异步性。并发执行的多个进程由于资源的限制会出现“走走停停”的运行模式
23.试分析引起进程阻塞和唤醒的事件主要有哪些
答:
1.请求系统服务。当正在执行的进程请求系统提供服务而系统无法满足其请求时,进程阻塞等待;由释放服务的进程唤醒阻塞进程
2.启动某种操作。当进程启动某种I/O操作后阻塞以等待操作完成;由中断处理程序唤醒阻塞进程。
3.新数据尚未到达。相互合作的过程中,消费者进程阻塞等待数据到达;生产者进程在数据到达后唤醒阻塞进程。
4.无新工作可做,系统进程没有新工作可做时阻塞等待;当有进程发出请求时唤醒阻塞进程。
24.简述在操作系统中引入缓冲的主要原因
答:1.缓和CPU和I/O设备间速度不匹配的问题;
2.减少对CPU的中单频率,放宽对中断响应时间的限制
3.提高CPU和I/O设备之间的并行性。
25.以独占设备为例,简述设备分配的过程。
答:1.设备的分配。根据物理设备名,查找SDT;找出该设备的DCT,得到该设备的状态:忙则将进程的PCB排入设备队列中等待;闲则分配设备给进程
2.控制器的分配。根据设备的DCT找到与之相连的控制器COCT,从中得到控制器的状态;忙则将设备的PCB排入控制器的等待队列中;闲则分配控制器给进程。
3.通道的分配。如果系统有通道,则根据控制器的COCT找到与之相连得通道CHCT,从中得到通道的状态;忙则将进程的PCB挂入通道的等待队列中;否则分配通道给进程。
只有在三者都分配成功,设备分配才算成功。
26.在操作系统中,P操作和V操作各自的动作是如何定义的。
答:P操作
1.P操作一次,信号量S-1;
2.如果S》=0表示有资源,当前进程可执行
3.如果S<0无资源,则当前进程进入队列的队尾等待,等另一进程执行V(s)操作后释放资源。此时,|S|绝对值表示等待资源进程的个数要求。
V操作
1.V操作一次,信号量S+1
2.如果S>0有资源,告诉其他进程可以继续
3.如果S<=0等待队列中另一进程释放资源后才能执行。
27.二级目录和多级目录的好处
1.层次清楚
2.解决重名问题
3.提高检索目录的速度
符号文件目录表和基本文件目录表不是二级目录,而是实现文件共享的方法。
28.什么是分页,什么是分段?二者的主要区别是什么。
答:分页:把程序中的逻辑地址分为大小相等的许多页,把主存储器进行分块,块的大小与页的大小一致,块是进行主存空间分配的物理单位。这样,就可把作业信息按页存放到块中。
分段:作业的地址空间被划分为若干段,每一段是一组完整的逻辑信息,每个段都有自己的段号,都是从零开始编址的一段连续的地址空间,各段长度是不等的。
区别:
1.段是信息的逻辑单位,它是根据用户的需要划分的,因此段对用户是可见的;页是信息的物理单位,是为了管理主存的方便而划分的,对用户是透明的。
2.页的大小固定不变,由系统决定。段的大小是不固定的,它由其完成的功能决定。
3.段式向用户提供的是二位地址空间,页式向用户提供的是一维地址空间,其页号和业内偏移是机器硬件的功能。
4.由于段是信息的逻辑单位,因此便于存储保护和信息的共享,页的保护和共享收到限制。
第一章
知识点
1.设计现代os的主要目标是
1.有效性,2.方便性3.可扩充性,4.开放性。
2.OS的作用可表现在那几个方面
答:1.OS作为用户与计算机硬件系统之间的接口
2.OS作为计算机系统资源的管理者
3.OS实现了对计算机资源的抽象
3.为什么说OS实现了对计算机资源的抽象
答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上在覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。OS通过在计算机硬件上安装多层次系统软件,增强了系统功能,隐藏了对硬件操作的细节,有他们共同实现了对计算机资源的抽象。
4.实现分时系统的关键问题是什么?问题如何解决?
答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接受并及时处理该命令,在用户能接受的时延内将结果返还给用户。
解决办法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接受用户从各个终端上输入的数据;为每个终端配置缓冲区,暂存用户键入的命令和数据。针对及时处理问题,应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行1,这样不长的时间内,能使每个作业都运行一次。
5.OS有哪几大特征?其最基本的特征是什么?
答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。
6.处理机管理有哪些主要功能?他们的主要任务是什么?
答:处理机管理的重要功能是:进程控制、进程同步、进程通信和处理机调度;
进程控制:为作业创建进程,撤销已结束进程,控制进程在运行过程中的状态转换。
进程同步:为多个进程(含线程)的运行进行协调。
处理机调度:
(1)作业调度。从后备队里按照一定的算法,选出若干个作业,为他们分配运行所需的资源(首先是分配内存)。
(2)进程调度:从进程的就绪队列中,按照一定算法选出一个进程,把处理机分配给他,并运行现场,使进程进入执行。
7.何谓脱机I/O和联机I/O
答:脱机IO:事先将装有用户程序和数据的纸带装入纸带输入机,在一台外围机的控制下,把纸带上的数据输入到磁带上。当CPU需要这些程序和数据时,再从磁带上高速地调入内存。该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。
联机IO:在主机的直接控制下进行输入/输出的方式,称为联机输入/输出(On-Line I/O)方式。是指作业的输入、调入内存及结果输出都在cpu直接控制下进行。
8.什么是时分复用技术?举例说明它能提高资源利用率的根本原因是什么。
答:时分复用技术是将不同的信号相互交织在不同的时间段内, 沿着同一个信道传输;在接收端再用某种方法, 将各个时间段内的信号提取出来还原成原始信号的通信技术。 这种技术可以在同一个信道上传输多路信号。 时分复用技术能提高资源利用率的根本原因在于,它利用某设备为一用户服务的空闲时间, 又转去为其他用户服务使设备得到最充分的利用。例如:一天流水线上有多个物品,在不同时间使用他们中的某一个,充分利用了这条信道。
9.是什么原因使操作系统具有异步性特征
答:在多道程序环境下,允许多个进程并发执行。但由于资源等因素的限制,进程的执行通常并非一气呵成,而是以走走停停的方式运行。内存中的每个进程在何时执行,何时暂停,以怎样的速度向前推进,每道程序总共需要多少时间才能完成,都是不可预知的。故而作业完成的先后次序与进入内存的次序并不完全一致,亦即进程是以异步方式运行的。但在有关进程控制及同步机制等的支持下,只要运行环境相同,作业经多次运行,都会获得完全相同的结果,因而异步方式是容许的。因此,操作系统便具有了异步性特征。
所谓异步性是指进程以不可预知的速度向前推进。内存中的每个进程何时执行,何时暂停,以怎样的速度向前推进,每道程序总共需要多少时间才能完成等,都是不可预知的。
10.内存管理有哪些主要功能?其主要功能是什么?
答:内存管理的主要功能有:内存管理,内存保护,地址映射和内存扩充。
内存分配:为每道程序分配内存
内存保护:确保每道用户程序都只在自己的内存空间里运行,彼此互不干扰
地址映射:将空间地址的逻辑地址转换为与之对应的物理地址
内存扩充:用于实现请求调用功能,置换功能。
11.设备管理有哪些主要功能?其主要任务是什么?
答:1.提供用户接口:提供一些I/O指令,即用户使用的外设的接口,用户在程序中通过这些命令使用外设
2.进行设备的分配与回收:OS中I/O管理程序负责接收用户使用外设的请求、分配设备、回收设备。
3.实现真正的I/O操作:OS依据用户的请求,通过具体的设备驱动程序,启动外设,进行实际的I/O操作,操作完毕就通知用户进程,由设备中断服务程序完成善后工作。
4.其他功能:管理缓冲区,CPU和I/O设备通过缓冲区传送数据,以解决高速CPU与慢速外设之间的矛盾,OS有专门的软件管理缓冲区的分配与回收。
第二章
知识点
1.程序并发执行为什么会失去封闭性和可再现性?
答:程序在并发执行时,是多个程序共享系统中的各种资源,因而这些资源将由多个程序来改变,致使程序的运行失去了封闭性。例如:当处理机这一资源已被某个程序占有时,另一程序必须等待。
程序在并发执行时,由于失去了封闭性,也将导致其失去可再现性。例如,有两个循环程序A和B,他们共享一个变量N。
程序A:N:=N+1
程序B:Print(N);N=0
程序A和B以不同的速度运行,这样,可能出现下述三种情况(假定某时刻N的值为n)
N:N+1在Print(N)和N=0之前,得到的N值分别为:
n+1,n+1,0
N:=N+1在print(N)和N=0之后
n,0,1
N:=N+1在print(N)和N=0之间
n,n+1,0
2.试说明进程在三个基本状态之间转换的典型原因
答:1.处于就绪状态的进程,在地阿杜程序为之分配了处理机之后,该进程便可执行,相应的它就由就绪态变为执行状态。
2.如果因发生某事件而使进程的执行受阻,使之无法继续执行,该进程将由执行状态转变为阻塞状态。
3.正在执行的当前进程,如果分配给他的时间片已完而被暂停执行时,该进程由执行状态恢复到就绪状态。
3.消息队列通信机制有哪几方面功能。
答:1.通过HTTP传输来传输消息,2.触发器3.向多个目标发送消息4.消息查找5.Active Diretory继承3.Microsoft管理控制台支持7.工作组支持8.活动/活动集群支持9.WindowsCE支持10.消息备份和还原11.消息优先级排序12.有保证的消息传递13.在事务内发送消息14.动态队列查询15.消息路由16.交叉平台集成
4.常见的进程同步问题代码JAVA
链接: link.
第三章
知识点
1.高级调度与低级调度的主要任务是什么?为什么要引入中级调度?
答:(1)高级调度又称为作业调度。它是批处理系统中使用的一种调度。其主要任务是按照某种算法从外存的后备队列上选择一个或多个作业调入内存,并为其创建进程、分配必要的资源,然后再将所创建的进程控制块插入就绪队列中。(2)低级调度又称进程调度。它是距离硬件最近的一级调度。其主要任务是按照某种算法从就绪队列上选择一个(或多个)进程,使其获得CPU。(3)引入中级调度的目的是为了提高内存利用率和系统吞吐量。其功能是,让那些暂时不能运行的进程不再占用宝贵的内存资源,而是调其到外存上等候。此时的进程状态为挂起状态。当这些进程重新具备运行条件且内存空闲时,由中级调度选择一部分挂起状态的进程调入内存并将其状态变为就绪状态。
2.在作业调度中应如何确定接纳多少个作业和接纳哪些作业?
答:作业调度每次接纳进入内存的作业数,取决于多道程序度。应将哪些作业从外存调入内存,取决于采用的调度算法。 最简单的是先来服务调度算法, 较常用的是短作业优先调度算法和基于作业优先级的调度算法。
3.试说明低级调度的主要功能
答:1.保存处理机现场
2.按某种算法选取进程
3.把处理器分配给进程
4.在时间片轮转法中,应如何确定时间片的大小?
答:在时间片轮转算法中,时间片的大小对系统性能有很大影响,如选择很小的时间片将有利于短作业,因为他能较快的完成,但会频繁地发生中断,切换上下文进程,从而增加系统开销,反之,如果选择太长的时间片,使得每个进程都能在一个时间片内完成,时间片轮转法便退化为FCFS法,无法满足交互式用户需求,一个较为可取的大小是,时间片略大于一次典型的交互所需要的时间,这样可以是大多数进程在一个时间片内完成。提高效率。
5.为什么说传统的几种调度算法都不能算是公平调度方法?
答:传统的几种调度算法,都只能满足单条调度需求,对其他则不满足,如FCFS不利于短作业和IO型作业;SJF则不利于长作业和紧迫作业的运行;PSA不利于优先权低的作业;RR不利于紧迫作业。
6.保证调度算法是如何做到调度的公平性的
答:保证调度算法是另外一种类型的调度算法,它向用户做出的保证并不是优先运行,而是明确的性能保证,该算法可以做到调度的公平性,如果在系统中有N个相同类型的进程同时进行,需保证每个进程获得相同的处理机时间1/N。
7.公平分享调度算法又是如何做到调度的公平性的
答:公平分享调度是针对用户而言的,使所有的用户能获得相同的处理机时间或所要求的时间比例。
8.什么是最早截止时间优先调度算法?举例说明。
答:依据任务的开始截至时间确定的任务优先级调度算法,截止时间越早,则优先级越高。
9.什么是最低松弛度优先算法?举例说明。
答:该任务由任务的优先级程度来确定顺序,任务的优先级越高则越靠前执行。
第四章
知识点
1.何谓静态链接?静态链接时需要解决两个什么问题?
答:静态链接是指在程序运行之前,先将各自目标模块及它们所需的库函数,链接成一个完整的装入模块,以后不再拆开的链接方式。将几个目标链接装配成一个装入模块时,需解决以下两个问题:将相对地址进行修改。即将除第一个模块外的相对地址修改成装入模块中的相应的相对地址。变换外部调用符号。即将每个模块中所用的外部调用符号,都变换为相对地址。
2.何谓装入时动态链接?装入时动态链接方式有何优点?
答:指将用户源程序编译后得到的一组目标模块,再装入内存时,采用边装入边链接的链接方式。
用户源程序编译后,得到一组目标模块,在装入内存时,采用边装入,边链接的方式。即在装入一个目标模块时,若发生一个外部模事件,将引起装入程序去找出相应的外部目标模块,并将他装入内存。
优点主要分为两点:
(1)便于修改和更新:对于静态链接,如果需要修改获更新某个目标模块,需要重新打开装入模块,这不仅仅是效率问题,而在很多时候甚至是不可能的。而采用动态链接方式,由于个目标模块是分开存放的,所以要修改或更新各目标模块是件非常容易地事情。
(2)便于实现对目标模块的共享:在静态链接中,每个模块必含有目标模块的拷贝,无法实现共享,但采用装入时链接的方式,很容易将一个目标模块链接到几个应用模块上。
3.在动态分区分配方式中,应如何将各空闲分区链接成空闲分区链。
答:在每个分区的起始部分,设置一些控制分区分配的信息,以用于链接各分区所用的前向指针,在分区尾部设置一个后向指针,通过前后向指针,将所有的空闲区域链成一个双项链,当分区分配出去时,将状态由0转为1
4.为什么要引入动态重定位?如何实现?
答:在程序执行的过程中,每当访问指令或数据时,将要访问的程序或数据的逻辑地址转换成物理地址,引入了动态重定位;
具体的实现方法是在系统中增加一个重定位寄存器,用来装入程序在内存中的起始位置,程序执行时,真正访问的内存地址是相对地址与重定位寄存器中的地址相加之和,从而实现动态重定位。
5.什么是基于动态顺序搜索的动态分区分配算法?它可分为哪几种?
答:答:为了实现动态分区式分配,将系统中的空闲分区组织成空闲分区表或空闲分区链。所谓顺序搜索,是指按表或链的组织顺序,检索表或链上记录的空闲分区,去寻找一个最符合算法的、大小能满足要求的分区。分区存储管理中常采用的分配策略有:首次适应算法,循环首次适应算法、最佳适应算法、最坏适应算法
(1)首次适应算法(FF):FF要求空闲分区链以地址递增的顺序链接,从链首开始查找,直至找到第一个满足要求的分区,然后按照作业的大小,从该分区中划出一片内存空间。若从链首到链尾都找不到一个空闲分区,则分配失败。
(2)循环首次适应算法(NF):为避免低址部分留下许多小的空闲分区,以及减少查找可用空闲分区的开销,NF在查找时不再每次都从链首开始,而是从上一次找到的空闲分区的下一个空闲分区开始。为实现此算法,应该设置一起始查找指针,用于指示下一次起始查找的位置。该算法能使内存中的空闲分区分布的更加均匀,从而减少了查找空闲分区的开销,但这样会缺乏大的空闲分区。
(3)最佳适应算法(BF):所谓最佳是指,每次分配内存时,总是把能满足要求,又是最小的空闲分区分配给作业。为加速查找,该算法要求将空闲分区按从小到大的顺序排列。孤立的看,最佳适应算法似乎是最佳的,然而宏观上却不一定。因为每次分配后所切割下来的剩余部分总是最小的,这样会在存储器中留下许多难以利用的碎片。
(4)最坏适应算法(WF):与BF算法相比,其策略正好相反,在扫描整个空闲分区时,总是挑选一个最大的空闲分区,从中切割一块空间分配给作业,这样可避免小碎片的产生。
6. 什么是基于引索搜索的动态分区分配算法?它可分为几种?
当系统很大时,系统的内存分区可能会很多,相应的空闲分区链就会很长,这是采用顺序搜索分区就会很慢,所以引入基于索引搜索的动态分区分配算法。有1.快速适应算法2.伙伴系统3.哈希算法
7.为什么要引入对换?对换可分为哪几种类型
在多道程序环境下,一方面,在内存中的某些进程由于某事件尚未发生而被堵塞运行,但它却占用了大量的内存空间,甚至有时可能出现在内存中所有进程都被堵塞,而无可运行之进程,迫使CPU停止下来等待的情况;另一方面,却又有着许多作业,因内存空间不足,一直驻留在外存中,而不能进入内存运行,为了解决这一问题,引入了对换设施;对换可分为整体对换和页面(分段)对换
8.什么是页面?什么是物理块?页面的大小应该如何确定?
1.页面:分页存储管理将进程的逻辑地址空间分成若干个页,并为各页加以编号
2.物理块:把内存的物理地址空间分成若干个块,并为各块加以编号
3.页面大小选择适中,且页面大小应该是2的幂,通常为1kb~8kb
9.什么是页
页表:是一种特殊的数据结构,记录着页面和页框的对应关系。(映射表)
页表的作用:是内存非连续分区分配的基础,实现从逻辑地址转化成物理地址。
10.在分页系统中是如何实现地址转换的
在分页系统中,利用地址变换机构实现从逻辑地址到物理地址的转换,通过页表来实现从页号到物理块号的变换,将逻辑地址中的页号转换为内存中的物理块号。
11.具有快表时是如何实现地址变换的
答:系统将有效地址(逻辑地址)中的页号与页表寄存器中的内容比较,如果页号太大,表示访问越界,于是产生越界中断,地址变换机构自动将页号送入高速缓存,在确定所需要的页是否在快表(高速缓存)中,若在则直接读出该页所对应的物理块号,并送入物理地址寄存器,若在快表中为找到对应的页表项,需要访问内存中的页表,找到后,把从页表中读出的页表项存入快表中的一个寄存器单元中,以取代一个老的,已被认为不再需要的页表项。与此同时,再将有效地址寄存器钟大哥业内地址直接送入物理地址寄存器,从而完成了从有效地址(逻辑地址)到物理地址的转换
12.在具有快表的段页式存储管理方式中,如何实现地址变换?
答:在段页式系统中,为了便于实现地址变换,须配置一个段表寄存器,其中存放段表始址和段长TL。
进行地址变换时,首先利用段号S,将它与段长TL进行比较。若S<TL,表示未越界,利用段表始址和段号来求出该段所对应的段表项在段表中的位置,从中得到该段的页表始址,并利用逻辑地址中的段内页号P来获得对应页的页表项位置,从中读出该页所在的物理块号b,再利用块号b和页内地址来构成物理地址。
在段页式系统中,为了获得一条指令或数据,须三次访问内存。第一次访问内存中的段表,从中取得页表始址;第二次访问内存中的页表,从中取出该页所在的物理块号,并将该块号与页内地址一起形成指令或数据的物理地址;第三次访问才是真正从第二次访问所得的地址中,取出指令或数据。
显然,这使访问内存的次数增加了近两倍。
为了提高执行速度,在地址变换机构中增设一个高速缓冲寄存器。每次访问它时,都须同时利用段号和页号去检索高速缓存,若找到匹配的表项,便可从中得到相应页的物理块号,用来与页内地址一起形成物理地址;若未找到匹配表项,则仍须再三次访问内存。
13.为什么说分段系统比分页系统更易于实现信息的共享和保护?
答:. 对于分页系统bai,每个页面是分散存储的,为了实现信息共享和保护,则页面之间需要一一对应起来,为此需要建立大量的页表项;而对于分段系统,每个段都从0开始编址,并采用一段连续的地址空间,这样在实现共享和保护时,只需为所要共享和保护的程序设置一个段表项,将其中的基址与内存地址一一对应起来即可。
14.分页和分段存储管理有何区别?
答:页和分段系统有许多相似之处,但在概念上两者完全不同,主要表现在:
1、页是信息的物理单位,分页是为实现离散分配方式,以消减内存的外零头,提高内存的利用率;或者说,分页仅仅是由于系统管理的需要,而不是用户的需要。
段是信息的逻辑单位,它含有一组其意义相对完整的信息。分段的目的是为了能更好的满足用户的需要。
2、页的大小固定且由系统确定,把逻辑地址划分为页号和页内地址两部分,是由机器硬件实现的,因而一个系统只能有一种大小的页面。
段的长度却不固定,决定于用户所编写的程序,通常由编辑程序在对源程序进行编辑时,根据信息的性质来划分。
3、分页的作业地址空间是维一的,即单一的线性空间,程序员只须利用一个记忆符,即可表示一地址。
分段的作业地址空间是二维的,程序员在标识一个地址时,既需给出段名,又需给出段内地址。
第五章
1.虚拟存储器有哪些特征?其中最本质的特征是什么?
答:虚拟存储器有离散性,多次性,对换性和虚拟性这四个主要特征:
1、离散性,是指内存分配时采用离散分配的方式。若采用连续分配方式,需要将作业装入到连续的内存区域,这样需要连续地一次性申请一部分内存空间,无法实现虚拟存储功能,只有采用离散分配方式,才能为它申请内存空间,以避免浪费内存空间。
2、 多次性,多次性是指一个作业被分成多次调入内存运行。作业在运行时,只将当前运行的那部分程序和数据装入内存,以后再陆续从外存将需要的部分调入内存。
3、 对换性,对换性是指允许在作业运行过程中换进换出。允许将暂时不用的程序和数据从内存调至外存的对换区,以后需要时再从外存调入到内存。
4、 虚拟性,虚拟性是指能够从逻辑上扩充内存容量,使用户所看到的内存容量远大于实际的内存容量。
2.在请求分页系统中,页表应包含哪些数据项?每项的作用是什么?
答:1.在请求分页系统中,其页表项中包含的数据项有页号,物理块号,状态位P,访问字段A,修改位M和外存地址。
2.其中状态位P指示该页是否调入内存,供程序访问时参考
3.访问字段A用于记录本页在一段时间内被访问的次数,或最近已有多长时间未被访问,提供给置换算法选择换出页面时参考。
4.修改位M表示该页调入内存后是否被修改过
5.外存地址用于指出该页在外存上的地址,通常是物理块号,供调入该页时使用。
3.试说明请求分页系统中的地址变换过程
答:1.取逻辑地址分解为页号P和页内偏移W;
2.根据页号查找页表,获得该页的描述信息
3.若该页中断位为1,产生缺页中断;
4.更新该页的描述信息
5.根据页块号和页内偏移W,计算物理地址
4.在请求分页系统中,常采用哪几种页面置换算法
答:采用的页面置换算法有:最佳置换算法和先进先出置换算法,最久未使用LRU置换算法,Clock置换算法,最少使用置换算法,页面缓冲算法等
5.在请求分页系统中,产生“抖动”的原因是什么
答:在请求分页式存储管理中,页在内存与外存之间频繁调度,以至于调度页面所需时间比进程实际运行的时间还多,此时系统性能急剧下降。这种现象称为颠簸或抖动。
6.在请求段表机制中,因设置哪些段表项。
在段表项中,除了段名(号),段长,段在内存中的起始地址(段基址)外,还增加了
1.存取方式。由于应用程序中的段是信息的逻辑单位,可根据该信息的属性对它实施保护,故在段表中增加存取方式字段。
2.访问字段A:其含义与请求分页的相应字段相同,用于记录该段被访问的频繁程度。提供给置换算法选择换出页面时的参考。
3.修改位M:该字段用于表示该页在进入内存后是否被修改过,供置换页面时参考。
4.存在位P。该字段用于指示本段是否已调入内存,供程序访问参考
5.增补位:这是请求分段式管理中所持有的字段,用于表示该段在运行过程中是否做过动态增长
6.外存地址:指示本段在外存中的起始地址,即起始盘块号
7.说明请求分段系统中的缺页中断处理过程
答:答:请求分段系统中的缺页中断处理过程描述如下:
(1)根据当前执行指令中的逻辑地址查页表,判断该页是否在主存储器中(2)该页标志为“0”形成缺页中断,中断装置通过交换PSW让操作系统的中断处理程序占用处理器。
(3)操作系统处理缺页中断处理的办法是查主存分配表找一个空闲的主存块,查页表找出该页在磁盘上位置,启动磁盘读出该页信息。
(4)把从磁盘上读出的信息装入找到的主存块中。
(5)当页面住处被装入主存后,应修改页表中对应的表目,填上该页所占用的主存块把标志置为“1”,表示该页已在主存储器中
(6)由于产生缺页中断时的那条指令并没执行完,所以在把页面装入之后应重新执行被中断指令。
8.如何实现共享分段的分配和回收
答:1.共享段的分配:在为共享段分配内存时,对第一个请求使用该共享段的进程,由系统为该共享段分配一物理区,当又有其它进程需要调用该共享段时,无须再为该段分配内存。
2.共享段的回收:当共享此段的某进程不再需要该段时,若无其他进程使用该段,则由系统回收该共享段的物理内存,否则只是取消调用者进程在共享段表中的有关记录。
第六章
1.知识点
了解I/O设备的几种类型;
** 掌握程序I/O方式,中断驱动I/O方式,DMA I/O控制方式和I/O通道控制方式;重点掌握DMA方式和通道方式,做到能列举中断方式、DMA方式和通道方式之间的区别和联系。**
理解缓冲的引入目的,了解缓冲区的类别和结构,理解缓冲区和快速缓存的区别;
了解设备分配和回收;
掌握Spooling技术的概念,理解引入Spooling技术的目的,做到能叙述出Spooling技术是如何实现的;
了解磁盘的结构,能区分盘面、磁道、柱面、扇区等概念;
理解磁盘访问时间的构成,做到会计算寻道时间和旋转延迟时间;
掌握几种典型的磁盘调度算法,重点掌握SSTF和SCAN算法,理解它们各自优缺点,做到能按照这些算法调度给定的一组磁盘访问请求;
了解几种提高磁盘I/O速度的方法,理解延迟写的过程;
了解I/O应用接口、出错处理
题型
DMA控制方式的流程,DMA方式和通道方式以及中断方式的区别
引入缓冲的目的
快速缓存和缓冲区的区别
SPOOLing技术的概念、目的以及实现过程
磁盘访问时间的计算(综合应用题)
常用磁盘调度算法的使用(综合应用题)
1.与设备无关性的基本含义是什么?为什么要设置该层?
答:为了提高OS的可适应性和可扩展性在现代0S中都毫无例外地实现了设备独立性,也称设备无关性。
基本含义:应用程序基本使用的物理设备。为实现设备独立性而引入了逻辑设备和物理设备两概念。在应用程序中,使用逻辑设备名称来请求使用某类设备;而系统在实际执行时,还必须使用物理设备名称。
2.什么是内存映像I/O?它是如何实现的?
答:驱动程序将抽象I/O命令转换出的一系列具体的命令、参数等数据装入设备控制器的相应寄存器,由控制器来执行这些命令,具体实施对I/O设备的控制。
方式:利用特定的I/O指令、内存映像I/O。
3.试说明设备驱动程序具有哪些特点
答:(1)驱动程序是实现在与设备无关的软件和设备控制器之间通信和转换的程序;
(2)驱动程序与设备控制器以及I/O设备的硬件特性紧密相关,对于不同类型的设备,应配置不同的驱动程序。但可以为相同的多个终端设置一个终端驱动程序;
(3)驱动程序与I/O设备所采用的I/O控制方式紧密相关,常用的I/O控制方式是中断驱动和DMA方式;
(4)由于驱动程序与硬件紧密相关,因而其中的一部分必须用汇编语言书写;
(5)驱动程序应允许可重入。
4.在考虑到设备的独立性时,应如何分配独占设备?
答:(1)进程以逻辑设备名提出I/0请求。
(2)根据逻辑设备表相应表项获得I/0请求的逻辑设备对应类型的物理设备在系统设备表中的指针。
(3)从指针所指位置起顺序检索系统设备表,直到找到一个属于对应I/0请求所用类型、空闲可用且基于设备分配安全性算法验证为安全分配的设备的设备控制表,将对应设备分配给请求进程;
如果未找到安全可用的空闲设备,则把请求进程的进程控制块挂到相应类型设备的等待队列上等待唤醒和分配。
(4)系统把设备分配给I/0请求进程后,再到该设备的设备控制表中找出与其相连接的控制器的控制器控制表,根据其状态字段判断该控制器是否忙碌,若忙则把请求进程的进程控制块挂到该控制器的等待队列上;否则将该控制器分配给进程。
(5)系统把控制器分配给I/0请求进程后,再到该控制器的控制器控制表中找出与其相连接的通道的通道控制表,根据其状态字段判断该通道是否忙碌,若忙则把请求进程的进程控制块挂到该通道的等待队列上:否则将该通道分配给进程。
(6)只有在设备、控制器和通道三者都分配成功时,这次的设备分配才算成功,然后便可启动设备进行数据传送。
5.在单缓冲情况下,为什么系统对一块数据的处理时间为max(C,T)+M?
答:在块设备输入时,假定从磁盘把一块数据输入到缓冲区的时间为T;操作系统将缓冲区数据传送给用户区的时间为M;而CPU对这一块数据进行计算得时间为C。
在单缓冲情况下,由于设备的输入操作和CPU的处理操作可以并行,所以系统对每一整块数据的处理时间为max(C,T)+M。
6.磁盘访问时间由哪几部分组成?每部分时间该如何计算?
答:磁盘访问时间由寻道时间Ts、旋转延迟时间Tr、传输时间Tt三部分组成。
(1)Ts是启动磁臂时间s与磁头移动n条磁道的时间和,即Ts=m×n+s。
(2)Tr是指定扇区移动到磁头下面所经历的时间。硬盘15000r/min时Tr为2ms;软盘300或600r/min时Tr为50~100ms。
(3)Tt是指数据从磁盘读出或向磁盘写入经历的时间。Tt的大小与每次读/写的字节数b和旋转速度有关:Tt=b/rN。
第七章
知识点
了解文件系统、文件、记录、数据项的概念;
了解文件的几种分类方式,了解文件系统的层次结构;
掌握文件的打开和关闭操作的含义,了解文件的基本操作;
了解文件的逻辑结构,理解有结构文件(记录式文件)的类别;
了解几种目录结构,掌握多级目录结构(树型目录结构)的访问方式;
了解文件保护的方法,了解文件共享的动机、方式和语义,理解文件共享的几种方法
这章基本都是小题
第八章
知识点
掌握三种外存分配方式,理解连续分配、链接分配和索引分配之间的优缺点,会用这三种分配方式寻找、删除、插入、移动数据块;
掌握混合索引结构的分配方式,以UNIX的索引节点为例,会计算混合索引结构所能访问到的外存空间的容量;
理解文件存储管理中的空闲表、空闲链表法、位示图法和成组链接法;
填空题
1.操作系统的的基本功能不包括 (用户管理)
系统是管理和控制计算机系统中的所 有硬件、软件资源,合理地组织计算机工作 流程, 并为用户提供一个良好的工作环境和 友好的接口。
2.中央处理器处于目标态时,执行(特权命令)将产生“非法操作”事件
用户程序运行时处于“目的程序状态”(简称“目态”);系统管理程序运行时则处于“管理程序状态”(简称“管态”)。
3.进程所请求的一次打印输出结束后,将进程状态从(等待态变为就绪态)
4.既考虑作业等待时间,又考虑作业执行时间的调度算法是(响应比高者优先)
5.当系统发生抖动时,可以采用的有效措施是(撤销部分进程)
6.分页式存储管理中,地址转换工作是由(硬件)完成的
7.页式存储管理中,每次从主存中取指令或取操作数,要(3)次访问主存
8.文件系统中文件被按照名字存取是为了(方便用户使用)
9.设计批处理多道程序时,首先要考虑的是(系统效率和吞吐量)
10.可重定位内存分区分配目的是(解决碎片问题)
11.(用户名)不应含于PCB表中
操作系统的PCB是指进程中的控制模块,是一种数据格式,是进程实体的一部分
当系统创建一个进程时候,同时创建PCB,进程结束时,回收PCB
12.段页式存储管理汲取了页式存储管理和段式管理的长处,用(分段的方法来分配和管理逻辑空间地址,用分页方法来管理物理存储空间)
13.通道是一种(I/O专用处理机)
14.文件系统采用二级文件目录可以(解决不同用户间的文件命名冲突)