admin 管理员组

文章数量: 887019

目录

  • 第一章 操作系统概论
  • 第二章 操作系统运行环境
  • 第三章 进程与线程
  • 第四章 进程的同步与互斥
  • 第五章 死锁
  • 第六章 存储管理
  • 第七章 文件系统
  • 第八章 I/O设备管理

第一章 操作系统概论

  1. 什么是操作系统?请说明操作系统在计算机系统中的作用和地位。
    操作系统是计算机系统中的一个系统软件,它是这样一些程序模块的集合:它们能够有效地组织和管理计算机中的硬件和软件资源,合理地控制计算机工作流程,控制程序的执行,并向用户提供各种服务功能,使用户能够灵活、方便、有效地使用计算机,并使整个计算机系统能高效地运行。
  2. 操作系统管理计算机系统的哪些资源?
    硬件和软件资源。
  3. 请从资源管理角度说明操作系统的主要功能。
    进程管理(处理器管理)、存储管理、文件管理、作业管理、设备管理
  4. 操作系统有哪些基本特征?
    并发性:计算机系统中同时存在若干个正在运行着的程序;
    共享性:操作系统程序和多个用户程序共享系统中的各种资源
    随机性:操作系统的运行是在一种随机的环境下进行的
  5. 比较Windows、UNIX、Linux操作系统的体系结构,有什么异同?
    Windows体系结构是分成的模块系统,主要层次有硬件抽象层HAL、内核、执行体和大量的子系统集合;
    UNIX操作系统的系统架构图,其最里层是硬件,作为整个系统的基础;其次是操作系统内核,包括进程管理、存储器管理、设备管理和文件管理四个资源管理功能;往外一层是系统调用接口,及操作系统与用户的接口shell以及编译程序等;最外层是应用程序
    Linux系统有四个主要部分,及内核、shell、文件系统和用户程序。
  6. Android操作系统有什么特点?
    Android操作系统分为四层,从高层到低层分别是应用程序层、应用框架层、系统运行库层和Linux内核层。
    以Linux为核心的手机操作平台,是一款开放式操作系统
  7. 手机操作系统通常提供哪些功能?
    除了操作系统通常具备的功能(进程管理、存储管理、文件管理、作业管理、设备管理)之外,还必须具有接打电话,收发短信等通讯功能。
    除此之外,当代手机还通常具备摄影录像,音视频播放等媒体功能。同时还普遍提供软件安装管理的功能,以通过第三方软件进一步丰富手机的功能。
  8. 请叙述各种类型操作系统的工作方式及特点。
    一般把操作系统分为三种基本类型,即批处理操作系统、分时系统和实时系统
    (1)批处理操作系统
    批处理操作系统分为简单批处理系统和多道批处理系统两种类型。
    用户将作业交给系统操作员,系统操作员在收到作业后并不立即将作业输入计算机,而是在收到一定数量的作业后,组成一批作业,再把这批作业输入到计算机中。这批作业可在系统中形成一个连续的、自动转接的作业流。系统操作员然后启动操作系统,系统自动、依次执行每个作业。最后由操作员将执行完毕的作业结果交给用户。
    批处理操作系统的特点是成批处理。
    (2)分时系统
    分时操作系统是为了弥补批处理系统不能提供交互式快速服务的缺点而发展起来的。一台计算机主机连接了若干个终端,每个终端可由一个用户使用。用户通过终端交互式的向系统提出命令请求,系统接受用户的命令后,采用时间片轮转方式处理服务请求,并通过交互方式在终端上向用户显示结果。用户根据系统送回的处理结果发出下一道交互指令。
    分时操作系统具有多路性、交互性、独占性和及时性的特点
    (3)实时系统
    使计算机能在规定的时间内,及时响应外部事件的请求,同事完成对该事件的处理,并能控制所有实时设备和实时任务协调一致地工作的操作系统。目标是,在严格的时间范围内,对外部请求做出反应,系统具有高度可靠性。
    实时系统主要有两类:硬实时系统、软实时系统
    (4)嵌入式操作系统
    嵌入式操作系统就是运行在嵌入式芯片环境中,对整个芯片以及它所操作、控制的各种部件装置等资源进行统一协调、调度、指挥和控制的系统软件。
    嵌入式操作系统具有高可靠性、实时性、占有资源少、智能化能源管理、易于连接、低成本等优点。
    (5)个人计算机操作系统
    个人计算机操作系统是一种单用户多任务的操作系统。其主要特点是:为单个用户服务;采用图形界面人机交互的工作方式,界面友好;使用方便,用户无须具备专门知识,也能熟练地操作系统。
    (6)网络操作系统
    为计算机网络配置的操作系统成为网络操作系统。网络操作系统是基于计算机网络的、在各种计算机操作系统之上按照网络体系结构协议标准设计开发的软件,包括网络管理、通信、安全、资源共享和各种网络应用。
    计算机网络有:集中式模式、分布式模式
    (7)分布式操作系统
    分布式操作系统是网络操作系统的更高级形式,除了有网络操作系统的功能之外,期特征是,系统中所有主机使用同一个操作系统、资源深度共享、透明性和自治性。
  9. 请比较批处理系统、分时系统以及实时系统之间的相同点和不同点。
    相同点:这三类操作系统均为现代计算机系统中普遍使用的操作系统,操作系统本身以及它所管理的对象都是并发的系统,是一个极其复杂和庞大的软件系统。
    不同点:批处理操作系统的特点是成批处理,用户不能干预自己作业的远行;分时系统的特点是多路性、交互性、独占性和及时性;实时操作系统的特点是能在严格的时间范围内对外部请求做出反应,以及具有高度可靠性。
  10. 请描述分时系统下响应时间的含义。、
    分时系统中,通常把用户从终端发出命令到系统给予回答所经历的时间定义为 响应时间。
  11. 在什么情况下应该采用批处理方式?在什么情况下应该考虑分时系统策略?
    批处理系统适用于追求系统资源利用率高、作业吞吐率高的计算机系统。
    分时系统适用于需要提供交互式快速服务的计算机系统。
  12. 现代的通用操作系统把批处理方式和分时方式二者结合起来,为什么要这样做?这 样的结合有什么特点?
    这样的操作系统结合了批处理和分时两种系统的特点,该系统把处理终端用户的、交互式的、比较小的但需要及时处理的作业作为“前台作业”予以优先处理;把需要较长运行时间、要调用其他外部设备、比较大型但无须终端用户干预的且不需要立即处 理的作业作为“后台作业”进行批处理。这样,使整个计算机系统忙闲结合,能更有效地利用计算机系统的资源。
  13. 实时操作系统有什么主要特征?
    在严格的时间范围内,对外部请求做出反应,系统具有高度可靠性。
  14. 在如下的应用场合中,应该选用什么类型的操作系统呢?并请说明为什么。
    导弹控制; 实时操作系统
    国家统计局软件;通用的分时/批处理操作系统
    汽车发动机点火控制;实时操作系统
    火车订票系统;网络操作系统
    互联网电子游戏。网络操作系统
  15. 请说明什么是SPOOLing 技术?在现代操作系统中有没有使用SPOOLing 技术?
    SPOOLing 技术的全称是“同时的外部设备联机操作”。该技术是用磁盘设备作为主机的直接输入输出设备,主机直接从磁盘上选取作业远行,作业的执行结果业存在磁盘上,通道负责将用户作业从外设动态写入磁盘,并使这一操作与主机并行。从而 大大提高了处理器和各种外部设备的利用效率。由于SPOOLing 技术需要通道技术, 所以一般用于大型计算机系统和那些对 I/O处理能力要求比较严格的系统中,一般低档 微型计算机中,不使用此技术。
  16. 网络操作系统和分布式操作系统都是配置在计算机网络上的操作系统,它们之间有 什么本质上的不同?
    网络操作系统是基于计算机网络的,是在各种计算机操作系统之上按网络体系结 构协议标准设计开发的软件,它包括网络管理、通信、安全、资源共享和各种网络应用。 分布式操作系统是网络操作系统的更高级形式,除了有网络操作系统的功能之外,其特 征是系统中所有主机使用同一个操作系统、资源的深度共享、透明性和自治性。
  17. 操作系统设计的过程包括哪些方面,在每个方面都要考虑什么问题?
    操作系统的设计过程包括功能设计、算法设计和结构设计。在每个方面均应考虑使操作系统具有可靠性、高效性、易维护性、易移植性、安全性及简明性等问题
  18. 操作系统的设计目标是什么?
    目标有三条:系统模块化、模块标准化、通信规范化;
  19. 影响操作系统正确性的因素有哪些?
    影响操作系统正确性的因素包括操作系统的功能成分多、各种外部设备 的接口复杂、参与开发的人员较多
  20. 在进行操作系统结构设计时应考虑哪些问题?
    应考虑组成操作系统的各部分的划分原则以及它们之间的关系(即通信),简言之,即操作系统的构成法和组合方法。
  21. 请说明整体式结构、层次式结构和微内核结构的基本思想及优缺点?
    整体式结构(模块组合法)的基本思想是首先确定操作系统的总体功能,然后将总功能 分解为若干子功能,实现每个子功能的程序称为模块,再通过接口将所有模块连接起来形成一个操作系统的整体。
    优点:结构紧密、接口简单直接、系统效率较高。
    缺点:模块间转接随便,各模块相互牵连,独立性差,系统结构不清晰;数据基本上作为全程量处理,模块的修改和维护较困难;由于模块组合常以大型表格为中心,限制了系统的并发性。
    层次式结构的基本思想是为克服模块结构的缺点、减少各模块之间无规则的互相调用、 相互依赖关系,力求将模块间的调用的无序性变为有序性,将操作系统的所有功能模块按功能流图的调用次序,将模块分成若干层,各层之间的模块只能是单向依赖或单向调用关系。
    优点:既具有模块法把整体问题分解成局部化的优点,使各模块自己的组织结构和依赖关系清晰明了,增加了系统的可读性和可适应性,增加了系统的可靠性,易于调式、易于修改、易于扩充、易于维护等。
    微内核(客户/服务器)结构适宜于应用在网络环境下分布式处理的计算环境中。
    优点:将系统的分成若干个小的并且自包含的服务进程分支,每个分支运行在独立的用户进程中,相互之 间通过规范一致的方式接收发送消息而联系起来。优点:可靠]灵活、适宜于分布式处 理的计算环境。
    缺点:效率较低。

