第1章 操作系统概论
(1) 试说明什么是操作系统,它具有什么特征?其最基本特征是什么?
解:
操作系统就是一组管理与控制计算机软硬件资源并对各项任务进行合理化调度,且附加了各种便于用户操作的工具的软件层次。
现代操作系统都具有并发、共享、虚拟和异步特性,其中并发性是操作系统的最基本特征,也是最重要的特征,其它三个特性均基于并发性而存在。 (2) 设计现代操作系统的主要目标是什么?
解:
现代操作系统的设计目标是有效性、方便性、开放性、可扩展性等特性。其中有效性指的是OS应能有效地提高系统资源利用率和系统吞吐量。方便性指的是配置了OS后的计算机应该更容易使用。这两个性质是操作系统最重要的设计目标。开放性指的是OS应遵循世界标准规范,如开放系统互连OSI国际标准。可扩展性指的是OS应提供良好的系统结构,使得新设备、新功能和新模块能方便地加载到当前系统中,同时也要提供修改老模块的可能,这种对系统软硬件组成以及功能的扩充保证称为可扩展性。 (3) 操作系统的作用体现在哪些方面?
解:
现代操作系统的主要任务就是维护一个优良的运行环境,以便多道程序能够有序地、高效地获得执行,而在运行的同时,还要尽可能地提高资源利用率和系统响应速度,并保证用户操作的方便性。因此操作系统的基本功能应包括处理器管理、存储器管理、设备管理和文件管理。此外,为了给用户提供一个统一、方便、有效的使用系统能力的手段,现代操作系统还需要提供一个友好的人机接口。在互联网不断发展的今天,操作系统中通常还具备基本的网络服务功能和信息安全防护等方面的支持。
(4) 试说明实时操作系统和分时操作系统在交互性、及时性和可靠性方面的异同。
解:
? 交互性:分时系统能够使用户和系统进行人-机对话。实时系统也具有交互性,
但人与系统的交互仅限于访问系统中某些特定的专用服务程序。
? 及时性:分时系统的响应时间是以人能够接受的等待时间为标准,而实时控制系
统对响应时间要求比较严格,它是以控制过程或信息处理中所能接受的延迟为标准。
? 可靠性:实时系统要求系统可靠性要比分时系统高。在实时系统中往往采用多级
容错措施来保证系统的安全及数据的安全。
(5) 试比较分布式操作系统和网络操作系统的异同。
解:
它们的区别在于:分布式操作系统的设计思想和网络操作系统是不同的,这决定了它们在结构、工作方式和功能上也不同。网络操作系统要求网络用户在使用网络资源时首先必须了解网络资源,网络用户必须知道网络中各个计算机的功能与配置、软件资源、网络文件结构等情况,在网络中如果用户要读一个共享文件时,用户必须知道这个文件放在哪一台计算机的哪一个目录下;分布式操作系统是以全局方式管理系统资源的,它可以为用户任意调度网络资源,并且调度过程是“透明”的。
(6) 什么是操作系统虚拟机结构?它有什么好处?
解:
虚拟机结构OS最初是为了满足用户对分时系统的需求而出现的。VM/370的核心程序
为虚拟机监控器(virtual machine monitor),它运行于裸机之上并提供多道程序功能。该系统向上层提供多个对裸机硬件精确复制的虚拟机,这些复制品均包含核心态、用户态、I/O处理、中断以及其它真实机器所应该具有的全部功能。
这样做的好处是凡是能在一台物理裸机上运行的操作系统均可以出现在一个特定虚拟机上,分配给各用户的不同虚拟机上可以随用户的个人爱好和操作习惯不同而采用不同的操作系统。在用户看来就是直接在自己独享的一台裸机上工作。 (7) 试说明客户机/服务器结构的操作系统为什么获得广泛应用。
解:
客户机/服务器结构的操作系统具有不同于传统集中式OS的一系列独特优点,使得其在网络时代大为流行。主要原因有以下几点:
1. 该系统的数据可以进行分布式处理和存储。客户机本身均具有一定的处理能力,部
分数据处理和存储工作可由本地客户机完成,减少了服务器机的任务量。 2. 对于重要数据,可以将其放在受到严密保护的服务器所在的局域网内集中管理,以
便保证数据安全。
3. C/S结构有较好的灵活性和可扩充性,客户机/服务器机类型可选范围很大。 4. 易于修改用户程序。对客户机的修改和增删很方便,甚至可以由用户自行进行。 (8) 处理机管理有哪些主要功能?请简要描述。
解:
处理机的管理功能主要体现在创建、撤销进程,并按照一定的算法为其分配所需资源,同时还要管理和控制各用户的多个进程协调运行,确保各个进程可以正确的通信。在多道程序OS中,这些管理功能最终通过对进程的控制和管理来实现,而在具有线程机制的OS中,这些功能的实现还依赖于对线程的管理和控制。 (9) 存储器管理有哪些主要功能?请简要描述。
解:
操作系统所管理的存储器包括内存、外存等,因此存储器管理的主要任务就是将各种存储器件统一管理,保证多道程序的良好运行环境,同时还要兼顾内存利用率、逻辑上扩充内存的需求以及用户的感受,提供优良的控制、存取功能,为用户提供操控存储器的手段。 为实现上述要求,存储器管理应具有内存分配、内存回收、内存保护、地址映射和虚拟内存等功能。
(10) 文件管理有哪些主要功能?请简要描述。
解:
其主要功能就是管理外存上的静态文件,提供存取、共享和保护文件的手段,以方便用户使用,同时禁止无权限用户对他人资源的误访问或有权限用户对资源的误操作。文件管理机制还要能有效管理外存空闲区域,根据文件的大小为其分配和回收空闲区。为了满足用户对响应时间的要求,文件管理机制还应实现目录管理,以便快速地定位文件。文件管理机制能有效保护文件安全,提高资源利用率,为用户提供快速检索和使用文件的手段,是OS不可或缺的组成部分。
(11) 设备管理有哪些主要功能?请简要描述。
解:
设备管理的主要作用是使用统一的方式控制、管理和访问种类繁多的外围设备。设备管理功能主要体现在:接收、分析和处理用户提出的I/O请求,为用户分配所需I/O设备,同时还要做到尽量提高CPU和I/O设备利用率、I/O处理效率,为用户提供操控I/O设备的便捷界面和手段。根据设备管理模块的功能要求,可以将其功能分为设备分配、缓冲管理、设备处理、虚拟设备等。
第2章 操作系统的界面
(1) 请说明系统生成和系统引导的过程。
解:
系统的生成过程:当裸机启动后,会运行一个特殊的程序来自动进行系统的生成(安装),生成系统之前需要先对硬件平台状况进行检查,或者从指定文件处读取硬件系统的配置信息,以便根据硬件选择合适的操作系统模块组,比较重要的信息通常有:CPU类型、内存大小、当前关联设备的类型和数量以及操作系统的重要功能选项和参数。按照这些信息的指示,系统生成程序就可以正确地生成所需的操作系统。
系统引导的过程:系统引导指的是将操作系统内核装入内存并启动系统的过程。主要包括初始引导、内核初始化、全系统初始化。初始引导工作由BIOS完成,主要完成上电自检,初始化基本输入输出设备,载入操作系统内核代码等工作。内核被载入内存后,引导程序将CPU控制权交给内核,内核将首先完成初始化功能,包括对硬件、电路逻辑等的初始化,以及对内核数据结构的初始化,如页表(段表)等。全系统初始化阶段要做的就是启动用户接口程序,对系统进行必要的初始化,使系统处于等待命令输入状态。 (2) 操作系统具有哪些接口?这些接口的作用是什么?
解:
操作系统为用户提供的接口有图形接口、命令接口和程序接口几种形式。 操作系统包括三种类型的用户接口:命令接口(具体又可分为联机命令接口与脱机命令接口)、程序接口及图形化用户接口。其中,命令接口和图形化用户接口支持用户直接通过终端来使用计算机系统,而程序接口则提供给用户在编制程序时使用。
(3) 请说明操作系统具有的共性服务有哪些不同类别,这些类别分别用于完成什么功能?
解:所有的操作系统都通过一些基本服务来帮助用户简单便捷地使用计算机各类资源,它们包括以下几个类别:
1. 控制程序运行:系统通过服务将用户程序装入内存并运行该程序,并且要控制程序
在规定时间内结束。
2. 进行I/O操作:用户是不能直接控制设备的,只能通过操作系统与外部设备进行交
互,由系统调用将结果显示在屏幕上或交给用户。 3. 操作文件系统:为了保证实现“按名存取”,文件系统应该为用户提供根据文件名
来创建、访问、修改、删除文件的方法,以确保文件数据的安全可靠以及正确存取。 4. 实现通信:操作系统需要提供多个程序之间进行通讯的机制,来控制程序的执行顺
序。
5. 错误处理:操作系统通过错误处理机制,以便及时发现错误并采取正确的处理步骤,
避免损害系统的正确性和统一性。
(4) 系统调用的用途是什么?
解:
通常,在操作系统内核设置有一组用于实现各种系统功能的子程序(过程),并将它们提供给用户程序调用。每当用户在程序中需要操作系统提供某种服务时,便可利用一条系统调用命令,去调用所需的系统过程。这即所谓的系统调用。系统调用的主要类型包括:
1. 进程控制类,主要用于进程的创建和终止、对子进程结束的等待、进程映像的替换、
进程数据段大小的改变以及关于进程标识符或指定进程属性的获得等;
2. 文件操纵类,主要用于文件的创建、打开、关闭、读/写及文件读写指针的移动和
文件属性的修改,目录的创建及关于目录、特别文件或普通文件的索引结点的建立等;
3. 进程通信类,用于实现各种类型的通信机制如消息传递、共享存储区及信息量集机
制等;
4. 信息维护类,用于实现关于日期和时间及其它系统相关信息的设置和获得。 (5) 命令解释程序有什么作用?
解:
命令解释程序的主要作用是:在屏幕上产生提示符,请用户输入命令,然后读入命令、识别命令,并转至相应的命令处理程序入口地址,把控制权交给该处理程序去执行,最后将有关处理结果(包括出错信息)送屏幕显示。
第3章 处理器管理
(1) 为什么程序并发执行会产生间断性特征,并失去封闭性和可再现性?
解:
之所以产生间断性特征是因为多个程序在并发执行时,需要为了完成同一项任务而相互合作,并发执行的程序间的这种相互制约导致了“暂停—执行—暂停”的间断性运行规律。
失去封闭性是因为程序在并发执行时,多个程序需要共享系统中的多种资源。所以,这些资源的状态是由多个程序改变的,从而使程序的运行失去了封闭性。
失去可再现性是因为程序在并发执行时,由于失去了封闭性,从而导致其失去可再现性。 (2) 什么是进程?为什么要在操作系统中引入进程?
解:
进程是可并发执行且具有独立功能的程序在一个数据集合上的运行过程,它是操作系统进行资源分配和调度的基本单位。“进程”概念是人们为了使程序能够并发执行,并且能对并发的程序加以描述和控制而引入的。
(3) 试从并发性、独立性、动态性上比较程序和进程的不同。
解:
? 并发性是进程的重要特征,同时也是OS 的重要特征。引入进程的目的正是为了
使其程序能和其它进程的程序并发执行,而程序是不能并发执行的。 ? 独立性是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资
源和独立调度的基本单位。而对于未建立任何进程的程序,都不能作为一个独立的单位参加运行。
? 动态性是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到
资源而暂停执行,以及由撤销而消亡,因而进程有一定的生命期;而程序只是一组有序指令的集合,是静态实体。
(4) 什么是PCB?它具有什么作用?为什么说PCB是进程存在的唯一标识?
解:
进程控制块(Process Control Block,PCB)是操作系统为了管理进程而设置的一个专门的数据结构,用它来记录进程的外部特征,描述进程的运动变化过程。
它的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程.
因为系统利用PCB来控制和管理进程,所以PCB是系统感知进程存在的唯一标志。进程与PCB是一一对应的。
(5) 进程有哪些基本状态?这些状态具有什么特征?
解:
进程的三种基本状态分别是:就绪状态、运行状态、阻塞状态。