操作系统原理及应用复习
第一章操作系统概论
1.1 什么是操作系统,有哪些基本功能和特点?
- 操作系统是覆盖在裸机上的第一层软件,他直接控制,管理各种资源。
- 基本功能:
- 提供人机接口
- 命令级接口
- 程序级接口
- 图形界面
- 管理计算机资源
- 处理机管理
- 存储管理
- 设备管理
- 文件管理
- 提供人机接口
- 基本特点:并发、异步、共享和虚拟。
1.3 操作系统的结构有哪几种类型?各有什么特点?Linux系统是什么结构?
- 单道批处理系统
- 在当时被称为监督程序,是操作系统的雏形
- 联机批处理
- 脱机批处理
- 多道批处理系统
- 多道性
- 调度性
- 宏观上并行,微观上串行
- 异步性
- 分时系统
- 多个用户同时联机操作
- 各用户独立
- 交互性
- 实时系统
- 实时控制
- 实时信息处理
- 及时性
- 可靠性
- 微机操作系统
- 单用户单任务操作系统
cp/m
ms-dos - 单用户多任务操作系统
os/2
Windows - 多用户多任务操作系统
Unix
linux(是一个类unix操作系统,最初由芬兰赫尔辛基大学的linus开发)
- 单用户单任务操作系统
- 网络操作系统
- 分布式操作系统
Linux系统是微机操作系统。
1.6试分析单道与多道批处理系统的优缺点。
- 单道批处理系统
- 优点:作业自动运行,无需干预;磁带上的各个作业按顺序地进入内存,先调入先完成;内存中仅有一道程序运行,可以看成是串行的
- 缺点:CPU资源利用率和系统吞吐量降低
- 多道批处理系统
- 优点:资源利用率高;系统吞吐量大。
- 缺点:无交互功能;平均周转时间长。
1.9 试从独立性,多路性,交互性和及时性四个方面比较批处理系统,分时系统和实时系统。
- 独立性:每个终端向实时系统提出服务请求时,是彼此独立的工作、互不干扰。
- 多路性:分时系统是为多个终端用户提供服务,实时系统的多路性主要表现在经常对多路的现场信息进行采集以及对多个对象或多个执行机构进行控制。
- 交互性:交互式与批处理相对,交互式使用计算机是指用户可以随意干预、控制作业的运行流程 ,这是批处理系统所不具有的。
- 及时性:实时信息处理系统与分时系统对及时性的要求类似,都以人们能够接受的等待时间来确定。实时控制系统对及时性的要求更高,是以控制对象所要求的开始截止时间或完成截止时间来确定的。
1.10试从交互性、及时性以及可靠性方面,将分时系统和实时系统进行比较。
(1)及时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定;而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙。
(2)交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。不像分时系统那样能向终端用户提供数据和资源共享等服务。
(3)可靠性:分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。因为任何差错都可能带来巨大的经济损失,甚至是灾难性后果,所以在实时系统中,往往都采取了多级容错措施保障系统的安全性及数据的安全性。
第二章进程管理
2.1 操作系统为什么要引入进程的概念?
为了描述操作系统的并发性,引入了进程的概念。
2.2 试着比较进程和程序之间的区别?
- 程序是静态的概念,本身可以作为一种软件资源长期储存,而进程是程序的一次执行过程,是动态的概念,他有从创建到消亡的过程
- 进程是一个能独立运行的单位,能与其他进程并发执行,进程是作为资源申请和调度单位存在,通常的程序不能作为一个独立运行单位而并发执行
- 程序和进程不存在一一对应的关系,一个程序可以由多个进程共用,一个进程在其活动中也可以顺序的执行若干个程序,一个程序运行一次就创建了一个进程,那么同一个程序运行10次,就产生了十个进程
- 各个进程并发执行中会产生相互制约的关系,造成各自前进速度不可预测,而程序是静态的不存在这种异步特征
2.4 什么叫进程的并发性,试着举一个例子。
进程在内存中都有独立的地址结构,多个程序(进程和线程)可以同时处于就绪状态,等待运行,CPU会分配时间给程序,由于CPU分配时间很快很短,所以多个程序可以同时运行,这就是并发性。比如我们一边上网一边听歌,但从微观来说,CPU在同一个时间片里只运行一个程序,但这个时间片很小,小到CPU切换进程时我们根本感觉不到,我们的几个程序都在很好的运行,所以我们感觉他们是并行的。
2.6试着说明PCB的作用,为什么说PCB是进程存在的唯一标志?
作用:为了反应进程的动态性,需要一个数据结构来描述进程的当前状态,本身的特性等。之所以说PCB是进程存在的唯一标识,是因为PCB记录了进程的全部控制信息,庞大而复杂,根据操作系统的要求不同,进程的PCB所包含的内容也有所不同,按照概念可以分为四个组成部分:
- 进程标识符
- 处理机状态
- 进程调度信息
- 进程控制信息
2.7 试着说明进程由哪几部分构成。
PCB、程序部分和数据部分三部分。
2.8 什么叫临界区?为什么进程在进入临界区之前要执行申请操作,在离开临界区要执行释放操作?
- 不能被多个进程同时使用的资源称为临界资源。将每个进程中访问临界资源的那段代码称为临界区。
- 为了实现多个进程对临界资源的互斥访问,必须在进入临界区之前执行申请操作用于检查临界资源是否正在被访问,如未被访问,该进程可进入临界区对此临界资源进行访问;如正被访问则该进程不能进入临界区访问临界资源。在退出临界区后,要执行释放操作,主要是为了使其他进程能再访问此临界资源。
2.9 试说明进程的基本状态及转换的原因。
- 进程的基本状态:
- 就绪状态
- 执行状态
- 阻塞状态
- 转换的原因:进程并非处于固定的某个固定的状态,如下图
2.10 创建一个进程需要做哪些工作?
1,申请空白PCB(进程控制块);
2,为新进程分派资源;
3,初始化PCB;
4,将新进程插入就绪队列;
2.11 实现进程同步的软件方法和硬件方法分别有哪些?
- 软件方法:Peterson算法。
- 硬件方法:
- 关中断
- 测试并设置指令
- 对换指令
2.12从概念上说明记录型信号量的构成,描述原语wait和signal所进行的操作。
-
记录型信号变量的数据结构
struct semaphore{int value;struct PCB * queue;//为进程链表指针,指向等待该类资源的PCB队列 }semaphore; semaphore S;//S的值表示系统中可用该类临界资源的数量
-
原语wait操作流
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sqQbYQ3F-1653818322036)(https://raw.githubusercontent.com/Yg0521/image01/main/img/202205291755073.png)]
-
原语signal操作流
2.13 试说明信号量S的整数值所代表的含义。
表示系统中可用的该类临界资源的数量,又称资源信号量
2.16 进程的高级通信方式有哪几种?
共享存储器系统、消息传递系统和管道通信系统三种。
2.17 什么是线程?试说明它与进程的主要区别。
**线程:**线程是操作系统能够进行运算调度的最小单位,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。
**区别:**线程比进程能更好的提高程序的并行执行速度,充分的发挥多处理机的优越性,引入线程主要是为了提高系统的执行效率,减少处理机的空转时间,线程是进程中执行运算的最小单位,即执行处理机调度的基本单位。
2.18 什么是多线程机制,引入它有什么好处?
多线程机制指的是一个程序里面可以有多个路径同时执行,也就是有多个线程,并行的执行,可以在同一个时间点上,一起执行,每一个线程都是一个独立的,都有各自独立的执行空间。
好处:
- 易于调度
- 提高了系统效率
- 创建一个线程比创建一个进程所消耗的资源少,创建速度快
- 有利于发挥多处理机的功能,提高进程的并行性
2.15 什么是管程?
代表共享资源的数据结构以及由对该共享数据结构实施操作的一组过程所组成的资源管理程序共同构成了一个操作系统的资源管理模块,我们称之为管程,管程被请求和释放资源的进程所调用。
第三章处理机调度与死锁
3.1 处理机调度的主要目的是什么?
一般情况下,当占用处理机的进程因为某种请求得不到满足而不得不放弃CPU进入等待状态时,或者当时间片到,系统不得不将CPU分配给就绪队列中另一进程的时候,都要引起处理机调度。除此之外,进程正常结束、中断处理等也可能引起处理机的调度。因此,处理机调度是操作系统核心的重要组成部分,它的主要功能如下:
- 记住进程的状态,如进程名称、指令计数器、程序状态寄存器以及所有通用寄存器等现场信息,将这些信息记录在相应的进程控块中。
- 根据一定的算法,决定哪个进程能获得处理机,以及占用多长时间。
- 收回处理机,即正在执行的进程因为时间片用完或因为某种原因不能再执行的时候,保存该进程的现场,并收回处理机。
3.2 高级调度与低级调度的功能是什么?
1、高级调度
高级调度发生在作业对应的新进程创建中,它决定一个进程是否被创建,或者创建后是否能被置为就绪状态,以参与竞争处理机资源从而获得运行。高级调度根据一定的算法从后备的作业队列中选出若干作业,并分配给必要的资源,为它建立相应的用户作业进程和为其服务的系统进程,最后把它们的程序和数据调入内存,等待进程调度程序对其进行调度。
2、低级调度
低级调度的主要功能是根据一定的算法将CPU分派给就绪队列中的某个进程(或内核级线程)。执行低级调度功能的程序称作进程调度程序,由它实现CPU在进程间的切换。低级调度的运行频率很高,在一般的操作系统中必须要有低级调度(进程调度),而且其调度策略的优劣直接影响整个系统的功能。
3.3 处理机调度一般分为哪三级?其中哪一级调度必不可少,为什么?
- 作业调度、对换和进程调度。
- 必不可少的是进程调度。原因:进程调度主要任务是按照某种策略和方法从就绪队列中选取一个进程,将处理机分配给它。是操作系统中最基本的一种调度,在一般操作系统中都必须配置进程调度。
3.4 作业在其存在的过程中分为哪四种状态?
- 提交状态。从输入设备进入外部存储设备的过程。
- 后备状态。输入管理系统不断地将作业输入到外存中对应部分(输入井),若一个作业的全部信息输入到输入井,则在它还未被调度执行之前,该作业处于后备状态。
- 执行状态。作业调度程序从后备作业中选取若干作业投入运行。
- 完成状态。作业运行完毕。
3.5 作业提交过后是否立即加载内存,为什么?
不会,到了执行阶段才会有机会被分到内存,在这之前还得经历后备状态,在输入管理系统将所有的作业信息输入到外存中对应的输入井中,才会到作业调度程序取出,进入执行状态。
3.8 在批处理系统,分时系统和实时系统中,各采用哪几种进程(作业)调度算法?
- 批处理系统常用调度算法:
- 先来先服务:FCFS
- 最短作业优先
- 最短剩余时间优先
- 响应比最高者优先
- 分时系统调度算法:
- 轮转调度
- 优先级调度
- 多级队列调度
- 彩票调度
- 实时系统调度算法:
- 单比率调度
- 限期调度
- 最少裕度法
3.9 在操作系统中引起进程调度的主要因素有哪些?
- 完成任务
- 等待资源
- 运行时间已到
- 进入睡眠状态
- 发现标志
- 优先级变化
3.13 什么叫死锁?死锁产生的原因和必要条件有哪些?
死锁是指多个进程循环等待其他进程占有的资源,因而无期限的僵持下去的局面。
产生的原因有: 各进程之间竞争有限的资源;进程推进顺序不当。
必要条件: 互斥条件、占有且申请、不可抢占条件和环路等待条件。
3.14 在解决死锁问题的几个方法中,哪种方法最容易实现?哪种方法资源利用率最高?
- 死锁的预防最容易实现,但是由于这种方法施加的限制条件太严格,可能会导致系统资源利用率和系统吞吐率降低。
- 死锁的避免只需事先加以较弱的限制条件,便可获得较高的资源利用率和系统吞吐率,但在实现上有一定的难度,目前较完善的系统中常用此方法来避免发生死锁。
3.15 设时间片为一个时间单位。现有四个进程,每一个进程比上一个进程迟到一个时间单位,各进程要求运行时间如下表,系统对进程调度采用时间片轮转法。试计算各进程的完成时间和周转时间。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-R5MpFwtq-1653818322039)(https://raw.githubusercontent.com/Yg0521/image01/main/img/202205291755931.png)]
解答:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ooullNhS-1653818322040)(https://raw.githubusercontent.com/Yg0521/image01/main/img/202205291741946.png)]
3.14 假定某系统有五个进程p1,p2,p3,p4,p5共享三类资源A,B,C。资源类A共有17个资源,资源类B共有5个资源,资源类C共有20个资源。某一时刻各进程对资源的需求和占用情况如下表所示.
(1)判断系统的安全性。
所以系统是安全的,安全序列为:4,3,1,2,5。
(2)在该时刻若进程P2请求资源(0,3,4),是否能分配资源?为什么?
不能分配,因为此时的可用资源是(2,3,3)而P2进程的need资源是(1,3,4)不够所以不会给它分配资源,继续等待。
第四章内存管理
4.2 储存分配的方式有几种?
静态和动态、连续和非连续四种。
4.3 分区分配方法有哪几种?各有什么优缺点?
- 单道程序连续分配
- 优点:实现简单、不需要复杂的软件和硬件支持。
- 缺点:不允许多个进程并发执行,仅支持单任务;存在内存碎片问题,资源的利用率低。
- 固定分区分配方式
- 优点:分配回收方便,适用于用户不多的小型系统。
- 缺点:内存使用不充分,每一个分区剩余部分无法利用。
- 动态分区分配方式
- 优点:用户程序装入内存时,根据进程所需要的大小动态建立分区,使得分区大小刚好符合进程需要。
- 缺点:在一开始,动态分区的分配效果是好的,但是随着内存进程的需要和时间的推移,内存中会产生许多外部碎片。
- 可重定位分区
- 优点。解决了可变分区分配所引入的“外零头”问题;消除内存碎片,提高内存利用率。
- 缺点。提高硬件成本,紧凑时花费CPU时间。
4.4 简述页式存储管理的实现思想。
- 分页存储器将主存划分成多个大小相同的页架
- 受页架尺寸限制,程序的逻辑地址也自然分页
- 不同的页可以放在不同页架中,不需要连续
- 页表用于维系进程的主存完整性
4.5 试说明缺页中断和一般中断的主要区别。
- **两种中断产生的时刻不同。**缺页中断是在执行一条指令中间时产生的中断,并立即转去处理;而一般中断则是在一条指令执行完毕后,当硬件中断装置发现有中断请求时才去响应和处理。
- **处理完毕后的归属不同。**缺页中断处理完后,仍返回到原指令去重新执行,因为那条指令并未执行;而一般中断则是或返回到被中断进程的下一条指令去执行,因为上一条指令已经执行完了,或重新调度,去执行别的进程程序。
4.6 试着描述分页系统和分段系统的主要区别。
-
页是信息的物理单位,分页是为实现离散分配方式,以消减内存的外零头,提高内存的利用率;或者说,分页仅仅是由于系统管理的需要,而不是用户的需要。
段是信息的逻辑单位,它含有一组其意义相对完整的信息。分段的目的是为了能更好的满足用户的需要。
-
页的大小固定且由系统确定,把逻辑地址划分为页号和页内地址两部分,是由机器硬件实现的,因而一个系统只能有一种大小的页面。
段的长度却不固定,决定于用户所编写的程序,通常由编辑程序在对源程序进行编辑时,根据信息的性质来划分。
-
分页的作业地址空间是维一的,即单一的线性空间,程序员只须利用一个记忆符,即可表示一地址。
分段的作业地址空间是二维的,程序员在标识一个地址时,既需给出段名,又需给出段内地址。
4.10
4.16 什么是虚拟存储器?
虚拟存储器是作业运行时,仅把部分运行到的程序和数据装入内存便可以运行的虚拟存储系统。具体得讲,是指具有请求调入功能和置换功能,并能逻辑上对内存空间进行扩充的一种存储系统。
4.21 在请求分页系统中,从何处将所需页面调人内存?
- 对换区空间充足:进程运行前把所有文件从文件区拷贝到对换区 。
- 缺少对换区空间:不修改的文件直接从文件区调入,可能被修改的文件换出时调到对换区 。
- UNIX方式:未运行过的页面都从文件区调入,运行过又被换出的页面则从对换区调入。UNIX允许页面共享,其他进程已调入的页面无须重复调入。
4.23 在请求分段机制中,应设置哪些段表项?
段名、段长、段基址、存取方式、访问字段、修改位、存在位、增补位、外存始址。
第五章文件管理
5.1 什么是文件和文件系统?文件系统有哪些功能?
- 文件是存储在外部介质上的一组相关记录的集合。文件系统是操作系统中负责存取和管理文件信息的机构,同时对用户提供文件系统接口。
- 文件系统的功能包括:
- 管理和调度文件的存储空间,提供文件的逻辑结构、物理结构和存储方法。
- 实现文件从标识到实际地址的映射,实现文件的控制操作和存取操作,实现文件信息的共享并提供可靠的文件保密和保护措施,提供文件的安全措施。
5.2 根据对文件的管理方式,Linux文件可以分为哪几类?
- 普通文件
我们用 ls -lh 来查看某个文件的属性,可以看到有类似-rwxrwxrwx,值得注意的是第一个符号是 - ,这样的文件在Linux中就是普通文件. - 目录文件
当我们在某个目录下执行,看到有类似 drwxr-xr-x ,这样的文件就是目录,目录在Linux是一个比较特殊的文件。注意它的第一个字符是d。创建目录的命令可以用 mkdir 命令,或cp命令,cp可以把一个目录复制为另一个目录。 - 字符设备或块设备文件
- 区块(block)设备文件 :就是一些储存数据, 以提供系统随机存取的接口设备,举例来说,硬盘与软盘等就是啦。
- 字符(character)设备文件:亦即是一些串行端口的接口设备, 例如键盘、鼠标等等。这些设备的特色就是一次性读取的,不能够截断输出。
- 数据接口文件(sockets):
数据接口文件(或者:套接口文件),这种类型的文件通常被用在网络上的数据承接了。我们可以启动一个程序来监听客户端的要求, 而客户端就可以透过这个socket来进行数据的沟通了。 - 符号链接文件:
当我们查看文件属性时,会看到有类似 lrwxrwxrwx,注意第一个字符是l,这类文件是链接文件。是通过ln -s 源文件名 新文件名创建的。
5.3 什么是文件的逻辑结构?什么是文件的物理结构?
文件的逻辑结构是用户可见的结构,即从用户的角度所观察到的文件结构,分为两种:即无结构文件(流式文件)和有结构文件(记录文件)。
文件的物理结构是文件在外存上的存储组织形式,主要表达文件信息在磁盘上存储的方式。
5.4 操作系统对文件的存取有哪两种基本方式?各有什么特点?
顺序存取和随机存取。
顺序存取是指后一次存取总是在前一次存取的基础上进行的,所以顺序存取不必给出具体的存取位置。
随机存取是用户以任意次序请求某个记录。在请求对某个文件进行存取时要指出起始存取位置。
5.6 什么是文件目录?文件目录的内容是什么?
- 文件目录是记录系统中所有文件的文件名及其存放地址的目录表,表中还包括关于文件的说明信息和控制信息。
- 主要内容包括文件名、文件的逻辑结构、文件的物理结构、存取控制信息、管理信息和文件类型。
5.7 在Linux文件系统中,为什么要将文件的控制信息从目录中分离出来,单独构成一个I节点?
因为这样文件的目录大小被缩小了,因此目录文件的长度也减少,检索文件目录所需访问的物理块数也就相应减少,所以加快了目录检索的速度,也大大减少了系统的开销。
5.8 Linux文件系统采用怎样的物理结构?有什么优点和缺点?
- 顺序结构。
- 优点:
- 支持顺序存取和随机存取。
- 顺序存取速度快。
- 所需的磁盘寻道次数和寻道时间最少。
- 缺点:
- 需要为每个文件预留若干物理块以满足文件增长的部分需要。
- 不利于文件插入和删除。
- 优点:
- 链式结构。
- 优点:
- 提高了磁盘空间利用率,不需要为每个文件预留物理块。
- 有利于文件插入和删除。
- 有利于文件动态扩充。
- 缺点:
- 存取速度慢,不适于随机存取。
- 当物理块间的连接指针出错时,数据丢失。
- 优点:
5.9 文件存储空间管理有哪几种?各有什么特点?Linux系统的存储空间采用什么方法?
- **空闲空间表法。**系统为外存上的所有空闲区建立一张空闲表,每个空闲区对应一个空闲表项,包括序号、第一个空闲磁盘盘块号、空闲磁盘块个数以及对应的空闲物理块号。
- **位示图法。**它将文件存储器的存储空间建立一张位示图,用以反映整个盘空间的分配情况。
- **空闲块链法。**这种方法将盘上的所有空白块用链接指针或索引结构组织成一个空白文件。
- **空闲块成组链接法。**该方法兼容了空闲空间表法和空闲块链法。
Linux系统的存储空间采用的是空闲块成组链接法。
5.10 说明在Linux系统中,如何由文件的逻辑块号n找到文件的物理块号。
Linux采用的是混合索引文件结构,即将文件所占用盘块的盘块号,直接或间接地存放在该文件索引节点的地址项中。在查找文件时只要找到该文件的索引节点(即逻辑块号n)就可以用直接或间接的寻址方式获得指定文件的盘块号(即物理块号)。
5.11 在Linux系统中,一个盘块大小为1KB,每个盘块号占4B,则一个进程要访问一个相对于文件开始的偏移量为 263168B 处的数据时,试计算应直接访问还是索引访问?几级索引?
9
第六章设备管理
6.1 设备通常有哪几种分类方法?可以分为哪几种类型?
- 使用特性:
- 存储设备
- 输入/输出设备
- 传输速率:
- 低速设备
- 中速设备
- 高速设备
- 信息传输单位:
- 块设备
- 字符设备
- 资源分配方式:
- 独占设备
- 共享设备
- 虚拟设备
6.2数据传输控制方式有哪几种?各有什么特点?
-
**程序直接控制方式:**CPU和设备只能串行工作.使CPU和设备利用率低,导致计算机工作效率低.
-
中断控制方式:
- 优点是提高CPU和设备利用率。
- 缺点是由于每次的数据传输单位是设备控制器的数据缓冲寄存器的容量,单位传输数据量小,中断次数多,消耗CPU的时间多。
-
**DMA方式:**内存和I/O设备之间进行大批量数据传输时,不由CPU控制具体传输过程,CPU只需提出要求,由DMA控制器控制具体传输过程.在DMA控制器的控制下,在外设和内存之间开辟了直接的数据传输通路,不需要经过CPU的数据寄存器中转.DMA的数据传输单位是数据块,仅在数据块传输结束时才向CPU发出中断信号,减少了中断次数。
**缺点:**智能化低,CPU干预较多,仍要CPU运行设备驱动程序来进行.
-
**通道控制方式:**专门的I/O事务处理机构-通道.接受主机命令,独立执行通道程序.对外部设备的I/O进行操作控制,在内存和外设之间直接进行数据传送.当主机交付的I/O任务完成后,通道向中央处理机发出中断信号,请求CPU处理.
**缺点:**通道指令简单,是由于硬件简单,局限于I/O操作指令; 没有自己的内存,通道程序是放在主机内存中的, 与CPU共享内存。
6.3 中断调用的作用是什么?中断调用与子程序调用有什么区别?
作用:
- 进程时间片到,硬件定时器发送一个时钟中断信号,通知操作系统当前运行进程的时间片用完,操作系统便可调度另一个进程运行,此时采用了时钟中断技术。
- 输入输出操作时,采用查询的方式较慢,浪费CPU资源,引入中断技术.
- 处理异常,如电源故障,地址越界等。
区别:
- 子程序调用一定是程序员在编写程序时事先安排好的,是可知的,而中断是由中断源根据自身的需要产生的,是不可预见的。
- 子程序调用是用CALL指令来实现的,但没有调用中断的指令,只有发出中断请求的事件。
- 子程序的返回指令是RET,而中断服务程序的返回指令是IRET/IRETD。
- 中断方式具有实时性,其可以在函数中的任意位置产生。而子程序调用是编程着写的在程序的特定位置其特定功能的函数。
6.4 什么是独占设备、共享设备和虚拟设备?
- 独占设备。当有多个并发进程共享某一设备时,只允许一个进程访问的设备称为独占设备。
- 共享设备。允许多个并发进程交替使用的设备称为共享设备,该类设备没有占有权的问题,只要设备空闲就可使用。
- 虚拟设备。争对独占设备使用不方便及利用率低的问题,在并发进程使用独占设备时,可以通过虚拟技术把一台独占设备变换为若干台逻辑设备,每个进程使用一台逻辑设备。
6.5 引入缓冲技术的原因有哪些?
- 减少读块设备的次数
- 减少对CPU的中断次数,放宽对中断响应时间的限制.
- 作为无法直接通信的设备间的中转站,在内存中开辟一块缓冲区.
- 解决程序所请求的逻辑记录大小和设备的物理记录大小不匹配的问题.
- 加快进程的推进速度.
6.7 通道的作用是什么?按信息交换方式它可分为哪几个类?
通道是一个独立于CPU的转关输入/输出控制的处理机,它控制设备与内容直接进行数据交换,它有自己的通道指令,这些通道指令受CPU启动,并在操作结束时向CPU发中断信号。
按信息交换方式它可分为三种。
- 字节多路通道。
- 数组选择通道。
- 数组多路通到。
6.8 什么是设备独立性?为什么要引入设备独立性?
- 设备独立性即应用程序独立于具体使用的物理设备。
- 原因:
- 为了实现设备独立性而引入了逻辑设备和物理设备这两格概念。在应用程序中,使用逻辑设备名称来请求使用某类设备;而系统在实际执行时,还必须使用物理设备名称。
- 为了提高系统的可适应性和可扩展性。
- 设备分配时的灵活性和易于实现I/O重定向。
6.12 设磁盘的I/O请求队列中的磁道号为98,183,37,122,14,124,65,67,磁头初始位置为50,若采用基本的扫描磁盘调度算法(假设磁头先向磁盘块号增加的方向移动),磁头移动的磁道数共是多少?
- 先来先服务算法:磁道数共是(98-50)+(183-98)+(183-37)+(122-37)+(122-14)+(124-14)+(124-65)+(67-65)=643.
- 最短寻道时间优先算法:磁道数共是(65-50)+(67-65)+(67-37)+(37-14)+(98-14)+(122-98)+(124-122)+(183-124)=239.
- 扫描算法:磁道数共是(65-50)+(67-65)+(98-67)+(122-98)+(124-122)+(183-124)+(124-37)+(37-14)=243.
- 循环扫描法:磁道数共是(65-50)+(67-65)+(98-67)+(122-98)+(124-122)+(183-124)+(124-14)+(37-14)=266.
6.14 磁盘调度算法有哪些?它们之间有何区别?
- 先来先服务算法:按进程请求访问磁盘的时间先后次序进行调度。
- 最短寻道时间优先算法:选择离磁头距离最近的磁道优先。
- 扫描算法:不仅考虑到要访问的磁道与当前磁道间的距离,更优先考虑的是磁头当前的移动方向。
- 循环扫描法:磁头始终从里向外访问。
6.16 设备驱动程序要完成哪些工作?
- 将接收到的抽象要求转换为具体要求。
- 检查用户 I/O 请求的合法性,了解 I/O 设备的状态,传递有关参数,设置设备的工作方式。
- 发出 I/O 命令,启动分配到的 I/O 设备,完成指定的 I/O 操作。
- 及时响应由控制器或通道发来的中断请求,并根据其中断类型调用相应的中断处理程序进行处理。
- 对于设置有通道的计算机系统,驱动程序还应能够根据用户的 I/O 请求,自动地构成通道程序。
第七章现代操作系统实例
7.1 试说明UNIX系统具有哪些特点?
UNIX系统具有多用户多任务、可移植性、I/O重定向和管道技术、丰富的实用程序、电子邮件等特点。属于层次结构的操作系统模型。
7.3 试说明UNIX系统的进程状态及其转换。
UNIX系统的进程状态共有九个,分别是:用户态执行、核心态执行、内存中睡眠、睡眠且换出、内存中就绪、就绪且换出、僵死、被剥夺状态和创建。
各进程状态的转换:
7.6 试说明UNIX系统的文件系统结构及按名查找方式。
- UNIX系统采用树形文件结构、内核与外核的结合、设备与文件一样的管理机制和使用方法等技术和措施,使得Unix文件系统成为当代非常优秀的系统。
- UNIX系统的按名查找方式即是,目录结构采用了将文件名与文件描述信息分开的方法,文件目录由文件名和该文件的索引节点号构成。
7.7 什么是分布式操作系统?包括哪两种不同的类型?
- 分布式操作系统泛指各种包含多个计算机(处理器)的信息处理系统,因此并行计算机系统和网络系统也都属于分布式系统。
- 第一种是紧密耦合系统,其中的处理机共享存储空间和时钟,在这类多处理机系统中,通信通常通过共享存储区进行;第二种是松散耦合系统,其中的处理机不共享存储区和时钟,每个处理机都有自己的局部存储器,这些处理机间的通信是通过各种通信线路进行的。
第八章操作系统的安全性
8.2 系统安全性的内涵是什么?
一般是具有下面三个特性:
- 保密性。指系统不受外界破坏、无泄露、对各种非法进入和信息窃取具有防范能力。
- 完整性。指信息必须按照其原型保存,不能被有意或无意地修改,只有授权用户才能修改。
- 可用性。指对合法用户而言,无论何时,只要需要,信息必须是可用的,授权用户的合法请求能准确、及时地得到服务或响应,不能对合法授权用户的存取权限进行额外的限制。
8.3 操作系统的安全性功能有哪些?
- 硬件安全机制
- 用户身份认证机制
- 访问控制
- 加密技术
- 病毒及其防御机制
- 监控和审计日志
8.4 可信任计算机系统评价标准计算机系统的安全程度分为哪几个等级?
可信任计算机系统评价标准计算机系统的安全程度分成D、C、B、A四个等级,每个等级又包含一个或多个级别,共包括八个安全级别:D1、C1、C2、B1、B2、B3、A1、A1以上这八个级别逐渐增强。
8.5 CC标准中有哪几个安全保证级别?
- EAL1:功能性测试级。
- EAL2:结构性测试级。
- EAL3:工程方法上的测试及校验级。
- EAL4:工程方法上的方法设计、测试和评审级。
- EAL5:半形式化设计和测试级。
- EAL6:半形式化地验证设计和测试级。
么?
一般是具有下面三个特性:
- 保密性。指系统不受外界破坏、无泄露、对各种非法进入和信息窃取具有防范能力。
- 完整性。指信息必须按照其原型保存,不能被有意或无意地修改,只有授权用户才能修改。
- 可用性。指对合法用户而言,无论何时,只要需要,信息必须是可用的,授权用户的合法请求能准确、及时地得到服务或响应,不能对合法授权用户的存取权限进行额外的限制。
8.3 操作系统的安全性功能有哪些?
- 硬件安全机制
- 用户身份认证机制
- 访问控制
- 加密技术
- 病毒及其防御机制
- 监控和审计日志
8.4 可信任计算机系统评价标准计算机系统的安全程度分为哪几个等级?
可信任计算机系统评价标准计算机系统的安全程度分成D、C、B、A四个等级,每个等级又包含一个或多个级别,共包括八个安全级别:D1、C1、C2、B1、B2、B3、A1、A1以上这八个级别逐渐增强。
8.5 CC标准中有哪几个安全保证级别?
- EAL1:功能性测试级。
- EAL2:结构性测试级。
- EAL3:工程方法上的测试及校验级。
- EAL4:工程方法上的方法设计、测试和评审级。
- EAL5:半形式化设计和测试级。
- EAL6:半形式化地验证设计和测试级。
- EAL7:形式化地验证设计和测试级。