第二章 操作系统运行环境

  1. 请简述处理器的组成和工作原理。你认为哪些部分和操作系统密切相关,为什么?
    处理器一般由运算器、控制器、一系列的寄存器以及高速缓存构成。其中,运算器实现指令中的算术和逻辑运算,是计算机的核心。控制器负责控制程序运行的流程,寄存器是一种暂时存储器件,用于 CPU执行指令的过程中暂存数据、地址以及指令信。CPU本身提供了一定的存储能力,但容量很小。处理器中的运算器、控制器、寄存器都与操作系统密切相关。操作系统就是通过对处理器中的这些部件来实现程序的运算和程序流程的控制的。
  2. 为了支持操作系统,现代处理器一般都提供哪两种工作状态,以隔离操作系统和普通程序?两种状态各有什么特点?
    现代处理器一般都提供管态和目态等两种工作状态。用户程序在目态下运行, 只能使用非特权指令,具有较低的特权级别;操作系统在管态下运行,可以使用特权指令和非特权指令,具有较高的特权级别。
  3. 计算机系统中既有操作系统程序,又有用户程序,在什么情况下操作系统才能占用中 央处理器?
    当用户程序占用CPU 时,CPU在目态下运行,只能使用非特权指令;当需要使用特权指令时,将引起一次处理器状态的切换,此时处理器通过中断机制,将目态转换为管态,然后将处理权移交给操作系统中的一段代码,操作系统才能占用 CPU。从目态变为管态其转换的惟一途径是通过中断。
  4. 为什么要把‘启动I/O’等指令定义为特权指令?
    因为如果允许用户随便使用这些指令,就有可能是系统陷入混乱。
  5. 怎样限制用户程序中使用特权指令?
    当用户程序占用 CPU时,CPU在目态下运行,只能使用非特权指令;若此刻 CPU取到了一条特权指令,形成“非法操作”事件,CPU就拒绝执行该指令。中断机制识别到该事件,运行状态就从目态变为管态,将控制权转给操作系统,通过操作系统通知用户修改。
  6. 什么是分级的存储体系结构?它主要解决了什么问题?
    计算机存储系统的设计主要考虑容量、速度和成本三个问题。容量是存储系统的基础,都希望配置尽可能大的存储系统;同时要求存储系统的读写速度能与处理器的速度相匹配;此外成本也应该在一个合适的范围之内。但这三个目标不可能同时达到最优。一般情况下,存储设备读写速度越快,平均单位容量的价格越高,存储容量越小;反之,存储设备读写速度越慢,平均单位容量的价格越低,存储容量越大。为了在这三者之间 取得平衡,就采用分级的存储体系结构,由寄存器、高速缓存、主内存、硬盘存储器、 磁带机和光盘存储器等构成。操作系统经常访问较小、较贵而快速的存储设备,以较大、 较便宜而读写速度较慢的存储设备作后盾。在整体上通过对访问频率的控制来提高存储 系统的效能。
  7. 请简述程序局部性原理。
    是指程序在执行时呈现出局部性规律,即在一段时间内,整个程序的执行仅限于程序中的某一部分。相应地,执行所访问的存储空间也局限于某个内存区域。
  8. 什么是存储保护,有哪些方法实现存储保护?
    存储在内存中的用户程序和操作系统以及他们的数据,有可能受到正在CPU上运行的某系用户程序的有意或无意的破坏,这会造成十分严重的后果。一定有程序向操作系统写入了数据,将有可能造成系统奔溃。对内存中的信息加以严格的保护,使操作系统及其他程序不被破坏,是其正确运行的基本条件之一。
    界址寄存器是被广泛使用的一种存储保护技术。其方法是在处理器中设置一对界限寄存器来存储该用户作业在内存中的上限和下限地址,分别称为上限寄存器和下限寄存器。也可将一个寄存器作为基址寄存器,另一寄存器作为限长寄存器的方法来指出程序在内存中的存储区域。每当处理器要访问内存时,硬件自动将被访问的内存地址与界限寄存器的内容比较,以判断是否越界。如果未越界,就按此地址访问内存,否则将产生中断——越界中断或称为存储保护中断。
  9. 操作系统与硬件如何配合来实现存储保护的?
    操作系统通过与硬件中的界地址寄存器实现存储保护。其方法是在 CPU 中设置一对界限寄存器来存放某个作业在内存中的下限和上限地址,或者一个寄存器作为基址寄存器,另一个作为限长寄存器。每当CPU 访问内存时,硬件自动将被访问的内存地址与界限寄存器的内容进行比较,以判断是否越界。如果未越界,则按此地址访问内存,否则将产生越界中断。
  10. 常见的I/O控制技术有哪些,各有什么特点?
    (1)通道
    通道是独立于中央处理器的,专门负责数据I/O传输工作的处理单元。代替处理器对外部设备实行统一的管理,从而使处理器与外部设备并行工作,提高了躲到程序处理的效率。
    (2)DMA技术
    DMA技术由DMA控制器自动控制成块数据在内存I/O单元之间的传送,提高了处理I/O的效能。
  11. 缓冲技术在计算机系统中起着什么样的作用,它是如何工作的?
    缓冲技术是用在外部设备与其他硬件部分之间的一种数据暂存技术。用以缓解处理器处理数据速度与设备传输数据速度之间不匹配矛盾的一种数据暂存技术。
  12. 时钟对操作系统有什么重要作用?
    计算机系统中的时钟可分为硬件时钟和软件时钟,以及绝对时钟与相对时钟。时钟可以防止系统陷入死循环,实现作业按时间片轮转进行,给出正确的时间信号,定时唤醒事先按确定时间执行的时间,记录事项等。
  13. 硬件时钟怎样实现,其作用是什么?
    硬件时钟的工作原理是,在电路中的晶体振荡器,每个一定间隔产生固定的脉冲频率,时钟电路中的时钟寄存器依据时钟电路所产生的脉冲数,对时钟寄存器进行加1的工作。
  14. 软件时钟怎样实现,其作用是什么?
    软件时钟常用作相对时钟,它的工作原理主要是利用内存单元模拟时钟寄存器,并采用一段程序来计算相应的脉冲数,对内存时钟寄存器进行加1或减1的工作,从而模拟了时钟的功能。
  15. 什么是中断,为什么说中断对现代计算机很重要?
    中断是指处理器对系统中或系统外所发生的异步事件的响应。异步事件是指无一定时序关系的随机发生的事件。中断是所有要打断CPU的正常工作次序, 并要求其去处理某一事件的一种常用手段。中断技术解决了主机和外设并行工作的问题,消除了因外设的慢速而使得主机等待的现象,为多机操作和实时处理提供了硬件基础。
  16. 中断的作用是什么?
    能充分发挥处理器的使用效率。因为输入输出设备可以使用中断的方式同处理器通信,报告其完成处理器所要求的数据传输的情况和问题,这样可以免除处理器不断地查询和等待,从而大大提高处理器的效率
    提高系统实时能力。因为据欧较高实时处理要求的设备,可以通过中断的方式请求及时处理,从而使处理器立即运行该设备的处理程序。
  17. 中断的向量是什么,其作用是什么?
    引起中断的事件称为中断事件或中断源,计算机系统提供的中断源的有序 集合称为中断字。处理某一种中断事件的程序称为中断处理程序。为了使中断装置便于找到所需的中断处理程序,专门设计了中断处理程序入口地址映射表,称为中断向量表, 表中的每一项称为中断向量,主要由程序状态字 PSW和程序计数器PC 的值组成。中断向量的作用是通过它可以找到中断处理程序在内存中的存储位置。
  18. 中断响应主要做哪些工作?
    处理器接收中断信号;
    保护现场,将中断断点的PSW和程序计数器PC 的值存入系统堆栈;
    分析中断向量,取得中断处理程序的入口地址;
    将处理器的PC 值置为中断处理程序的入口地址;
    调用中断处理程序。
  19. 中断处理的主要步骤是什么?
    中断处理指中断信号已经被中断系统的硬件中断装置接收和响应之后,相应的中断处理程序进行中断处理的步骤。包括检查 I/O相关的状态信息,操纵 I/O设备或者在设备和内存之间传送数据。在中断处理程序结束工作之后,处理器会检测到一条中断返回指令,处理器执行此指令,把恢复中断时所保护的中断断点现场,处理器也恢复 成被中断时的状态,整个中断处理结束。
  20. 为什么要对中断进行屏蔽?
    如果没有中断屏蔽,当中断装置响应了某个中断后中断处理程序在进行处理时,中断装置也可能去响应另一个中断事件,就会出现优先级低的中断事件的处理打断优先级高的中断事件的处理,使得中断事件的处理顺序与响应顺序不一致,而且会形成多重嵌套处理,使多现场保护、程序返回等工作变得复杂。因此设置中断屏蔽。
  21. 多个中断同时发生时,系统是怎样处理的?
    同时有多个中断请求时,系统接收中断优先级最高的中断而忽略其中中断优先级较低的中断。如果同一中端级中的多个设备接口都有中断请求,则按照固定的优先数或作者轮转法确定响应的顺序。
    对多个中断的处理策略一般有两种:
    (1)正当处理一个中断时,此时系统将对任何新发生的中断置之不理。在这期间发生的中断将保持挂起状态。当处理器再次允许中断时,这个新的中断信号会被处理器检测到,并作出处理
    (2)中断嵌套。即按照优先度分级,允许优先级较高的中断打断优先级较低的中断处理过程,于是引起中断处理的嵌套。
  22. 阐述硬件中的中断装置的作用。
    硬件的中断装置负责捕获中断源发出的中断请求,并以一定的方式响应中断源(将中断现场的程序状态字PSW,指令计数器PC的值和其他重要现场信息压入系统堆栈),然后将处理器的控制权交给与中断源相应的中断处理程序。
    硬件中断装置接收中断信后,并把中断信后寄存在中断寄存器中。
  23. 哪些中断时间一定会引起进程状态的变化,哪些中断事件可能引起进程状态的变化,有不引起进程状态变化的中断事件吗?
    一定会引起进程状态变化的中断事件:硬件故障中断、输入输出中断、自愿中断;可能会引起变化的中断事件:外部性中断事件、程序性中断事件。进程在执行中状态会不断地改变,每个进程在任何时刻总是处于三种基本状态之一:等待态、就绪态、运行态。中断事件是否引起进程状态的变化,还要看该中断事件的中断优先级和进程PSW的中断屏蔽位。晓津认为:硬件故障中断和自愿中断是一定会引起进程状态变化的,而其他中断则可能引起进程状态变化。
  24. 操作系统为什么要提供‘系统调用’?
    系统调用是操作系统为用户程序提供的一种服务界面,也可以说是操作系统保证程序设计语言能正常工作的一种支持。在源程序一级,用户用程序设计语言描述算题任务的逻辑要求,例如读文件、写文件、请求主存资源等。这些要求的实现只有通过操作系统的系统调用才能完成,其中有些要求还必须执行硬件的特权指令才能达到目的。
    为了从操作系统中获得服务,用户程序必须使用系统调用,系统调用陷入内核并调用操作系统。系统调用是操作系统提供给编程人员的卫唯一接口。
  25. 在操作系统中实现系统调用机制应该解决哪些问题?
    进程控制、文件操作、进程通信、设备管理、信息维护等等
  26. 当应用程序执行到系统调用时,系统是如何处理的?
    当用户使用操作系统调用是,产生一条相应的指令(异常指令),处理器在执行到该指令时发生相应的中断,并发出有关信号给该处理机构(异常处理机构);
    该处理机构在收到了处理器发来的信号后,启动相关的处理程序去完成该系统调用所要求的功能。
    当用户使用操作系统调用时,通过使用访管指令产生中断,把目态切换成管态,并启用操作系统。访管指令包含对应系统调用的功能号。

