一、填空练习
1.计算机操作系统是方便用户、管理和控制计算机 的系统软件。
2.操作系统目前有五大类型: 、 、 、 和 。
3.操作系统的五大功能是: 、 、 、 和 。
4.DOS是 的缩写。
5.面对一般用户,通过 方式控制操作系统;面对编程人员,通过 控制。
6.作业输入方式有: 、 、 、 和 等方式。
7.操作系统用户界面的发展经历了三代: 、 和 。
8.计算机操作命令可分为 、 和 。
9.按操作系统中文件的性质与用途分,文件分为: 、 和 。
10.按使用情况,文件可分为 、 和 。
11.在UNIX系统中,文件分为 、 和 。
12.按文件的逻辑存储结构分,文件分为有结构文件,又称为 和无结构文件,又称 。
13.UNIX文件的物理结构采用 。
1、软硬件资源
2、批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统
3、作业管理、文件管理、存储管理、设备管理、进程管理
4、磁盘操作系统(Disk Operation System)
5、命令、系统调用
6、联机输入、脱机输入、直接耦合、假脱机、网络输入
7、一维命令行界面、二维图形界面、三维虚拟现实界面
8、键盘命令、shell程序语言命令、脱机作业控制语言命令
9、系统文件、库文件、用户文件
10、临时文件、永久文件、档案文件
11、普通文件、目录文件、特殊文件
12、记录式文件、流式文件
13、成组链接法
二、单项选择练习
1.操作系统是计算机系统的核心软件。按功能特征的不同,可把操作系统分为[1]、[2]、[3]、网络操作系统和分布式操作系统基本类型。其中[1]的主要目标是提高系统的吞吐率和效率,而[2]是一旦有处理请求和要求处理的数据时,CPU就应该立即处理该数据并将结果及时送回,例如[4]等。
供选择的答案:
[1][2][3]
A、单用户系统 B、批处理系统 C、分时系统
D、微机操作系统 E、实时系统
[4]
A、计算机激光照排系统 B、办公自动化系统
C、计算机辅助设计系统 D、航空订票系统
2.操作系统是一种( )。
A.应用软件 B. 系统软件
C.通用软件 D. 工具软件
3.在下列性质中,哪一个不是分时系统的特征。( )
A. 交互性 B. 多路性 C. 成批性 D. 独占性
4.实时操作系统追求的目标是( )。
A.高吞吐率 B.充分利用内存 C. 快速响应 D. 减少系统开销
5.操作系统是为了提高计算机的[1]和方便用户使用计算机而配置的基本软件。它负责管理计算机系统中的[2],其中包括[3],[4],外部设备和系统中的数据。操作系统中的[3]管理部分负责对进程进行管理。操作系统对系统中的数据进行管理的部分通常叫做[5]。
供选择的答案:
[1] A、速度 B、利用率 C、灵活性 D、兼容性
[2] A、程序 B、功能 C、资源 D、进程
[3][4] A、主存储器 B、虚拟存储器 C、运算器
D、控制器 E、微处理器 F、处理机
[5] A、数据库系统 B、文件系统 C、检索系统
D、数据库 E、数据存储系统 F、数据结构
G、数据库管理系统
6.现代操作系统的两个基本特征是( ) 和资源共享。
A.多道程序设计 B. 中断处理
C.程序的并发执行 D. 实现分时与实时处理
7.以下( )项功能不是操作系统具备的主要功能。
A.内存管理 B.中断处理 C.文档编辑 D.CPU调度
8.批处理系统的主要缺点是( )。
A.CPU的利用率不高 B.失去了交互性
C.不具备并行性 D.以上都不是
9.引入多道程序的目的在于( )。
A.充分利用CPU,减少CPU等待时间
B.提高实时响应速度
C.有利于代码共享,减少主、辅存信息交换量
D.充分利用存储器
10.UNIX命令的一般格式是( )。
A.命令名 [选项] [参数] B.[选项] [参数] 命令名
C.[参数] [选项] 命令名 D.[命令名] [选项] [参数]
11.( )没有多道程序设计的特点。
A.DOS B.UNIX C.Windows D.OS/2
12.下列四个操作系统中,是分时系统的为( )。
A.CP/M B.MS-DOS
C.UNIX D.WINDOWS NT
13.在分时系统中,时间片一定,( ),响应时间越长。
A.内存越多 B.用户数越多
C.后备队列 D.用户数越少
14.用户要在程序一级获得系统帮助,必须通过( )。
A.进程调度 B.作业调度
C.键盘命令 D.系统调用
15.操作系统是一组( )。
A.文件管理程序 B.中断处理程序
C.资源管理程序 D.设备管理程序
16.( )不是操作系统关心的主要问题。
A.管理计算机裸机
B.设计、提供用户程序与计算机硬件系统的界面
C.管理计算机系统资源
D.高级程序设计语言的编译器
17.用户在一次计算过程中,或者一次事务处理中,要求计算机完成所做的工作的集合,这是指( )。
A.进程 B.程序 C.作业 D.系统调用
18.操作系统作业管理的主要功能是( )。
A.作业调度与控制 B.作业提交
C.作业准备 D.编制程序
19.用户在自己的用户终端上连续键入组成作业的若干命令,无需等待一条命令是否执行完毕。所键入的命令形成了一道命令串,存储在一个系统缓冲区中,由操作系统自动地对这些命令逐步提取并解释进行,最后向用户提供处理结果。在这样的多用户、多作业、多命令串的系统中,前后台作业的执行调度( )。
A.完全由操作系统自动完成,无需用户干预
B.由用户干预完成
C.由系统和用户干预结合完成
D.全由用户完成
20.在操作系统中,JCB是指( )。
A.作业控制块 B.进程控制块
C.文件控制块 D.程序控制块
21.作业在系统中存在与否的唯一标志是( )。
A.源程序 B.作业说明书
C.作业控制块 D.目的程序
22.操作系统中的作业管理是一种( )。
A.宏观的高级管理 B.宏观的低级管理
C.系统刚开始加电 D.初始化引导完成
23.作业调度的关键在于( )。
A.选择恰当的进程管理程序 B.选择恰当的作业调度算法
C.用户作业准备充分 D.有一个较好的操作环境
24.系统调用的目的是( )。
A.请求系统服务 B.终止系统服务
C.申请系统资源 D.释放系统资源
25.系统调用是由操作系统提供的内部调用,它( )。
A.直接通过键盘交互方式使用
B.只能通过用户程序间接使用
C.是命令接口中的命令使用
D.与系统的命令一样
26.按照作业到达的先后次序调度作业,排队等待时间最长的作业被优先调度,这是指( )调度算法。
A.先来先服务 B. 最短作业优先
C.定时轮转法 D. 优先数法
27.为了对紧急进程或重要进程进行调度,调度算法应采用( )。
A.先进先出调度算法 B. 优先数法
C.最短作业优先调度 D. 定时轮转法
28.操作系统内核与用户程序、应用程序之间的接口是( )。
A. shell命令 B. 图形界面 C. 系统调用 D. C语言函数
29.文件系统在创建一个文件时,一定为它建立在一个( )中。
A.文件目录 B.目录文件
C.逻辑结构 D.逻辑空间
30.如果文件系统中有两个文件重名,不应采用( )。
A.一级目录结构 B.树型目录结构
C.二级目录结构 D.A和C
31.文件系统采用二级文件目录可以( )。
A.缩短访问存储器的时间 B.实现文件共享
C.节省内存空间 D.解决不同用户间的文件命名冲突
32.文件代表了计算机系统中的( )。
A.硬件 B.软件
C.软件资源 D.硬件资源
33.在UNIX系统中,用户程序经过编译之后得到的可执行文件属于( )。
A.ASCII文件 B.普通文件 C.目录文件 D.特别文件
34.特殊文件是与( )有关的文件。
A.文本 B.图象
C.硬件设备 D.二进制数据
35.文件的存储方法依赖于( )。
A.文件的物理结构 B.存放文件的存储设备的特性
C.A和B D.文件的逻辑
36.树型目录结构的第一级称为目录树的( )。
A.分支节点 B.根节点 C.叶节点 D.终节点
37.使用绝对路径名访问文件是从( )开始按目录结构访问某个文件。
A.当前目录 B.用户主目录 C.根目录 D.父目录
38.目录文件所存放的信息是( )。
A.某一文件存放的数据信息
B.某一文件的文件目录
C.该目录中所有数据文件目录
D.该目录中所有子目录文件和数据文件的目录
39.( )是指有关操作系统和其他系统程序组成的文件。
A.系统文件 B.档案文件
C.用户文件 D.顺序文件
40.按文件用途来分,编辑程序是( )。
A.系统文件 B.档案文件
C.用户文件 D.库文件
41.由字符序列组成,文件内的信息不再划分结构,这是指( )。
A.流式文件 B. 记录式文件
C.顺序文件 D.有序文件
42.Autoexec.bat文件的逻辑结构形式是( )。
A.字符流式文件 B. 库文件
C.记录式文件 D.只读文件
43.数据库文件的逻辑结构形式是( )。
A.字符流式文件 B. 档案文件
C.记录式文件 D.只读文件
44.逻辑文件是( )的文件组织形式。
A.在外部设备上 B.从用户观点看
C.虚拟存储 D.目录
二、单项选择练习
1.[1]-B [2]-E [3]-C [4]-D 2、B 3、D 4、C 5、[1]-B [2]-C [3]-F [4]-A [5]-B
6、C 7、C 8、B 9、A 10、A 11、A 12、C 13、B
14、D 15、C 16、D 17、C 18、A 19、A 20、A 21、C
22、A 23、B 24、A 25、B 26、A 27、B 28、C 29、A
30、A 31、D 32、C 33、B 34、C 35、C 36、B 37、C
38、D 39、A 40、A 41、A 42、A 43、C 44、B
三、问答练习
1.分时系统和实时系统有什么不同?
2.多用户操作系统离开了多终端的硬件支持,能否安装和使用?
3.多用户操作系统和网络操作系统有什么区别?
4.作业调度和进程调度有什么区别?
5.操作系统用户接口中包含哪几种接口?它们分别提供给谁使用?
6.一个文件系统能否管理两个以上物理硬盘?
7.对文件的主要操作使用内容是什么?它的系统调用内容是什么?
8.试说明文件系统中对文件操作的常用系统调用处理功能。
三、问答练习
1、分时系统和实时系统有什么不同?
答:分时系统通用性强,交互性强,及时响应性要求一般(通常数量级为秒);实时系统往往是专用的,系统与应用很难分离,常常紧密结合在一起,实时系统并不强调资源利用率,而更关心及时响应性(通常数量级为毫秒或微秒)、可靠性等。体现在人机控制机制不同。
2、多用户操作系统离开了多终端的硬件支持,能否安装和使用?
答:多用户系统与多终端系统是不同的概念。多用户系统为多个用户使用,是一个软件系统的概念,它强调用户之间的安全保密;而多终端系统是指系统中有多个用户终端,是硬件设备的描述,即使一个终端也可以为多个用户使用。因此,多用户操作系统不一定需要多终端的硬件支持,完全可以安装和使用。
3、多用户操作系统和网络操作系统有什么区别?
答:以单机多用户系统为例,说明它与网络操作系统的比较。
| 单机多用户系统 | 网络操作系统 | |
| CPU | 共用一个或几个 | 多个处理机 |
| 共享资源 | 共享主存 | 共享服务器 |
| 终端工作 | 分时方式 | 网址通信链接 |
| 客户端工作 | 不能工作 | 客户机能工作 |
| 操作系统 | 集中管理 | 客户机有的操作系统 |
答:作业调度和进程调度属于处理机管理(进程调度在第六章介绍)。处理机调度是操作系统的主要功能之一,它的实现策略决定了操作系统的类型,其调度算法的优劣直接影响整个系统的性能。处理机调度的任务是选出待分派的作业或进程,为之分配处理机。
一般来说,处理机调度可分为高级调度和低级调度。
高级调度又称作业调度,作业就是用户程序及其所需的数据和命令的集合,作业管理就是对作业的执行情况进行系统管理的程序的集合。作业调度程序的主要功能是审查系统是否能满足用户作业的资源要求以及按照一定的算法来选取作业。
低级调度又称进程调度,其主要功能是根据一定的算法将CPU分派给就绪队列中的一个进程。进程调度是操作系统中最基本的一种调度,其调度策略的优劣直接影响整个系统的性能。
5、操作系统用户接口中包含哪几种接口?它们分别提供给谁使用?
答:操作系统的用户界面是操作系统与使用者的接口,人机交互控制界面从第一代的键盘命令和系统调用(一维空间)发展到第二代图形化的图标控制(二维空间),正在向第三代虚拟现实(三维空间)发展。
DOS操作系统和UNIX操作系统为命令界面的代表(目前UNIX也提供图形界面)。
UNIX命令格式为:命令名 [选项] [参数]
例如:$ ls –l /user 命令中,ls是命令名(列文件目录),–l为一个选项(表示以长格式显示),/user为一个参数(表示显示user下的文件)。
系统调用是操作系统提供给编程人员的接口。在UNIX系统中,系统调用以C函数的形式出现的。它只能在C程序中使用,不能作为命令在终端输入。
图形界面的代表为微软的Windows操作系统,大多数普通用户使用这两种界面。
在很多计算机应用领域中,三维空间界面得到了广泛的使用。
6、一个文件系统能否管理两个以上物理硬盘?
答:一般的操作系统中,一个文件系统不能够管理两个以上的物理硬盘。特殊用途需要也能够,例如,Windows NT可管理2--32个硬盘。
7、对文件的主要操作使用内容是什么?它的系统调用内容是什么?
答:对文件的主要操作为:
(1)文件管理:包括目录管理,实现按名存取。
(2)文件存储空间的管理:文件的组织形式——逻辑结构和物理结构,分配与管理外部存取器。
(3)文件的存取控制:解决文件保护、保密和共享。
(4)提供方便的用户接口——系统调用。系统调用的主要内容有:文件的创建、打开、读、写、关闭、删除等。
8、试说明文件系统中对文件操作的常用系统调用处理功能。
答:系统调用是操作系统提供给编程人员的唯一接口。利用系统调用,编程人员在源程序中动态请求和释放系统资源,调用系统中已有的功能来完成那些与机器硬件部分相关的工作以及控制程序的执行速度等。系统调用如同一个黑匣子,对使用者屏蔽了具体操作动作,只是提供了有关功能。
有关文件系统的系统调用是用户经常使用的,包括文件的创建(create)、打开(open)、读(read)、写(write)、关闭(close)等。下面是一个有关文件系统的系统调用的例子。
main(argc,argv)
int argc;
char *argv[];
{
int fd1,fd2,fd3,n;
char buf[512],ch=’\\n’;
fd1=open(argv[1],0); /*打开argv[1]对应的文件,返回标识符fd1*/
fd2=open(argv[2],0); /*打开argv[2]对应的文件,返回标识符fd2*/
fd1=create(argv[3],04); /*创建argv[3]对应的文件,返回标识符fd3*/
while((n=read(fd1,buf,512))>0) /*从fd1中读n<=512字节入buf*/
write(fd3,buf,n); /*将buf中n个字节写入fd3*/
write(fd3,&ch,1); /*将换行符号写入fd3*/
while((n=read(fd2,buf,512))>0) /*从fd2中读n<=512字节入buf*/
write(fd3,buf,n); /*将buf中n个字节写入fd3*/
close(fd1); /*关闭文件*/
close(fd2); /*关闭文件*/
close(fd3); /*关闭文件*/
}
“计算机操作系统”课程作业(2)——教材四、五章内容
一、填空练习
1、在设备管理中,为了克服独占设备速度较慢、降低设备资源利用率的缺点,引入了
,即用共享设备模拟独占设备。
2、常用的内存管理方法有 、 、 和 。
3、动态存储分配时,要靠硬件地址变换机构实现 。
4、在存储管理中常用 方式来摆脱主存容量的。
5、在页式管理中,页式虚地址与内存物理地址的映射是由 和
完成的。
6、在请求页式管理中,当 发现所需的页不在 时,产生 中断信号, 作相应的处理。
7、交换算法是在内存中没有 时被调用的,它的目的是选出一个被 的页面。如果内存中有足够的 存放所调入的页,则不必使用 。
8、在页式管理中,页表的作用是实现从 到 的地址映射,存储页表的作用是 。
9、段式管理中,以段为单位 ,每段分配一个 区。由于各段长度 ,所以这些存储区的大小不一,而且同一进程的各段之间不要求 。
10、在段页式存储管理系统中,面向 的地址空间是段式划分,面向 的地址空间是页式划分。
11、文件的存取是分成大小相等的 ,并以它为单位交换信息。
12、从资源分配的角度看,可以把设备分为独占设备和共享设备。打印机属于 设备,而磁盘属于 设备。
13、虚拟设备是通过 技术把 设备变成能为若干用户 的设备。
14、通道是一个于 的专管 的处理机,它控制 与内存之间的信息交换。
15、缓冲区的设置可分为 、 、 和 等。
16、在UNIX系统中,键盘、终端、打印机等以 为单位组织和处理信息的设备称为 ;而磁盘、磁带等以 为单位组织和处理信息的设备称为 。
17、在多道程序环境中,用户程序的相对地址与装入内存后的实际物理地址不同,把相对地址转换为物理地址,这是操作系统的 功能。
18、用户编写的程序与实际使用的物理设备无关,而由操作系统负责地址的重定位,我们称之为 。
二、单项选择练习
1、存储管理的目的是( )。
A.方便用户 B.提高内存利用率
C.方便用户和提高内存利用率 D.增加内存实际容量
2、存储分配解决多道作业地址空间的划分问题。为了实现静态和动态存储分配,需采用地址重定位,即把[1]变成[2],静态重定位由[3]实现,动态重定位由[4]实现。
供选择的答案:
[1]、[2]: A 页面地址 B 段地址 C 逻辑地址
D 物理地址 E 外存地址 F 设备地址
[3]、[4]: A 硬件地址变换机构 B 执行程序 C 汇编程序
D 连接装入程序 E 调试程序 F 编译程序 G 解释程序
(说明:汇编程序、解释程序、编译程序的作用是将源程序变为机器语言指令;调试程序是进行程序调试的一种工具。执行程序是可被计算机直接执行的机器代码程序。)
3、在请求页式存储管理中,若所需页面不在内存中,则会引起( )。
A.输入输出中断 B. 时钟中断
C.越界中断 D. 缺页中断
4、CPU输出数据的速度远远高于打印机的打印速度,为了解决这一矛盾,可采用( )。
A.并行技术 B. 通道技术
C.缓冲技术 D. 虚存技术
5、若处理器有32位地址,则它的虚拟地址空间为( )字节。
A.2GB B.4GB C.100KB D.0KB
6、虚拟存储技术是( )。
A.补充内存物理空间不足的技术 B.补充相对地址空间的技术
C.扩充外存空间的技术 D.扩充输入输出缓冲区的技术
7、虚拟内存的容量受( )的。
A.物理内存的大小 B.磁盘空间的大小
C. 计算机地址位数 D.B和C
8、( )是指将作业不需要或暂时不需要的部分移到外存,让出内存空间以调入其他所需数据。
A.覆盖技术 B.交换技术
C.虚拟技术 D.物理扩充
9、外存(如磁盘)上存放的程序和数据( )。
A.可由CPU直接访问 B.必须在CPU访问之前移入内存
C.是必须由文件系统管理的 D.必须由进程调度程序管理
10、分区管理要求对每一个作业都分配分区中的一个( )的内存单元。
A.地址连续 B.若干地址不连续
C.若干连续的帧 D.若干不连续的帧
11、段页式存储管理汲取了页式管理和段式管理的长处,其实现原理结合了页式和段式管理的基本思想,即( )。
A、用分段方法来分配和管理物理存储空间,用分页方法来管理用户地址空间。
B、用分段方法来分配和管理用户地址空间,用分页方法来管理物理存储空间。
C、用分段方法来分配和管理主存空间,用分页方法来管理辅存空间。
D、用分段方法来分配和管理辅存空间,用分页方法来管理主存空间。
12、存储管理可支持多道程序设计,其中算法简单,但存储碎片多的是( )。
A.段式 B.页式
C.固定分区 D.段页式
13、( )存储管理方式提供一维地址结构。
A.固定分区 B.分段
C.分页 D.分段和段页式
14、分段管理提供( )维的地址结构。
A.1 B.2 C.3 D.4
15、( )实现了段式、页式两种存储方式的优势互补。
A.请求分页管理 B.可变式分区管理
C.段式管理 D.段页式管理
16、从下列有关存储管理的叙述中,选出四条正确叙述。( )
A、在页式存储管理方案中,为了提高内存的利用效率,允许同时使用不同大小的页面;
B、在虚拟存储方式下,程序员编制程序时不必考虑主存的容量,但系统的吞吐量(I/O)在很大程度上依赖于主存储器的容量;
C、固定分区式管理是针对单道系统的内存管理方案;
D、可重定位分区管理可以对作业分配不连续的内存单元;
E、利用交换技术“扩充”内存时,设计时必须考虑的问题是:如何减少信息交换量、降低交换所用的时间;
F、在现代操作系统中,不允许用户干预内存的分配;
G、采用动态重定位技术的系统,目标程序可以不经任何改动,而装入物理内存;
H、页式存储管理中,一个作业可以占用不连续的内存空间,而段式存储管理,一个作业中的一个段则是占用连续的内存空间。
17、以下存储管理技术中,支持虚拟存储器的技术是( )。
A.动态分区法 B.可重定位分区法 C.请求分页技术 D.内外存交换技术
18、在请求分页系统中,LRU算法是指( )。
A、最早进入内存的页先淘汰
B、近期最长时间以来没被访问的页先淘汰
C、近期被访问次数最少的页先淘汰
D、以后再也不用的也先淘汰
19、请求分页存储管理中,若把页面尺寸增加一倍,在程序顺序执行时,则一般缺页中断次数会( )。
A.增加 B.减少 C.不变 D.可能增加也可能减少
20、碎片是指( )。
A、存储分配完后所剩的不连续空闲区
B、没有被使用的存储区
C、不能被使用的存储区
D、未被使用,而又暂时不能使用的存储区
21、碎片现象的存在使得( )。
A.内存空间利用率降低 B. 内存空间利用率提高
C.内存空间利用率得以改善 D. 内存空间利用率不影响
22、当内存碎片总容量大于某一作业所申请的内存容量时,( )。
A、可以为这一作业分配内存
B、不可以为这一作业分配内存
C、拼接后,可以为这一作业分配内存
D、一定能够为这一作业分配内存
23、下列( )存储管理方式能使存储碎片尽可能小,而且使内存利用率较高。
A.固定分区 B.可变分区
C.分页管理 D.段页式管理
24、设备管理的目的是为了合理地利用外部设备和[1],设备按照信息的传递特性可分为[2]和[3]。设备管理的主要程序之一是设备分配程序,当进程请求在内存和外设之间传送信息时,设备分配程序分配设备的过程通常是[4]。
供选择的答案:
[1]: A、提高CPU利用率 B、提供接口 C、方便用户 D、实现虚拟设备
[2]: A、块设备 B、存储设备 C、设备 D、虚拟设备
[3]: A、共享设备 B、输入输出设备 C、系统设备 D、字符设备
[4]: A、先分配设备,再分配控制器,最后分配通道
B、先分配控制器,再分配设备,最后分配通道
C、先分配通道,再分配设备,最后分配控制器
D、先分配通道,再分配控制器,最后分配设备
25、硬通道是一种( )。
A.I/O端口 B.数据通道
C.I/O专用处理机 D.软件工具
26、操作系统中采用缓冲技术的目的是为了增强系统( )的能力。
A.串行操作 B. 控制操作
C.重执操作 D.并行操作
27、操作系统采用缓冲技术,能够减少对CPU的( )次数,从而提高资源的利用率。
A.中断 B. 访问 C. 控制 D. 依赖
28、缓冲技术用于( )。
A、提高主机和设备交换信息的速度
B、提供主、辅存接口
C、提高设备利用率
D、扩充相对地址空间
29、SPOOLing技术用于( )。
A.外设概念 B.虚拟设备概念
C.磁带概念 D.存储概念
30、采用SPOOLing技术的目的是( )。
A.提高独占设备的利用率 B.提高主机效率
C.减轻用户编程负担 D.提高程序的运行速度
31、采用假脱机技术的目的是[1]。假脱机技术是将输入输出控制工作大部分交由相应的通道来承担,利用磁盘作为后援存储器,实现了外设同时联机操作,使得[2]成为[3],减少了对频繁使用外设的压力,但假脱机技术一般不适用于[4]。
供选择的答案:
[1]: A、提高外设和主机的利用率 B、提高内存和主机效率
C、减轻用户编程负担 D、提高程序的运行速度
[2][3]: A、块设备 B、字符设备 C、独占设备 D、虚拟设备
[4]: A、分时系统 B、多道批处理系统
C、网络操作系统 D、多处理机系统
32、在操作系统中,用户在使用I/O设备时,通常采用( )。
A.物理设备名 B.逻辑设备名
C.虚拟设备名 D.设备牌号
33、利用虚拟设备达到输入输出 要求的技术是( )。
A.利用外存作为缓冲,将作业与外存交换信息和外存与物理设备交换信息两者起来,并使它们并行工作的过程。
B.把I/O要求交给多个物理设备分散完成的过程
C.把I/O信息先放在外存,然后由一台物理设备分批完成I/O要求的过程
D.把共享设备改为某作业的独占设备,集中完成I/O要求的过程
三、问答练习
1、某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下:
| 页号 | 物理块号 |
| 0 | 5 |
| 1 | 10 |
| 2 | 4 |
| 3 | 7 |
2、某段表内容如下:
| 段号 | 段首地址 | 段长度 |
| 0 | 120K | 40K |
| 1 | 760K | 30K |
| 2 | 480K | 20K |
| 3 | 370K | 20K |
3、考虑下述页面走向:
1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6
当内存块数量分别为3时,试问FIFO、LRU、OPT这三种置换算法的缺页次数各是多少?
4、为什么要引入缓冲技术?设置缓冲区的原则是什么
5、存储管理的主要功能是什么?
6、解释下列与存储管理有关的名词:
(1)地址空间与存储空间
(2)逻辑地址与物理地址
(3)虚地址与实地址
(4)地址再定位
(5)虚拟存储器
7、什么是请求页式管理?能满足用户哪些需要?
8、简述什么是内存的覆盖和交换技术?两者有什么区别?
9、分页式和分段式内存管理有什么区别?怎样才能实现共享和保护?
10、SPOOLing技术如何使一台打印机虚拟成多台打印机?
11、按资源分配管理技术,输入输出设备类型可分为哪三类?
12、设备驱动程序是什么?为什么要有设备驱动程序?用户进程怎样使用驱动程序?
13、UNIX系统中将设备分为块设备和字符设备,它们各有什么特点?
14、什么叫通道技术?通道的作用是什么?
“计算机操作系统”课程作业3——教材第六、七章内容
一、填空练习
1.程序的 执行是现代操作系统的基本特征之一,为了更好地描述这一特征而引入了
这一概念。
2.进程存在的标志是 。
3.进程的静态实体由 、 和 三部分组成。
4.用于进程控制的原语主要有 、 、 和 。
5.进程被创建后,最初处于 状态,然后经 选中后进入
状态。
6.进程创建工作主要完成的是创建进程控制块(PCB),并把它挂到 队列中。
7.如果系统中有n个进程,则在就绪队列中进程的个数最多为 。
8.进程的同步和互斥反映了进程间 和 的关系。
9.死锁产生的四个必要条件是 、 、 和 四种。
10.操作系统中信号量的值与 的使用情况有关,它的值仅能由 来改变。
11.进程至少有三种基本状态: 、 和 。
12.每执行一次P操作,信号量的数值S减1。若S0,则该进程 ;若S<0,则该进程 。
13.每执行一次V操作,信号量的数值S加1。若 ,则该进程继续执行;否则,从对应的
队列中移出一个进程并将 状态赋予该进程。
14.利用信号量实现进程的 ,应为临界区设置一个信号量mutex,其初值为1,表示该资源尚未使用,临界区应置于 和 原语之间。
15.Windows NT是采用 结构的操作系统,它的进程的功能发生了变化,它只是资源分配的单位,不是 的单位,后者的功能由 完成。
16.通常,线程的定义是____________________________________。在现代操作系统中,资源的分配单位是__________________,而处理机的调度单位是________________,一个进程可以有___________线程。
17.计算机系统一般都设计有两种运行状态, 和 。
18.目前,在操作系统设计中采用的结构模型主要有四种: 、 、 和 。
二、选择练习
1.操作系统中,可以并行工作的基本单位是[1],[1]也是系统核心调度及资源分配的基本单位,它是由[2]组成的,它与程序的主要区别是[3]。
供选择的答案:
[1]: A.作业 B. 函数 C. 进程 D.过程
[2]: A.程序、数据和PCB B. 程序、数据和标识符
C.程序、标识符和PCB D. 数据、标识符和PCB
[3]:A.程序有状态,而它没有 B. 它有状态,而程序没有
C.程序可占用资源,而它不可 D.它可占用资源,而程序不可
2.下列进程状态的转换中,哪一个是不正确的( )。
A.就绪执行 B. 执行就绪
C.就绪等待 D. 等待就绪
3.下列各项步骤中,哪一个不是创建进程所必须的步骤( )。
A.建立一个进程控制块PCB
B.由CPU调度程序为进程调度CPU
C.为进程分配内存等必要的资源
D.将PCB链入进程就绪队列
4.在下列特性中,哪一个不是进程的特性( )。
A.异步性 B. 并发性 C. 静态性 D. 动态性
5.在操作系统中,对信号量S的P原语操作定义中,使进程进入相应等待队列等待的条件是( )。
A.S>0 B. S=0 C. S<0 D. S0
6.进程就是可与其他程序共行执行的程序段的一次执行过程,它是系统进行资源分配和调度的一个基本单位。进程具有[1]、[2]、调度性、异步性和结构性5个基本特征。进程是一次执行过程,具有生命期体现了进程的[1]特征。进程由程序段、[3]、[4]组成,其中[4]是进程在系统中存在的唯一标识。
供选择的答案:
[1][2] A、动态性 B、静态性 C、共行性
D、并发性 E、可执行性 F、易用性
[3] A、过程 B、数据 C、进程标识符 D、函数
[4] A、FCB B、FIFO C、PCB D、JCB
7.进程执行时的间断性,决定了进程可能具有多种状态。进程的基本状态有三种,在分时系统中,当一个进程拥有的时间片到时,则该进程即由[1]进入[2]。
如果出现因某种原因使得处理机空闲时,则需要从就绪队列中选择一进程,并将处理机分配给它,此时该进程进入[3],这个过程是由[4]来完成。
供选择的答案:
[1][2][3] A、就绪状态 B、静止状态 C、等待状态 D、执行状态
[4] A、进程控制程序 B、资源分配程序
C、进程调度程序 D、处理机分配程序
8.为了描述进程的动态变化过程,采用了一个与进程相联系的( )系统,根据它而感知进程的存在。
A.进程状态字 B. 进程优先数 C.进程控制块 D. 进程起始地址
9.已经获得除( )以外的所有运行所需资源的进程处于就绪状态。
A.存储器 B. 打印机 C.CPU D. 磁盘空间
10.进程调度的关键问题是选择合理的( ),并恰当地进行代码转换。
A.时间片间隔 B. 调度算法
C.CPU速度 D. 内存空间
11.采用时间片轮转法进行进程调度是为了( )。
A.多个终端都能得到系统的及时响应
B.先来先服务
C.优先级较高的进程得到及时响应
D.需要CPU最短的进程先做
12.在一段时间内,只允许一个进程访问的资源称为( )。
A.共享资源 B. 临界区
C.临界资源 D. 共享区
13.进程是( )。
A.与程序等效的概念 B. 并发环境中程序的执行过程
C.一个系统软件 D. 存放在内存中的程序
14.进程具有并发性和( )两大重要属性。
A.动态性 B. 静态性
C.易用性 D. 封闭性
15.操作系统在控制和管理进程过程中,涉及到( )这一重要数据结构,这是进程存在的唯一标志。
A.FCB B. FIFO
C.FDT D. PCB
16.从下列有关进程管理的叙述中,选出五条正确叙述。
A、进程之间同步,主要源于进程之间的资源竞争,是指对多个相关进程在执行次序上的协调;
B、临界资源是指每次仅允许一个进程访问的资源;
C、信号量机制是一种有效的实现进程同步与互斥的工具。信号量只能由P-V操作来改变;
D、V操作是对信号量执行加1操作,意味着释放一个单位资源,加1后如果信号量的值小于等于零,则从等待队列中唤醒一个进程,现进程变为等待状态,否则现进程继续进行;
E、消息通信、信箱通信都属于高级通信方式;
F、死锁是指因相互竞争资源使得系统中有多个阻塞进程的情况;
G、若系统中并发运行的进程和资源之间满足互斥使用、保持和等待、非剥夺性和循环等待,则可判定系统中发生了死锁;
H、在对付死锁的策略中,解除死锁通常都是和检测死锁配套使用;
I、产生死锁的原因可归结为竞争资源和进程推进顺序不当;
J、在死锁的解决方法中,由于避免死锁采用静态分配资源策略,所以对资源的利用率不高。
17.并发性是指若干事件在( )发生。
A.同一时刻 B. 同一时间间隔内
C.不同时刻 D. 不同时间间隔内
18.顺序程序和并发程序的执行相比,( )。
A.基本相同 B. 有点不同
C.并发程序执行总体上执行时间快
D. 顺序程序执行总体上执行时间快
19.在单一处理机上,将执行时间有重叠的几个程序称为( )。
A.顺序程序 B. 多道程序
C.并发程序 D. 并行程序
20.引入多道程序技术后,处理机的利用率( )。
A.降低了 B. 有所改善
C.大大提高 D. 没有变化,只是程序的执行方便了
21.在单一处理机上执行程序,多道程序的执行是在( )进行的。
A.同一时刻 B. 同一时间间隔内
C.某一固定时刻 D. 某一固定时间间隔内
22.在单处理机系统中,处于运行状态的进程( )。
A.只有一个 B. 可以有多个
C.不能被挂起 D. 必须在执行完后才能被撤下
23.如果某一进程获得除CPU外的所有所需运行资源,经调度,分配给它CPU,该进程将进入( )。
A.就绪状态 B. 运行状态
C.等待状态 D. 活动状态
24.如果某一进程在运行时,因某种原因暂停,此时将脱离运行状态,而进入( )。
A.自由状态 B. 停止状态
C.等待状态 D. 静止状态
25.一个进程被唤醒意味着( )。
A.该进程重新占有了CPU B.进程状态变为就绪
C.它的优先权变为最大 D.其PCB移至就绪队列的队首
26.进程从运行状态变为等待状态的原因是( )。
A.输入或输出事件发生 B.时间片到
C.输入或输出事件完成 D.某个进程被唤醒
27.在操作系统中同时存在多个进程,它们( )。
A.不能共享系统资源
B.不能调用同一段程序代码
C.可以共享允许共享的系统资源
D.可以共享所有的系统资源
28.操作系统中有一组常称为特殊系统调用,它不能被系统中断,在操作系统中称为( )。
A.初始化程序 B. 原语
C.子程序 D. 控制模块
29.进程间的基本关系为( )。
A.相互与相互制约 B.同步与互斥
C.并行执行与资源共享 D. 信息传递与信息缓冲
30.进程间的同步与互斥,分别表示了各进程间的( )。
A.相互与相互制约 B.协调与竞争
C.不同状态 D. 动态性与性
31.两个进程合作完成一个任务,在并发执行中,一个进程要等待其合作伙伴发来信息,或者建立某个条件后再向前执行,这种关系是进程间的( )关系。
A.同步 B. 互斥
C.竞争 D. 合作
32.系统出现死锁的原因是( )。
A.计算机系统发生了重大故障
B.有多个封锁的进程同时存在
C.若干进程因竞争资源而无休止地等待着,不释放已占有的资源
D.资源数大大少于进程数,或进程同时申请的资源数大大超过资源总数
33.两个进程争夺同一个资源( )。
A.一定死锁 B.不一定死锁
C.不会死锁 D.以上说法都不对
34.解决死锁的途径是( )。
A.立即关机排除故障
B.立即关机再重新开机
C.不要共享资源,增加独占资源
D.设计预防死锁方法,运行检测并恢复
35.进程P1使用资源情况:申请资源S1,申请资源S2,释放资源S1;进程P2使用资源情况:申请资源S2,申请资源S1,释放资源S2,系统并发执行进程P1,P2,系统将( )。
A.必定产生死锁 B. 可能产生死锁
C.会产生死锁 D. 无法确定是否会产生死锁
36.进程和程序的本质区别是( )。
A.存储在内存和外存 B.顺序和非顺序执行机器指令
C.分时使用和独占使用计算机资源 D.动态和静态特征
三、问答练习
1.操作系统为什么要引入进程?进程与程序的关系是怎样的?
2.如何理解进程的顺序性与并发性?
3.什么叫原语?
4.什么是线程?它与进程有什么关系?
5.进程的互斥和同步有什么异同点?
6.一个进程入睡时其断点落在何处?它被唤醒后从何处继续原来的执行?
7.什么是临界区?
8.试说明进程互斥、同步和通信三者之间的关系。
9.考虑一个理发店,只有一个理发师,只有n张可供顾客等待理发的椅子,如果没有顾客,则理发师睡觉;如果有一顾客进入理发店发现理发师在睡觉,则把他叫醒,写一个程序协调理发师和顾客之间的关系。
10.有一个阅览室,共有100个座位,读者进入时必须先在一张登记表上登记,该表为每一座位列一表目,包括座号和读者姓名等,读者离开时要消掉登记的信息,试问:
(1)为描述读者的动作,应编写几个程序,设置几个进程?
(2)试用PV操作描述读者进程之间的同步关系。
11.进程之间有哪些基本的通信方式?它们分别有什么特点?适用于哪些场合?
12.如何尽快熟悉一个计算机操作系统?
13.新一代操作系统采用微内核技术,有什么优缺点?
14.在大程序的编程过程中,模块大小如何选择?分块原则是什么?
作业解答参考
计算机操作系统课程作业(1)——教材前三章内容
一、填空练习
14、软硬件资源
15、批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统
16、作业管理、文件管理、存储管理、设备管理、进程管理
17、磁盘操作系统(Disk Operation System)
18、命令、系统调用
19、联机输入、脱机输入、直接耦合、假脱机、网络输入
20、一维命令行界面、二维图形界面、三维虚拟现实界面
21、键盘命令、shell程序语言命令、脱机作业控制语言命令
22、系统文件、库文件、用户文件
23、临时文件、永久文件、档案文件
24、普通文件、目录文件、特殊文件
25、记录式文件、流式文件
26、成组链接法
二、单项选择练习
2.[1]-B [2]-E [3]-C [4]-D 2、B 3、D 4、C 5、[1]-B [2]-C [3]-F [4]-A [5]-B
6、C 7、C 8、B 9、A 10、A 11、A 12、C 13、B
14、D 15、C 16、D 17、C 18、A 19、A 20、A 21、C
22、A 23、B 24、A 25、B 26、A 27、B 28、C 29、A
30、A 31、D 32、C 33、B 34、C 35、C 36、B 37、C
38、D 39、A 40、A 41、A 42、A 43、C 44、B
三、问答练习
9、分时系统和实时系统有什么不同?
答:分时系统通用性强,交互性强,及时响应性要求一般(通常数量级为秒);实时系统往往是专用的,系统与应用很难分离,常常紧密结合在一起,实时系统并不强调资源利用率,而更关心及时响应性(通常数量级为毫秒或微秒)、可靠性等。体现在人机控制机制不同。
10、多用户操作系统离开了多终端的硬件支持,能否安装和使用?
答:多用户系统与多终端系统是不同的概念。多用户系统为多个用户使用,是一个软件系统的概念,它强调用户之间的安全保密;而多终端系统是指系统中有多个用户终端,是硬件设备的描述,即使一个终端也可以为多个用户使用。因此,多用户操作系统不一定需要多终端的硬件支持,完全可以安装和使用。
11、多用户操作系统和网络操作系统有什么区别?
答:以单机多用户系统为例,说明它与网络操作系统的比较。
| 单机多用户系统 | 网络操作系统 | |
| CPU | 共用一个或几个 | 多个处理机 |
| 共享资源 | 共享主存 | 共享服务器 |
| 终端工作 | 分时方式 | 网址通信链接 |
| 客户端工作 | 不能工作 | 客户机能工作 |
| 操作系统 | 集中管理 | 客户机有的操作系统 |
答:作业调度和进程调度属于处理机管理(进程调度在第六章介绍)。处理机调度是操作系统的主要功能之一,它的实现策略决定了操作系统的类型,其调度算法的优劣直接影响整个系统的性能。处理机调度的任务是选出待分派的作业或进程,为之分配处理机。
一般来说,处理机调度可分为高级调度和低级调度。
高级调度又称作业调度,作业就是用户程序及其所需的数据和命令的集合,作业管理就是对作业的执行情况进行系统管理的程序的集合。作业调度程序的主要功能是审查系统是否能满足用户作业的资源要求以及按照一定的算法来选取作业。
低级调度又称进程调度,其主要功能是根据一定的算法将CPU分派给就绪队列中的一个进程。进程调度是操作系统中最基本的一种调度,其调度策略的优劣直接影响整个系统的性能。
13、操作系统用户接口中包含哪几种接口?它们分别提供给谁使用?
答:操作系统的用户界面是操作系统与使用者的接口,人机交互控制界面从第一代的键盘命令和系统调用(一维空间)发展到第二代图形化的图标控制(二维空间),正在向第三代虚拟现实(三维空间)发展。
DOS操作系统和UNIX操作系统为命令界面的代表(目前UNIX也提供图形界面)。
UNIX命令格式为:命令名 [选项] [参数]
例如:$ ls –l /user 命令中,ls是命令名(列文件目录),–l为一个选项(表示以长格式显示),/user为一个参数(表示显示user下的文件)。
系统调用是操作系统提供给编程人员的接口。在UNIX系统中,系统调用以C函数的形式出现的。它只能在C程序中使用,不能作为命令在终端输入。
图形界面的代表为微软的Windows操作系统,大多数普通用户使用这两种界面。
在很多计算机应用领域中,三维空间界面得到了广泛的使用。
14、一个文件系统能否管理两个以上物理硬盘?
答:一般的操作系统中,一个文件系统不能够管理两个以上的物理硬盘。特殊用途需要也能够,例如,Windows NT可管理2--32个硬盘。
15、对文件的主要操作使用内容是什么?它的系统调用内容是什么?
答:对文件的主要操作为:
(1)文件管理:包括目录管理,实现按名存取。
(2)文件存储空间的管理:文件的组织形式——逻辑结构和物理结构,分配与管理外部存取器。
(3)文件的存取控制:解决文件保护、保密和共享。
(4)提供方便的用户接口——系统调用。系统调用的主要内容有:文件的创建、打开、读、写、关闭、删除等。
16、试说明文件系统中对文件操作的常用系统调用处理功能。
答:系统调用是操作系统提供给编程人员的唯一接口。利用系统调用,编程人员在源程序中动态请求和释放系统资源,调用系统中已有的功能来完成那些与机器硬件部分相关的工作以及控制程序的执行速度等。系统调用如同一个黑匣子,对使用者屏蔽了具体操作动作,只是提供了有关功能。
有关文件系统的系统调用是用户经常使用的,包括文件的创建(create)、打开(open)、读(read)、写(write)、关闭(close)等。下面是一个有关文件系统的系统调用的例子。
main(argc,argv)
int argc;
char *argv[];
{
int fd1,fd2,fd3,n;
char buf[512],ch=’\\n’;
fd1=open(argv[1],0); /*打开argv[1]对应的文件,返回标识符fd1*/
fd2=open(argv[2],0); /*打开argv[2]对应的文件,返回标识符fd2*/
fd1=create(argv[3],04); /*创建argv[3]对应的文件,返回标识符fd3*/
while((n=read(fd1,buf,512))>0) /*从fd1中读n<=512字节入buf*/
write(fd3,buf,n); /*将buf中n个字节写入fd3*/
write(fd3,&ch,1); /*将换行符号写入fd3*/
while((n=read(fd2,buf,512))>0) /*从fd2中读n<=512字节入buf*/
write(fd3,buf,n); /*将buf中n个字节写入fd3*/
close(fd1); /*关闭文件*/
close(fd2); /*关闭文件*/
close(fd3); /*关闭文件*/
}
“计算机操作系统”课程作业(2)——教材四、五章内容
一、填空练习
1、虚拟分配技术
2、分区管理,页式管理,段式管理,段页式管理
3、重定位
4、虚拟存储器
5、页表,硬件地址变换机构
6、内存调度中硬件地址变换机构,内存,缺页,中断处理程序
7、空闲页面,淘汰,空闲页面,置换算法
8、页号,物理块号,记录内存页面的分配情况
9、分配内存,连续的内存,不等,连续
10、用户,物理实现
11、物理块
12、独占,共享
13、SPOOLing,独占,共享
14、CPU,输入输出,外设或外存
15、单缓冲,双缓冲,多缓冲,缓冲池
16、字符,字符设备,块,块设备
17、地址重地位
18、设备无关性(或设备性)
二、单项选择练习
1、C 2、[1]-C [2]-D [3]-D [4]-A 3、D 4、C 5、B 6、A 7、D
8、B 9、B 10、A 11、B 12、C 13、C 14、B 15、D 16、BEFG
17、C 18、B 19、B 20、A 21、A 22、D 23、D 24、[1]-C [2]-A [3]-D [4]-A 25、C 26、D 27、A 28、A 29、B 30、A 31、[1]-A [2]-C [3]-D [4]-A 32、B 33、A
三、问答练习
1、某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下:
| 页号 | 物理块号 |
| 0 | 5 |
| 1 | 10 |
| 2 | 4 |
| 3 | 7 |
答:逻辑地址0A5C(H)所对应的二进制表示形式是:0000 1010 0101 1100 ,由于1K=210,下划线部分前的编码为000010,表示该逻辑地址对应的页号为2。查页表,得到物理块号是4(十进制),即物理块地址为:0001 0010 0000 0000 ,拼接块内地址0000 0000 0101 1100,得0001 0010 0101 1100,即125C(H)。
2、某段表内容如下:
| 段号 | 段首地址 | 段长度 |
| 0 | 120K | 40K |
| 1 | 760K | 30K |
| 2 | 480K | 20K |
| 3 | 370K | 20K |
答:逻辑地址(2,154)表示段号为2,即段首地址为480K,154为单元号,则实际物理地址为480K+154。
3、考虑下述页面走向:
1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6
当内存块数量分别为3时,试问FIFO、LRU、OPT这三种置换算法的缺页次数各是多少?
答:缺页定义为所有内存块最初都是空的,所以第一次用到的页面都产生一次缺页。
当内存块数量为3时:
FIFO 1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6
1 1 1 4 4 4 6 6 6 3 3 3 2 2 2 6
2 2 2 1 1 1 2 2 2 7 7 7 1 1 1
3 3 3 5 5 5 1 1 1 6 6 6 3 3
发生缺页中断的次数为16。
在FIFO算法中,先进入内存的页面被先换出。当页6要调入时,内存的状态为4、1、5,考查页6之前调入的页面,分别为5、1、2、4,可见4为最先进入内存的,本次应换出,然后把页6调入内存。
LRU 1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6
1 1 1 4 4 5 5 5 1 1 7 7 2 2 2
2 2 2 2 2 6 6 6 3 3 3 3 3 3
3 3 1 1 1 2 2 2 2 6 6 1 6
发生缺页中断的次数为15。
在LRU算法中,最近最少使用的页面被先换出。当页6要调入时,内存的状态为5、2、1,考查页6之前调入的页面,分别为5、1、2,可见2为最近一段时间内使用最少的,本次应换出,然后把页6调入内存。
OPT 1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6
1 1 1 1 1 1 3 3 3 3 6
2 2 2 2 2 2 7 2 2 2
3 4 5 6 6 6 6 1 1
发生缺页中断的次数为11。
在OPT算法中,在最远的将来才被访问的页面被先换出。当页6要调入时,内存的状态为1、2、5,考查页6后面要调入的页面,分别为2、1、2、…,可见5为最近一段时间内使用最少的,本次应换出,然后把页6调入内存。
4、为什么要引入缓冲技术?设置缓冲区的原则是什么
答:引入缓冲技术的主要目的是:(1)解决信息的到达率和离去率不一致的矛盾;(2)换存起中转站的作用;(3)使得一次输入的信息能多次使用。
设备缓冲区的原则是:如果数据到达率与离去率相差很大,则可采用单缓冲方式;如果信息的输入和输出率相同(或相差不大)时,则可用双缓冲区;对于阵发性的输入、输出,可以设立多个缓冲区。
5、存储管理的主要功能是什么?
答:存储管理的主要功能是解决多道作业的主存空间的分配问题。主要包括:
(1)内存区域的分配和管理:设计内存的分配结构和调入策略,保证分配和回收。
(2)内存的扩充技术:使用虚拟存储或自动覆盖技术提供比实际内存更大的空间。
(3)内存的共享和保护技术。除了被允许共享的部分之外,作业之间不能产生干扰和破坏,须对内存中的数据实施保护。
6、解释下列与存储管理有关的名词:
(1)地址空间与存储空间
答:由程序中逻辑地址组成的地址范围称为逻辑地址空间,或简称为地址空间。而由内存中一系列存储单元所限定的地址范围称为内存空间,也称为存储空间。
(2)逻辑地址与物理地址
答:在具有地址变换机构的计算机中,允许程序中编排的地址和信息实际存放在内存中的地址有所不同。逻辑地址是指用户程序经编译后,每个目标模块以0为基地址进行的顺序编址。逻辑地址又称相对地址。物理地址是指内存中各物理存储单元的地址从统一的基地址进行的顺序编址。物理地址又称绝对地址,它是数据在内存中的实际存储地址。
(3)虚地址与实地址
答:虚地址同逻辑地址,实地址同物理地址。
(4)地址重定位
答:重定位是把逻辑地址转变为内存的物理地址的过程。根据重定位时机的不同,又分为静态重定位(装入内存时重定位)和动态重定位(程序执行时重定位)。
(5)虚拟存储器
答:虚拟存储器是一种存储管理技术,用以完成用小的内存实现在大的虚空间中程序的运行工作。它是由操作系统提供的一个假想的特大存储器。但是虚拟存储器的容量并不是无限的,它由计算机的地址结构长度所确定,另外虚存容量的扩大是以牺牲CPU工作时间以及内、外存交换时间为代价的。
7、什么是请求页式管理?能满足用户哪些需要?
答:请求页式管理的基本原理是将逻辑地址空间分成大小相同的页,将存储地址空间分块,页和块的大小相等,通过页表进行管理。页表包括页号和块号等数据项,它们一一对应。根据逻辑空间的页号,查找页表对应项找到对应的块号,得到相应的物理地址。每个作业的逻辑地址空间是连续的,重定位到内存空间后就不一定连续了。
此外,页表中还包括特征位(指示该页面是否在内存中)、外存地址、修改位(该页的内容在内存中是否修改过)等。
页式存储管理在动态地址转换过程中需要确定某一页是否已经调入主存。若调入主存,则可直接将虚地址转换为实地址,如果该页未调入主存,则产生缺页中断,以装入所需的页。
页式存储管理将不常用的页面调出内存,使内存的利用率高;虚拟的容量大,用户不必担心内存不够;不要求作业连续存放,有效地解决了“碎片”问题。
8、简述什么是内存的覆盖和交换技术?两者有什么区别?
答:在多道系统中,对换是指系统把内存中暂时不能运行的某部分作业写入外存交换区,腾出空间,把外存交换区中具备运行条件的指定作业调入内存。对换是以时间来换取空间,减少对换的信息量和时间是设计时要考虑的问题 。
由于CPU在某一时刻只能执行一条指令,所以一个作业不需要一开始就全装入内存,于是将作业的常驻部分装入内存,而让那些不会同时执行的部分共享同一块内存区,后调入共享区的内容覆盖前面调入的内容,这就是内存的覆盖技术。
两者的区别主要有:交换技术由操作系统自动完成,不需要用户参与,而覆盖技术需要专业的程序员给出作业各部分之间的覆盖结构,并清楚系统的存储结构;交换技术主要在不同作业之间进行,而覆盖技术主要在同一个作业内进行;另外覆盖技术主要在早期的操作系统中采用,而交换技术在现代操作系统中仍具有较强的生命力。
9、分页式和分段式内存管理有什么区别?怎样才能实现共享和保护?
答:段式与页式存储管理的比较如下表所示。
| 段式 | 页式 |
| 分段由用户设计划分,每段对应一个相应的的程序模块,有完整的逻辑意义。 | 分页用户看不见,由操作系统为内存管理划分。 |
| 段面是信息的逻辑单位 | 页面是信息的物理单位 |
| 便于段的共享,执行时按需动态链接装入。 | 页一般不能共享 |
| 段长不等,可动态增长,有利于新数据增长。 | 页面大小相同,位置不能动态增长。 |
| 二维地址空间:段名、段中地址;段号、段内单元号 | 一维地址空间 |
| 管理形式上象页式,但概念不同 | 往往需要多次缺页中断才能把所需信息完整地调入内存 |
10、SPOOLing技术如何使一台打印机虚拟成多台打印机?
答:将一享打印机改造为可供多个用户共享的打印机,是应用SPOOLing技术的典型实例。具体做法是:系统对于用户的打印输出,但并不真正把打印机分配给该用户进程,而是先在输出井中申请一个空闲盘块区,并将要打印的数据送入其中;然后为用户申请并填写请求打印表,将该表挂到请求打印队列上。若打印机空闲,输出程序从请求打印队首取表,将要打印的数据从输出井传送到内存缓冲区,再进行打印,直到打印队列为空。实现预输入、缓输出和存储转储的三大核心技术。
11、按资源分配管理技术,输入输出设备类型可分为哪三类?
答:按资源分配管理的特点,输入输出设备可分为独享设备、共享设备和虚拟设备三类。
独享设备:即不能共享的设备,一段时间只能由一个作业独占。如打印机、读卡机、磁带机等。所有字符型输入输出设备原则上都应是独享设备。
共享设备:可由若干作业同时共享的设备,如磁盘机等。共享分配技术保证多个进程可以同时方便地直接存取一台共享设备。共享提高了设备的利用率。块设备都是共享设备。
虚拟设备:利用某种技术把独享设备改造成多台同类型独享设备或共享设备。虚拟分配技术就是利用独享设备去模拟共享设备,从而使独占设备成为可共享的、快速I/O的设备。实现虚拟分配的最有名的技术是SPOOLing技术,即假脱机技术。
12、设备驱动程序是什么?为什么要有设备驱动程序?用户进程怎样使用驱动程序?
答:设备驱动进程(I/O进程,进程是并发环境下程序的一次执行,详细说明见教材第6章117页)与设备控制器之间的通信程序称为设备驱动程序。
设备驱动程序是控制设备动作的核心模块,如设备的打开、关闭、读、写等,用来控制设备上数据的传输。它直接与硬件密切相关,处理用户进程发出的I/O请求。
用户进程使用设备驱动程序时,设备驱动程序的处理过程为:将用户进程抽象的I/O要求转换为具体的要求,检查I/O请求的合法性,读出和检查设备的状态,传送必要的参数,设置设备工作方式,启动I/O设备。
13、UNIX系统中将设备分为块设备和字符设备,它们各有什么特点?
答:字符设备是以“字符”为单位进行输入、输出的设备,即这类设备每输入或输出一个字符就要中断一次主机CPU请求进行处理,故称为慢速设备。
块设备是以“字符块”为单位进行输入输出的设备,在不同的系统或系统的不同版本中,块的大小定义不同。但在一个具体的系统中,所有的块一旦选定都是一样大小,便于管理和控制,传送效率较高。
14、什么叫通道技术?通道的作用是什么?
答:通道是一个于CPU的专管输入/输出控制的处理机,它控制设备与内存直接进行数据交换。它有自己的通道指令,这些通道指令受CPU启动,并在操作结束时向CPU发中断信号。
通道方式进一步减轻了CPU的工作负担,增加了计算机系统的并行工作程度。
“计算机操作系统”课程作业3——教材第六、七章内容
一、填空练习
1、并发,进程
2、进程控制块PCB
3、程序,数据集合,进程控制块PCB
4、建立原语、撤消原语,挂起原语,激活原语
5、就绪,进程调度程序,执行
6、就绪
7、n-1
8、直接制约,间接制约
9、互斥使用,保持和等待,非剥夺性,循环等待
10、相应资源,P、V操作
11、执行态,就绪态,等待态
12、继续执行,等待
13、S>0,等待,就绪
14、互斥,P(mutex),V(mutex)
15、微内核,调度运行,线程
16、是进程中执行运算的最小单位,进程,线程,多个
17、用户态,核心态
18、层次模块模型,整体内核模型,进程模型,对象模型
二、选择练习
1、[1]-C [2]-A [3]-B 2、C 3、B 4、C 5、C 6、[1]-A [2]-D [3]-B [4]-C
7、[1]-D [2]-A [3]-D [4]-C 8、C 9、C 10、B 11、A 12、C 13、B 14、A
15、D 16、BCEHI 17、B 18、C 19、C 20、C 21、B 22、A 23、B
24、C 25、B 26、A 27、C 28、B 29、B 30、B 31、A 32、C 33、B
34、D 35、B 36、D
三、问答练习
1、操作系统为什么要引入进程?进程与程序的关系是怎样的?
答:现代计算机系统中程序并发执行和资源共享的需要,使得系统的工作情况变得非常复杂,而程序作为机器指令集合,这一静态概念已经不能如实反映程序并发执行过程的动态性,因此,引入进程的概念来描述程序的动态执行过程。这对于我们理解、描述和设计操作系统具有重要意义。
进程定义为程序在并发环境中的执行过程,它与程序是完全不同的概念。主要区别是:(1)程序是静态概念,是永久性软件资源;而进程是动态概念,是动态生亡的暂存性资源。(2)进程是一个能运行的单位,能与其他进程并发执行,系统是以进程为单位分配CPU的;而程序则不能作为一个能运行单位。(3)程序和进程没有一一对应关系。一个程序在工作时可以由多个进程工作,一个进程在工作时至少对应有一个程序。(4)各个进程在并发执行时会产生制约关系,使各自推进的速度不可预测;而程序作为静态概念,不存在这种异步特征。
进程和程序关系类似生活中的炒菜与菜谱。菜谱相同,而各人炒出来的菜的味道却差别很大。原因是菜谱基本上是一种静态描述,它不可能把所有执行的动态过程中,涉及的时空、环境等因素一一用指令描述清楚。
2、如何理解进程的顺序性与并发性?
答:进程的顺序性与并发性:
1、顺序性
顺序性包括两层含义:(1)对于一个进程来说,它的所有指令是按序执行的;(2)对于多个进程来说,所有进程是依次执行的。
例如,假如有P1和P2两个进程,其活动分别为:
P1活动:a1 a2 a3 a4
P2活动:b1 b2 b3 b4
顺序执行时,有如下两种情形:
情形1:a1 a2 a3 a4 b1 b2 b3 b4
情形2:b1 b2 b3 b4 a1 a2 a3 a4
2、并发性
并发性包括如下两层含义:(1对于一个进程来说,它的所有指令是按序执行的;(2)对于多个进程来说,所有进程是交叉执行的。
例如,对于上面P1和P2两个进程来说,并发执行有许多情形,如:
情形1:a1 b1 b2 a2 a3 b3 a4 b4
情形2:b1 b2 a1 a2 a3 b3 b4 a4
并发进程在其执行过程中,出现哪种交叉情形是不可预知的,这就是并发进程的不确定性,操作系统应当保证:无论出现何种交叉情形,每个进程运行的结果都应当是唯一的,正确的。
3、什么叫原语?
答:在操作系统中,往往设计一些完成特定功能的、不可中断的过程,这些不可中断的过程称为原语。如P、V操作原语。
4、什么是线程?它与进程有什么关系?
答:线程是进程中执行运算的最小单位,即处理机调度的基本单位。它与进程的关系是:一个线程只能属于一个进程,而一个进程可以有多个线程;资源分配给进程,同一进程的所有线程共享该进程的所有资源;处理机分给线程,即真正在处理机上运行的是线程;线程在运行过程中,需要协作同步,不同进程的线程间要利用消息通信的办法实现同步。
特别注意的是:传统操作系统中的进程概念与现代操作系统中的进程概念不同——简单说,传统操作系统中进程具有分配资源、调度运行两大功能,而现代操作系统中进程只作为分配资源单位,线程才作为调度运行单位。
5、进程的互斥和同步有什么异同点?
答:同步与互斥特点比较见教材127页表6-4。
| 同步 | 互斥 |
| 进程-进程 | 进程-资源-进程 |
| 时间次序上受到某种 | 竞争到某一物理资源时不允许其他进程工作 |
| 相互清楚对方的存在及其作用,交换信息 | 不一定清楚其他进程情况 |
| 往往指有几个进程共同完成一个任务 | 往往指多个任务多个进程间通讯制约,故更广泛 |
| 举例:生产与消费之间,发送与接收之间,作者与读者之间,供者与用者之间。 | 举例:交通十字路口,单轨火车的拨道岔。 |
答:一个进程入睡是指该进程由于缺乏资源不能占用CPU,进入等待状态。一个进程由程序、数据集合和进程控制块(PCB)组成。PCB是进程存在的唯一标志。PCB中包括如下内容:进程标志号、进程状态(执行/就绪/等待)、进程标志、进程优先数、程序地址、现场保护区(通常被保护的信息有程序计数器、程序状态字、各个工作寄存器等)、通信机构、其他信息等。
处于睡眠状态的进程,它的断点在它的PCB中的现场保护区中保护起来。保存程序运行的CPU现场,以便在将来的某一时刻恢复并继续原来的运行。它被唤醒后,把它从等待进程队列中摘下,将进程状态改为就绪,然后将它插入到就绪队列中;等它占用CPU进入执行状态时,从断点处继续执行。
7、什么是临界区?
答:每个进程中访问临界资源的那段程序称为临界区(临界资源是一次仅允许一个进程使用的共享资源)。每次只准许一个进程进入临界区,进入后不允许其他进程进入。
8、试说明进程互斥、同步和通信三者之间的关系。
答:进程的同步与互斥是指进程在推进时的相互制约关系。在多道程序系统中,由于资源共享与进程合作,这种进程间的制约称为可能。为了保证进程的正确运行以及相互合作的进程之间交换信息,需要进程之间的通信。
进程之间的制约关系体现为:进程的同步和互斥。
进程同步:它主要源于进程合作,是进程间共同完成一项任务时直接发生相互作用的关系。为进程之间的直接制约关系。在多道环境下,这种进程间在执行次序上的协调是必不可少的。
进程互斥:它主要源于资源共享,是进程之间的间接制约关系。在多道系统中,每次只允许一个进程访问的资源称为临界资源,进程互斥就是保证每次只有一个进程使用临界资源。
进程通信是指进程间的信息交换。PV操作作为进程的同步与互斥工具因信息交换量少,效率太低,称为低级通信。而高级通信则以较高的效率传送大批数据。
9、考虑一个理发店,只有一个理发师,只有n张可供顾客等待理发的椅子,如果没有顾客,则理发师睡觉;如果有一顾客进入理发店发现理发师在睡觉,则把他叫醒,写一个程序协调理发师和顾客之间的关系。
答:考虑一下理发师(barber)重复的下列活动:(1)睡觉;(2)为顾客理发;
顾客(customers)重复的下列活动:(3)在椅子上等候;(4)理发;离开;
显然,理发师在(1)处要考察是否有顾客等候理发,如果没有,理发师睡觉;在(2)处理发师等待最先进入理发店的顾客唤醒,开始理发。
顾客在(3)处先看是否有座位,没有则离开;等候理发的顾客在(4)处被理发师唤醒(最先理发的顾客要唤醒理发师);理发结束后离开。
在这两个活动中,从资源的角度来看,理发师是顾客争用的资源,用信号量barber表示,初值为0;除此以外,顾客还要争用n张椅子,信号量customers表示等候理发的顾客数,初值为0;最后设置信号灯变量mutex用于这两个活动对资源barber、customers的互斥,初值为1。详细算法见教材131页。
10、有一个阅览室,共有100个座位,读者进入时必须先在一张登记表上登记,该表为每一座位列一表目,包括座号和读者姓名等,读者离开时要消掉登记的信息,试问:
(1)为描述读者的动作,应编写几个程序,设置几个进程?
(2)试用PV操作描述读者进程之间的同步关系。
答:读者的动作有两个,一是填表进入阅览室,这时要考虑阅览室里是否有座位;一是读者阅读完毕,离开阅览室,这时的操作要考虑阅览室里是否有读者。读者在阅览室读书时,由于没有引起资源的变动,不算动作变化。
算法的信号量有三个:seats——表示阅览室是否有座位(初值为100,代表阅览室的空座位数);readers——表示阅览室里的读者数,初值为0;用于互斥的mutex,初值为1。
读者进入阅览室的动作描述getin:
while(TRUE){
P (seats); /*没有座位则离开*/
P(mutex) /*进入临界区*/
填写登记表;
进入阅览室读书;
V(mutex) /*离开临界区*/
V(readers)
}
读者离开阅览室的动作描述getout:
while(TRUE){
P(readers) /*阅览室是否有人读书*/
P(mutex) /*进入临界区*/
消掉登记;
离开阅览室;
V(mutex) /*离开临界区*/
V(seats) /*释放一个座位资源*/
}
11、进程之间有哪些基本的通信方式?它们分别有什么特点?适用于哪些场合?
答:进程通信根据交换信息量的多少分为高级通信和低级通信。低级通信一般只传送一个或几个字节的信息,以达到控制进程执行速度的作用(如PV操作);高级通信则要传送大量数据,目的不是为了控制进程的执行速度,而是为了交换信息。
高级进程通信方式有很多种,大致可归并为三类:共享存储器、管道文件和消息传递。
共享存储器:在内存种分配一片空间作为共享存储区。需要进行通信的进程把它附加到自己的地址空间中,不需要时则把它取消。
管道文件:它是连接两个命令的一个打开文件。一个命令向该文件中写入数据,为写者;另一个命令从该文件中读出数据,为读者。
消息传递:它以消息为单位在进程间进行数据交换。具体说明见教材133页的“消息缓冲”。
12、如何尽快熟悉一个计算机操作系统?
答:熟悉一个操作系统,可以从以下几种不同的角度:
(1)用户的角度
这是从操作系统向用户提供服务的角度来观察操作系统。从操作系统的外部特性来看,它提供了使用的语言,如命令语言、图形语言、菜单语言等。一般的操作系统向用户提供了命令一级、系统调用一级以及作业控制一级的服务。这些服务涉及到设备控制、文件管理、进程的建立和撤消、内存管理等。此外,操作系统作为计算机硬件功能的扩充,为它的上一层(应用软件)提供了虚拟机环境。
(2)资源管理的角度
从这种静态角度认识操作系统,它是各种资源的管理者。它负责它们的登记、记录状况、分配、回收以及维护其完整性,并操纵其使用,同时向用户提供方便的使用界面。根据资源的分类,操作系统分成处理机管理、存储管理、文件管理、设备管理和作业管理等五个部分。这几个部分相对又互相关联,协调配合运行,一起完成用户的服务要求。
(3)进程的角度
这是从动态的、运行的观点来熟悉操作系统。操作系统要通过组织对资源的共享来提高资源的利用率,必然要引入并行机制。在这个意义上,操作系统由若干个可以同时运行的程序(即进程)和一个对它们进行管理、协调的系统核心组成。在系统核心的管理下,各个进程此起彼伏地运行,完成用户的服务工作。
13、新一代操作系统采用微内核技术,有什么优缺点?
答:微内核技术的主要优点:
(1)统一的接口,在用户态和核心态之间无需进程识别;
(2)可伸缩性好,能适应硬件更新和应用变化;
(3)可移植性好,所有与具体机器特征相关的代码,全部隔离在微内核中,如果操作系统要移植到不同的硬件平台上,只需修改微内核中极少代码即可;
(4)实时性好,微内核可以方便地支持实时处理;
(5)安全可靠性高,微内核将安全性作为系统内部特性来进行设计,对外仅使用少量应用编程接口;
(6)支持分布式系统,支持多处理器的体系结构和高度并行的应用程序;
(7)真正面向对象的操作系统。
由于操作系统核心常驻内存,而微内核结构精简了操作系统的核心功能,内核规模比较小,一些功能都移到了外存上,所以微内核结构十分适合嵌入式的专用系统,对于通用性较广的系统,将使CPU的通信开销增大,从而影响到计算机的运行速度。
14、在大程序的编程过程中,模块大小如何选择?分块原则是什么?
答:模块是指执行某一特定任务(或实现某一特定的抽象数据类型)的数据结构和程序代码。专家建议,一个模块最好只包含几十条语句(即可打印在一页打印纸上)。这是考虑到开发人员的方便阅读和研究。
划分模块的原则是:各个模块尽可能具有较大的性,换句话说,希望这样设计软件结构,使得每个模块完成一个相对的特定子功能,并且和其他模块之间的关系很简单,以便能方便地把不同场合下写成的程序模块组合成软件系统。(此题的内容涉及到计算机软件设计的知识,若需要进一步了解,可以参考“软件工程”方面的相关教材。)下载本文