第三章 进程与线程

  1. 什么是多道程序设计?
    允许多个程序同时进入内存并运行。

  2. 多道程序设计怎样提高系统效率?多道程序设计一定能提高系统效率吗?
    采用多道程序设计能改善资源的使用情况,从而提高系效率。但是也存在一些问题:
    (1)可能延长程序的执行时间
    (2)系统效率的提高有一定限度

  3. 操作系统中为什么要引入进程?进程与程序有什么区别?
    为了更好的描述程序的执行,实现操作系统的并发性和共享性,引入进程的概念。
    进程与程序既有联系也有区别
    (1)进程与程序的联系
    程序是构成进程的组成部分之一,一个进程运行的目的是执行它所对应的程序,如果没有程序,进程就失去了存在的意义。从静态的角度来看,进程是有程序、数据和进程控制块(PCB)三部分组成的。
    (2)进程与程序的区别
    程序是静态的,进程是动态的。
    进程是程序的一个执行过程。程序是永久存在的,而进程是为了程序的一次执行而暂时存在的,进程有生命周期,有诞生,亦有消亡。一个进程可以包括若干程序,一个程序也可以有多个进程。

  4. 程序的并发执行有什么特点?并发和并行有什么区别?
    程序的并发执行的特点有:
    (1)在执行期间,并发程序相互制约
    (2)程序与计算不再一一对应
    (3)并发程序的执行结果不可在现

程序的并行执行与并发执行存在差别。前者指不论在宏观的时间周期上看,还是从微观上看,若干程序确实在同时运行;而程序的并发执行,如果在单处理器系统中,他们在宏观上市同时进行的,但在微观上,这些程序仍然是顺序执行的。

  1. 可再入程序有什么特性?
    能够被多个用户同时调用的程序称作是可再入程序。可再入程序必须是纯代码的程序,程序在执行过程中不会修改自身代码。可再入程序的操作对象,即数据,是与程序相分离的。

  2. 进程有哪些基本状态?他们的变化关系是怎样的?
    进程有三种基本状态:等待状态,就绪状态,运行状态;
    等待状态:也称阻塞状态或封锁状态。指进程因等到某种时间发生而暂时不能运行的状态
    就绪状态:指一个进程已经具备运行条件,但是由于没有获得处理器而不能运行的状态
    运行状态:指进程已获得除利息,并且在处理器上运行的状态。

  3. 系统中有n个进程,在任意时刻,处于运行、就绪和等待状态的进程最多,最少各有几个?
    在单处理器系统中,任一时刻,处于运行状态的进程最多只有一个,最少为0个;处于就绪状态的进程最多有n-1个,最少为0个;处于等待状态的进程最多有n个,最少有0个。

  4. 进程控制块的作用是什么?其主要内容有哪些
    进程控制块是用来描述进程的基本情况以及进程的运行变化过程。进程控制块是进程的唯一标志。
    进程控制块的内容可以分为调度信息和现场信息两大部分。调度信息供进程调度时使用,描述了进程当前所处的状况,包括进程名、进程号、地址空间信息、优先级、当前状态、资源清单、家族关系、消息队列指针、进程队列指针和当前打开文件等;
    现场信息刻画了进程的运行情况,只记录了可能会被其他进程改变的寄存器,如程序状态字、时钟、界地址寄存器等。

  5. 进程能否修改访问自己的进程控制块内容?
    进程控制块是系统为程序建立的用于标志进程,记录各进程执行情况的。进程本身不能访问或者修改自己的进程控制块的内容,但父进程可以访问或修改其子孙进程的进程控制块内容,以便对它的子孙进程进行必要的管理和控制。

  6. 当进程调度选中一个进程后吗,怎样才能让它占用处理器?
    当进程调度选中一个进程后,把选中进程的进程控制块中有关的现场信息,如通用寄存器、控制寄存器和程序状态字寄存器的内容送入处理器相应的寄存器中,处理器就按该进程的要求工作,达到了进程占用处理器的目的。

  7. 为什么引入线程?线程和进程之间的区别和联系是什么?
    为了减少程序并发执行时所付出的时间和空间开销,使操作系统具有更好的并发性。
    线程是进程中的一个实体,是处理器调度和分派的基本单位。进程是拥有资源的独立单位。
    线程具有许多传统进程的特征,故称为轻量级进程或进程元。

  8. 为什么说线程间的状态切换比进程间的状态切换开销低?同一个进程中的两个线程切换的开销是否也比不同进程中两个线程切换的开销少?
    线程不拥有自己的系统资源,切换状态时只需要保存少量的寄存器内容,不涉及存储器管理方面的操作;而进程拥有自己的系统资源,创建和撤销时都需要进行资源分配或回收,切换状态时需要对整个当前进程的处理器环境进行保存,并对新的被调度的进程的处理器环境进行设置,这些操作都需要占用消耗系统资源。
    同一进程间的线程具有相同的地址空间,共享相同的系统资源,切换方便,而不同进程之前线程切换时则需要进行进程切换,所以同一进程间的线程切换时开销也要小于不同进程中两个线程切换的开销。

  9. 进程调度的作用是什么?引起进程调度的因素有哪些?
    进程调度的作用是:记录系统中所有进程的执行情况;根据一定的算法,从就绪队列中选出一个进程准备把处理器分配给它;把处理器分配给进程。
    引起进程调度的因素有:
    (1)正在执行的进程运行完毕
    (2)正在执行的进程由于某种错误而终止
    (3)时间片永外,即有一个进程由运行态变为就绪态
    (4)正在执行的进程调用阻塞原语将自己阻塞起来,即一个进程由运行态变成阻塞态
    (5)创建了新的进程,即一个进程进入就绪队列
    (6)正在执行的进程调用了唤醒原语操作激活了等在资源的进程,即一个等待状态的进程变成就绪态

  10. 抢占式调度和非抢占式调度有何区别?
    可抢占是调度方式,就绪队列中一旦有优先级高于当前运行进程优先级的进程存在时,变立进行调度,转让处理器;不可抢占式调度,一旦把处理器分配给一个进程,它就一直占用处理器,直到该进程自己调用原语操作或等待I/O而进入阻塞状态,或时间片用完才出让处理器。

  11. 对于进程调度,较小的优先级值是表示较低的优先级还是表示较高的优先级?
    不同的操作系统中设定不同。 在UNIX和许多其他系统中,大的优先级值表示低优先级进程。许多系统,比如WINDOWS,刚好相反,大数值表示高优先级。

  12. 在一个单处理器的躲到程序设计系统中,现有两道进程同时执行,其中一道以计算为主,另外一道以输入输出为主,将怎样赋予进程进程占有处理器的优先数?解释为什么?

  13. 假定就绪队列的进程按优先数自大到小顺序排列,当有进程要加入就绪队列时,应按它的优先数排入相应位置,试就单向链接的方式写出实现程序入队的程序。

  14. 在分级调度算法中,为什么对不同就绪队列中的进程规定使用不同长度的时间片?

  15. 在分级调度算法中,为什么对不同就绪队列中的进程规定使用不同长度的时间片?
    因为各个就绪队列的优先级不一样,优先级越高的队列时间片长度越小,优先级越低的队列时间片越长.这样做的目的是让那些短而高优先级的作业迅速完成,而又让大的作业又能够处理完成。

  16. 为什么说多级反馈队列调度算法能较好地满足各类用户的需要?
    多级反馈队列法综合了先进先出调度算法、时间片轮转算法、和可抢占式最高优先级算法的一种进程调度算法。

  17. 系统内核应包含哪些功能?内核的特点是什么?
    系统内核提供下列功能:中断处理程序、进程同步与互斥、进程调度、控制与通信、存储管理的进本操作以及时钟管理等。
    内核只占整个操作系统代码中的一小部分,是最接近裸机的部分,内核是进程赖以活动的基础,内核的功能通过原语操作来实现。

第四章 进程的同步与互斥

  1. 何谓与时间有关的错误?举例说明之。并发进程执行时一定会产生于时间有关的错误吗?为什么?
    并发进程中共享了公共变量,使得程序的计算结果与并发程序执行的速度有关。这种错误的结果又往往是与时间有关的,所以,把它称之为与时间有关的错误。

  2. 什么是临界区?什么是相关临界区?对相关临界区的使用规则?
    若在系统中的某些资源一次只允许一个进程使用,则称这类资源为临界资源或共享变量,而在进程中访问临界资源的程序称为临界区。
    如果有若干进程共享某一临界区,则称该临界区为相关临界区。
    要求进入相关临界区的进程之间构成互斥关系。为了保证系统中的各并发进程顺利运行,对两个以上欲进入相关临界区的进行,必须实行互斥。

  3. 进程间有哪几种通信方式?各有什么特点?各种方式分别适用于那些情况?
    解决进程间的大量信息通信的问题有三类方案:共享内存、消息机制、以及通过共享文件进行通信,及管道通信。
    共享内存:在互相通讯的进程之间设有一个公共内存区,一组进程向该公共内存中写,另一组进程从公共内存中读,通过这种方式实现两组进程间的信息交换。
    消息机制:是用于进程间通信的高级通信原语之一。
    (1)消息缓冲通信:利用内存中公共消息缓冲区实现进程之间的信息交换。消息缓冲区是由:消息长度、消息正文、发送者、消息队列指针组成的数据结构。
    (2)信箱通信:为了实现进程间的通信,可以设立一个通信机构——信箱,以发送信件以及接受回答信件为进程间通信的进本方式。一个信箱的接口可以由信箱说明和信箱体两部分组成。信箱说明有如下的数据结构:可存信件数,已有信件数。
    管道通信:所谓管道,就是连接两个进程之间的一个打开的共享文件,专用于进程之间进行数据通信。管道通信的基础是文件系统。

第五章 死锁

  1. 说明产生死锁的四个必要条件;给出一种可以避免死锁发生的简单方法。
    产生死锁的四个必要条件:
    (1)互斥条件:
    资源是独占的且排他使用。进程互斥使用资源,即一个时刻只能给一个进程使用。
    (2)不可剥夺条件
    不可抢占或不可强占。进程所获得的资源在未使用完毕前,不能被其他进程剥夺。
    (3)请求和保持条件
    部分分配或占有申请。进程先申请它所需要的一部分资源,得到后在申请新的资源,在申请新的资源同时,继续占用分配到的资源
    (4)循环等待条件
    环路等待。环路中的每个进程已占有的资源同时被另一进程所申请。

  2. 死锁和饥饿有什么相同点和不同点?
    若对资源的管理、分配和使用不当,则会产生死锁或是饥饿。
    死锁是指在多道程序系统中,一组进程中的每一个进程均无限期地等待被该组进程中的另一个进程所占有且永远不会释放的资源,这种现象称系统处于死锁状态,简称死锁。
    饥饿是指系统不能保证某个进程的等待时间上界,从而使该进程长时间等待,当等待时间给进程推进和响应带来明显影响时,称发生了进程饥饿。当饥饿到一定程度的进程所赋予的任务即使完成也不再具有实际意义时称该进程被饿死。

  3. 试叙述死锁产生的原因、必要条件和解决死锁的办法。
    产生死锁的原因只要有两个:
    一是竞争资源,系统提供的资源数量有限,不能满足每个进程的需求。
    二是多道程序运行时,进程推进顺序不合理。
    必要条件:互斥条件、不可剥夺条件、请求和保持条件、循环等待条件
    若检测后发现系统有死锁,可通过剥夺资源或撤销进程的方法解除死锁。

  4. 是举出日常生活中死锁的例子,并说明之。

  5. 死锁预防、死锁避免和死锁检测之间的区别是什么?
    死锁预防:预先确定一些资源分配策略,进程按规定申请资源,系统按预定的策略进行分配,这些分配策略均能使产生死锁的四个必要条件之一不成立,从而使系统不会发生死锁。
    死锁避免:当进程提出资源申请时,系统动态测试资源分配情况,仅当能确保系统安全是才把资源分配给进程。
    死锁检测:允许系统中发生死锁,即对资源的申请和分配不加任何限制,只要有剩余的资源就把资源分配给申请进程。因此就可以出现死锁,但是系统将不断跟踪所有进程的进展,定时运行一个‘死锁检测程序’。若检测后没有发现死锁,则系统可以继续工作,若检测后发现系统有死锁,则可通过剥夺资源或撤销进程的方法解除死锁。

  6. 如何防止循环等待条件的发生。
    采用资源的有序分配法。基本思想是,将系统中的所有资源顺序编号。一般原则是,较为紧缺、稀少的资源的编号较大。进程申请资源时,必须严格按照资源编号的顺序进行,否则系统不予分配。即一个进程只有得到编号小的资源,才能申请编号较大的资源;释放资源时,应按编号递减的次序进行。

  7. Dijkstra等人提出的银行家算法,其主要思想是什么?它能够解决实际中的死锁问题吗?为什么?
    进程首先提出对资源的最大需求量,当进程执行中每次申请资源时,系统测试该进程已占用的资源与本次申请的资源数之和是否超过资源的最大需求量。若超过就拒绝分配资源,若没有超过,则系统再次测试系统现存的资源能否满足该进程尚需的最大需求量,若能满足则按当前的申请量分配资源,否则也有推迟分配。
    这样做能保证在任何时候至少有一个进程可以得到所需要的全部资源而执行结束。

第六章 存储管理

  1. 存储管理的主要功能有哪些?
    存储管理的主要任务有:存储分配,为用户分配存储空间,在不需要的时及时回收,内存分配有静态分配和动态分配方式;内存共享,使多个进程共用内存中相同区域,包括代码共享和数据共享;存储保护,使系统正常运行,避免内存中各个程序相互干扰;扩充内存容量,使用户得到的比实际内存容量大的多。

  2. 解释下列术语:逻辑地址、绝对地址、地址重定位。
    绝对地址:一般而言,存储器以字节为编制单位,每个字节都有一个地址与其对应。假定存储器的容量为n个字节,其地址编号顺序为0,1,…,n-1,这些地址称为内存的绝对地址。
    逻辑地址:在多道程序设计的系统中,内存中同时存储了多个用户程序。操作系统根据内存的使用情况为用户分配内存空间。因此,每个用户不能预先知道他的程序将被存储到内存的什么位置。这样,用户程序中就不能使用内存的绝对地址。为了方便用户,每个用户都可认为自己的程序和数据存储在一组‘0’地址开始的连续空间中。用户程序中使用的地址称为逻辑地址。
    地址重定位:把逻辑地址转换成绝对地址的工作称为地址重定位或地址转换,又称地址映射。重定位的方式有静态重定位和动态重定位。

  3. 在可变分区管理方式下,什么是碎片?如何解决碎片问题?
    可变分区指,系统不预先划分固定分区,而是在装入程序的时划分内存分区,使为程序分配的分区的大小正好等于该程序的需求量,且分区的个数是可变的。
    碎片是指,内存经过一段时间的分配回收后,会存在很多很小的空闲块。他们每一块都很小,不足以满足程序分配内存的要求,但是其总和却可以满足 程序的分配要求,这些空闲块被称为碎片。
    解决碎片问题的办法是,在适当的时刻进行碎片整理,通过移动内存中的程序,把所有的空闲碎片合并成一个连续的大的空闲区且放在内存的一端,而把所有程序占用区放在内存的另一端。

  4. 采用紧缩技术有什么优点?移动一道程序时操作系统要做哪些工作?
    紧缩技术可以集中分散的空闲区,提高内存的利用率,便于进程的动态扩充内存。

  5. 解释页式存储管理中为什么要设置页表和TLB。
    页表指出改程序虚拟地址中的页号与所占用的物理页面号之间的对用关系;页面又是硬件进行地址转换的依据。
    TLB:转换检测缓冲区。页式存储管理中的页表是存储在内存中的。当要按给定的虚拟地址进行读写时,必须访问两次内存。第一次按页号读出页表中对用的块号,第二次按照计算出来的绝对地址进行读写。两次访问内存显然延长了指令的执行周期,降低了执行速度。为了提高存取速度,可以在地址映射机制中增加一个小容量的联想寄存器,它由告诉缓冲存储器组成。利用高速缓存存储当前最频繁活动的少数活动页面的页号,这个高速缓存称为转换检测换成区,或快表。

  6. 设计一个页表应考虑哪些因素。

  7. 请叙述页式存储管理中地址转换过程。
    为了实现页式存储,系统要提供一对硬件的页表控制寄存器,即页表始址寄存器和页表长度寄存器,另外还需要高速缓冲存储器。
    物理地址=物理页号*块长+页内地址

  8. 1

  9. 页式存储管理系统中程序的地址空间是一维的还是二维的?请说明理由。

  10. FIFO算法与时钟页面置换算法有何联系?

  11. 简述什么是覆盖技术,什么是交换技术,他们之间的区别是什么?
    覆盖技术是指,一个程序的若干程序段,或几个程序的某些部分共享某一个存储空间。去改即使的实现是吧程序划分成若干功能上相对独立的程序段,按照子很的逻辑结构使那些不会同时执行的程序段共享同一块内存区域。
    交换技术,又称对换技术。是进程在内存与外存之间的动态调度,是由操作系统控制的。
    同覆盖技术一样,交换技术也是利用外存来逻辑地扩充内存,它的主要特点是,打破了一个程序一个进入内存边一直运行到结束的限制。
    与覆盖技术相比,交换技术不要求用户给出程序段之间的逻辑结构,对用户而言是透明的。而且交换可以发生在不同的进程和程序之间,而覆盖发生的同一进程或程序内部,而且只能覆盖那些与覆盖段无关的程序段。因此交换技术比覆盖技术更加广泛地用于现代操作系统。

  12. 何谓程序的局部性原理,请举出三个例子。
    是指程序在执行时呈现出局部性规律,即在一段时间内,整个程序的执行仅限于程序中的某一部分。相应地,执行所访问的存储空间也局限于某个内存区域。

  13. 虚拟存储器是什么?为什么要引入虚拟存储器?
    虚拟存储器,实际上是为扩大内存容量而采用的一种设计技巧。

  14. 叙述虚拟页式存储管理方案的基本思想。为了实现虚拟页式存储管理,系统必须提供的硬件支持有哪些?
    虚拟页式存储管理的思想是,把内存分成大小相等的许多物理页面,程序中的虚拟地址也进行分页,页的大小与物理页面的大小一致,这样可把程序信息按页存储到物理页面中。
    支持页式存储管理的硬件部件通常称为:存储管理部件。

  15. 缺页异常的处理过程是软硬件配合完成的,请叙述缺页异常处理过程。
    当发生缺页异常时,操作系统必须在内存中选择一个页面将其移出,以便为即将调入的页面让出空间。整个缺页出苦力过程如下:
    (1)根据当前执行指令中的逻辑地址查询页面的有效位,判断该页是否存在内存。
    (2)该页标志为0,形成缺页异常。保留现场,中断装置通过交换PSW让操作系统的中断处理程序占用处理器
    (3)操作系统处理缺页异常,寻找一个空闲的页面
    (4)若有空闲页,则把磁盘上读出的信息装入该页面中
    (5)修改页面及内存分配表,表示该页已在内存中。
    (6)若内存中午空闲页,则按某种算法选择一个页面,暂时跳出内存。
    (7)恢复现场,重新执行被中断的指令。

  16. 试述缺页与一般中断的主要区别。

  17. 何谓系统的颠簸现象,为什么会出现这一现象?当系统发生颠簸时,应采取什么措施来加以克服?
    如果刚被调出的页面又立即调用,因而又要把它装入,而装入不就又被选中调出,调出不久又被装入,如此反复,使调度非常频繁。这种现象称为‘抖动’或称‘颠簸’。
    在虚存中,页面可能在内存外存中间频繁地电镀,有可能出现颠簸。颠簸是因为缺页率高而引起的。
    采用工作机模型,为每个进程保持一个工作集,通过动态调整,使进程获得与工作集相等的物理页面数,可以解决颠簸问题。

  18. 什么是工作集?它的作用是什么?
    对于给定的进程访问序列,从时刻(t-t1)到时刻t之间所访问页面的集合,称为该进程的工作集。工作集是随时间而变化的。

第七章 文件系统

  1. 什么是文件和文件系统?文件系统的功能是什么?
    文件可以被解释为一组带标识的、在逻辑上具有完整意义的信息项的序列。
    文件系统,是操作系统中统一管理信息资源的一种软件。它管理文件的存储、检索、更新,提供安全可靠的文件共享和保护手段,并方便用户使用。
    从用户的角度看,文件系统负责为用户建立文件、读写文件、修改文件、复制文件和撤销文件。
    文件系统应具有下述功能:
    (1)统一管理文件的存储空间,实施存储空间的分配与回收
    (2)实现文件从名字空间到外存地址空间的映射,即实现文件的按名存取,以对用户透明的方式管理文件的名字空间
    (3)实现文件信息的共享,并提供文件的保护和保密措施
    (4)向用户提供一个方便使用的接口
    (5)系统维护及向用户提供有关的信息
    (6)保持文件系统的执行效率
    (7)提供与I/O的统一接口

  2. 文件按用途和性能可分为几类?
    (1)系统文件:操作系统和各种系统应用程序和数据组成的文件
    (2)库函数文件
    (3)用户文件:用户委托文件系统保存的文件

  3. 对于用户来说,有些系统把设备也看成文件,试问这样做有什么好处?还会带来什么问题?

  4. 什么是文件的逻辑结构、物理结构?有哪几种典型的文件逻辑结构、物理结构?这些结构各自有什么特点?
    用户看到的是经过抽象的文件结构,及文件的逻辑结构。
    文件在实际的存储空间存储时的结构,就是文件的物理结构。
    典型的文件逻辑结构有:
    (1)流式文件
    流式文件是有序字符的集合,其长度为该文件所包含的字符个数,所以又称为字符流文件。
    (2)记录式文件
    记录式文件是一组有序记录的集合。在记录式文件中,构成文件的基本单位是记录。可分为,定长记录文件和不定长记录文件。
    典型的物理结构有:
    (1)顺序结构
    又称连续结构,把逻辑上连续的文件一次存放在连续编号的物理块中。
    优点:一旦知道了文件在文件存储设备上的起始块号和文件长度,就能很快速地进行读取。支持顺序读取和随机读取
    缺点:文件不能动态地增长
    (2)链接结构
    实质是为每个文件构造所使用的磁盘块的链表。使用这种链接结构的文件,将逻辑上连续的文件分散存储在若干不连续的物理块中。在每个物理块中都设有一个指针,该指针指向其后续的物理块。
    优点:存储碎片问题,迎刃而解,有利于文件的动态扩充,有利于文件插入和删除,提高了磁盘空间的利用率。
    缺点:存取速度慢,不适于随机存取文件;磁盘的磁头移动多,效率相对较低;存在文件可靠性问题;链接指针需要占用一定的空间。
    (3)索引结构
    索引结构的文件把每个物理盘块中的指针字,集中存储在称为索引表的数据结构中的内存索引表中。在每个文件相应的目录条目中包括该文件的索引表地址,而索引表的第i个条目指向文件的第i块。
    优点:可以满足文件动态增长的要求,也满足了文件插入、删除的要求。索引文件还能充分利用外存空间。
    缺点:会引起较多的寻道次数和寻道时间;索引表本身增加了存储空间的开销。
    (4)i节点结构
    是一个多级索引文件结构。基本思想是,给每个文件赋予一张称为i节点的小表,在这张小表中列出文件属性和文件中各块在磁盘上的地址。
    使用i节点的文件结构,不仅适合小文件使用,也可供大型文件使用,灵活性比较强。比一般的多级索引结构占用较少的系统空间。

  5. 怎样确定文件的存取方式?请总结文件的存取方式、文件的物理结构和存储设备类型之间的关系。
    文件的存取方式主要有:顺序存取和随机存取两种。选择哪一种存取方式,即取决于用户使用文件的方式,也有文件所使用的存储介质有关系。

  6. 文件系统应由哪些部分组成?简述各部分的主要工作。

  7. 请设计一个文件系统的FCB,并说明为何要安排FCB中每一项内容。
    文件控制块,文件的描述性数据结构,文件控制块中的信息可以分为:文件存取控制信息、文件结构信息、文件管理信息。
    通常包括:文件名、文件号、用户名、文件长度、文件地址、文件类型、文件属性、共享计数、文件的建立日期、保存期限、最后修改日期、最后访问日期、口令、文件逻辑结构、文件物理结构等等。

  8. 文件目录的作用是什么?为了实现按名存取,文件目录应包含哪些内容?
    文件目录的作用是实现按名存取。

  9. 多级目录结构的特点有哪些?建立多级目录的好处好那些?
    多级目录结构的优点是便于文件分类,且具有以下特点:
    (1)层次清楚
    (2)解决了文件重名问题
    (3)查找搜索速度快

  10. 什么是当前目录?引入当前目录的好处是什么?当前目录实现时要考虑什么问题?
    文件系统向用户提供了一个当前正在使用的目录,称为当前目录。
    使用当前目录,使检索路径变短,检索速度提高。

  11. 磁盘空间的管理办法有几种?
    (1)位示图
    基本思想是,利用一串二进制位的值来反映磁盘空间的分配使用情况。
    (2)空闲块表
    专门为空闲块建立的一张表,该表记录外存储器全部空闲的物理块:包括每个空闲块的第一个空闲物理块号和该空闲块中空闲的物理块数。
    (3)空闲块链表
    将外存储器中所有的空闲物理块连成一个链表,用一个空闲块首指针指向第一个空闲块,随后的空闲块中都含有一个指向下一空闲块的指针,最后一块的指针为空,表示链尾,这样就构成了一个空闲块链表。
    (4)空闲块成组链接法
    对链接表的一种改进方案,将n个空闲块的地址存储在第一个空闲块中。

  12. 文件分配所用的位示图应该保存在哪里,请说明原因。
    位示图对空间分配情况的描述能力强。一个二进制位就描述了一个物理块的状态。另外,位示图占用空间较小,因此可以复制到内存,是查找即方便有快速。位示图适用于各种文件物理结构的文件系统中。

  13. 系统打开文件表和用户打开文件表的作用是什么?为什么将他们分来处理?
    系统打开文件表用户保存一打开文件的文件控制块,通常放在内存。表中含有文件控制块、共享计数、修改标志。
    每个进程都有一个用户打开文件表。表中含有文件描述符、打开方式、读写指针,系统打开文件表入口。

  14. 文件系统提供的主要文件操作有哪些?
    (1)建立文件 create(文件名,访问权限,(最大长度))
    (2)打开文件 open(文件路径名,打开方式)
    (3)读文件 read(文件名,(文件内位置),要读的长度,内存目的地址)
    (4)写文件 write(文件名,记录键,内存位置)
    (5)关闭文件 close(文件名)
    (6)删除文件 delete(文件名)
    (7)指针定位 seek(fd, 新指针的位置)

  15. 文件系统中建立、打开和关闭操作的主要目的是什么?建立和打开文件的主要区别是什么?能不能只用一个命令,完成文件的建立和打开操作?
    建立文件的实质是建立文件的文件控制块FCB,并建立必要的存储空间,分配空的FCB,从而建立起系统与文件的联系。
    打开文件,是使用文件的第一步,任何一个文件在使用前都要先打开,即把文件控制块FCB送入内存。
    删除文件时,系统根据用户提供的文件名和文件描述符,检查此次删除的合法性,若合法则收回文件所占用的文件控制块及物理块等资源。

  16. 文件系统能允许用户去关闭一个不是自己打开或建立的文件吗?

  17. 什么是文件共享?可通过什么办法来实现用户之间共享某个文件?
    文件的共享是指一个文件可以允许多个用户共同使用。
    在多级目录结构中,连接法是常用的实现文件共享计数。对文件共享的连接法可以通过两种连接方式实现:一直是允许目录项连接到任意表示文件目录的节点上;另一种只允许连接到表示普通文件的节点上。

  18. 在设计文件系统的安全性时,应考虑哪些方面的情况?
    (1)灾祸
    (2)硬件或软件故障
    (3)人为的出错

  19. 什么是文件保护?什么是文件保密?
    文件保护是保护文件不被破坏。常用的文件保护方式有:建立副本、定时转储。
    文件保密是防止不经文件拥有者授权而窃取文件。文件的保密措施有:隐藏文件目录、设置口令、使用密码以及病毒防范。

  20. 计算机用户身份鉴别与验证通常有哪几种方式?

  21. 常用的文件安全控制的实现方法有哪些?

第八章 I/O设备管理

  1. 设备管理的目标和功能是什么?
    目标是:使用户和应用程序开发人员能够方便地使用输入输出设备。
    功能能有:解决I/O设备的性能和CPU性能不匹配矛盾的问题;实现对I/O设备的统一管理;保证用户对I/O设备的使用必须是安全的。

  2. 为什么提出设备的独立性概念?实现设备独立性的好处有什么?
    除了直接与设备打交道的低层软件外,其他部分的软件并不依赖于硬件。I/O软件独立于设备,可以提高设备管理软件的设计效率。

  3. 什么是设备的静态分配方式?什么是设备的动态分配方式?各有什么特点?、
    静态分配方式是在用户作业开始执行前,由系统一次分配该作业所要求的的全部设备、控制器。是安全分配方式,不会出现死锁,但设备的使用效率低。
    动态分配方式是在进程执行过程中根据执行需要进行。有利于提高设备的使用效率,但如果分配算法不当,则可能造成死锁。

  4. 处理器与外部设备之间有几种I/O控制方式?他们各自有什么特点?
    (1)程序控制方式 PIO
    由用户进程直接控制处理器或内存与外围设备之间进行信息传送的方式
    优点:处理器与外设的操作能通过状态信息得到同步,且硬件结构比较简单
    缺点:处理器效率较低,传输完全在处理器的控制之下,对外部出现的异常事件无实时响应的能力。
    (2)中断控制方式
    (3)DMA控制方式(直接访问内存)
    (4)通道控制方式

  5. 启动磁盘执行一个I/O操作话花费的时间由哪几部分组成?
    寻找时间——磁头在移动臂带动下移动到制定柱面所花费的时间
    延迟时间——指定扇区旋转到磁头下的时间
    传送时间——由磁头进行读写完成信息传送的时间

  6. 什么是移臂调度?什么旋转调度?各有哪些主要的调度算法?
    根据访问者制定的柱面位置来决定执行次序的调度,称为移臂调度。
    主要算法有:先来先服务、最短寻找时间优先、电梯调度、单向扫描调度
    根据延迟时间来决定执行次序的调度,称为旋转调度。

  7. 为什么引入通道?有哪几类通道?他们各自的特点是什么?
    通道是一个特殊功能的处理器,他有自己的指令和程序,可以实现对外围设备的统一管理和外围设备与内存之间的数据传送。
    根据信息交换方式的不同,一个系统中可以设立三种类型的通道:选择通道,数组多路通道、字节多路通道。

  8. 解释通道命令、通道程序、地址字和通道状态字

  9. 中央处理器与通道之间是怎样配合工作的?

  10. 设备驱动程序的主要功能是什么?
    设备驱动程序的最突出的特点是他与I/O设备的硬件结构密切联系。是操作系统低层中唯一知道各种输入输出设备的控制器细节以及用途的部分。

  11. 请说明SPOOLing技术的基本思想,SPOOLing系统由哪些部分组成?简述他们的功能。
    SPOOLing系统主要包括输入程序模块、输出程序模块、作业调度模块。

  12. SPOOLing系统中输入井和输出井的作用是什么?
    输入井:在作业自行前就利用慢速设备将作业预先输入到后援存储器中去,作业进入内存运行后,使用数据时,直接从输入井取出。
    输出井:作业执行时不必启动外部设备输出数据,只需将这些数据写入输出井中去,称为缓输出。

  13. 实现虚拟设备的主要条件是什么?

  14. 为什么说SPOOLing技术实现了虚拟设备?SPOOLing系统为什么能提高独占设备的利用率?

  15. 在什么条件下要使用缓冲技术?
    为了解决I/O设备与处理器速度不匹配的问题。

  16. 为什么相比单缓冲。采用双缓冲可以提高I/O的性能?
    单缓冲是在I/O设备与处理器间设置一个缓冲区,不能实现I/O设备与I/O设备之间的并行操作。设置双缓冲区可以解决两台I/O设备之间的并行操作问题。

  17. DMA技术和通道技术的相同点和不通点是什么?

本文标签: 课后 习题 操作系统 答案