这里放一张OSI七层协议和TCP/IP四层协议的对应:
1.下列关于外部I/O中断的叙述中,正确的是()
A.中断控制器按所接收中断请求的先后次序进行中断优先级排队。
B.CPU响应中断时,通过执行中断隐指令完成通用寄存器的保护。
C.CPU只有在处于中断允许状态时,才能响应外部设备的中断请求。
D.有中断请求时,CPU立即暂停当前指令执行,转而去执行中断服务程序。
解析:计算机按预先设定的中断紧急程度来决定处理中断的先后次序,并非按所接收中断请求的先后次序来处理;在CPU响应中断的过程中,中断隐指令的主要作用是关中断,保护程序断点,引出中断服务程序,由中断服务程序完成通用寄存器的保护;CPU只有处于中断允许状态,即开中断的状态下,才能响应外部设备的中断请求;有中断请求时,大部分CPU是在当前指令执行完毕以后才转去执行中断服务程序。
2.下列关于多任务操作系统的叙述中,正确的是()
Ⅰ.具有并发和并行的特点 Ⅱ.需要实现对共享资源的保护 Ⅲ.需要允许在多CPU的硬件平台上
解析:多任务操作系统是将用户程序分为多个任务,具有并发和并行的特点;多个任务必须互斥地访问共享资源,因此需要对共享资源进行保护;多任务操作系统不一定需要运行在多CPU的硬件平台上。
3.当定时器产生时钟中断后,由时钟中断服务程序更新的部分内容是()
Ⅰ.内核中时钟变量的值 Ⅱ.当前进程占用CPU的时间 Ⅲ.当前进程在时间片内的剩余执行时间
解析:时钟中断服务程序更新与时间有关的信息,包括系统时间,进程的时间片,进程已执行的时间,进程在时间片内的剩余执行时间等。
4.下列关于多重中断系统的叙述中,错误的是()
A.在一条指令执行结束时响应中断
B.中断处理期间CPU处于关中断状态
C.中断请求的产生与当前指令的执行无关
D.CPU通过采样中断请求信号检测中断请求
解析:多重中断系统在保护被中断进程现场时关中断,而执行中断处理程序时开中断。
5.执行系统调用的过程包括如下主要操作()
Ⅰ.返回用户态 Ⅱ.执行陷入(trap)指令 Ⅲ.传递系统调用参数 Ⅳ.执行相应的服务程序
正确的顺序为:Ⅲ->Ⅱ->Ⅳ->Ⅰ
解析:在操作系统中,用户进程需要执行系统调用时,首先传递系统调用所需的参数,再执行陷入(trap)指令,从用户态进入内核态,然后执行相应的服务程序,最后将处理结果返回给用户进程,从内核态返回用户态。
6.异常是指令执行过程中在处理器内部发生的特殊事件,中断是来自处理器外部的请求事件。下列关于中断或异常情况的叙述中,错误的是()
A."访存时缺页"属于中断 B."整数除以0"属于异常 C."DMA传送结束"属于中断 D."存储保护错"属于异常
解析:异常又被称为内中断,中断信号来自处理器内部。常见的异常有访管中断,总线超时,非法指令,地址越界,除数为0,访存时缺页,浮点溢出,存储保护错等。中断又称为外中断,中断信号来自处理器外部。常见的中断有时钟中断,键盘中断,外部设备中断等。DMA传送结束由I/O接口向CPU发出中断请求。
7.处理外部中断时,应该由操作系统保存的是()
A.程序计数器(PC)的内容 B.通用寄存器的内容 C.快表(TLB)中的内容 D.Cache中的内容
解析:处理外部中断首先要保护中断现场,使中断处理完毕能恢复原运行程序的现场信息。保护现场包括两个方面:1.由中断隐指令保存程序断点,即程序计数器(PC)的内容;2.由操作系统的中断服务程序保存通用寄存器和状态寄存器的内容。
8.假定下列指令已装入指令寄存器,则执行时不可能导致CPU从用户态变为内核态(系统态)的是()
A.DIV R0,R1 ;(R0)/(R1)->R0
B.INT n ;产生软中断
C.NOT R0 ;寄存器R0的内容取非
D.MOV R0,addr ;把地址addr处的把内存数据放入寄存器R0中
解析:CPU从用户态变为内核态主要有三种方式:系统调用,异常,外部设备中断。A选项,若R1中的内容为0,则发生除数为0的异常;B选项,软中断在内核态执行,产生软中断可能会导致CPU从用户态变为内核态;C选项,不会发生异常或中断,因此CPU不会从用户态变成内核态;D选项,可能发生地址越界异常。
9.内部异常(内中断)可分为故障(fault),陷阱(trap)和终止(abort)三类。下列有关内部异常的叙述中,错误的是()
A.内部异常的产生与当前执行指令相关
B.内部异常的检测由CPU内部逻辑实现
C.内部异常的响应发生在指令执行过程中
D.内部异常处理后返回到发生异常的指令继续执行
解析:内部异常是在执行指令时由于当前指令本身的原因而产生的;内部异常的检测由CPU内湖逻辑实现;内部异常允许在指令执行过程中响应异常,一旦发现异常情况便立即转向内核的异常处理程序;内部异常处理后,返回点因异常类型的不同而不同,大多数情况下异常处理会结束进程,不可能返回到发生异常的指令继续执行。
10.下列指令中,不能在用户态中执行的是()
A.trap指令 B.跳转指令 C.压栈指令 D.关中断指令
解析:trap指令,跳转指令和压栈指令能够在用户态执行,而关中断属于特权指令,需要在内核态中运行。
11.若某设备中断请求的响应和处理时间为100ns,每400ns发出一次中断请求,中断响应所允许的最长延迟时间为50ns,则在该设备持续工作过程中,CPU用于该设备的I/O时间占整个CPU时间的百分比至少是()
A.12.5% B.25% C.37.5% D.50%
解析:无论50ns延迟是否存在,每400ns的中断请求都需要花费100ns的时间进行响应和处理,所以CPU用于该设备的I/O时间占整个CPU时间的百分比至少是100/400=25%。
12.响应外部中断的过程中,中断隐指令完成的操作,除保护断点外,还包括()
Ⅰ.关中断 Ⅱ.保存通用寄存器的内容 Ⅲ.形成中断服务程序入口地址并送PC
解析:响应外部中断的过程中,中断隐指令的操作包括关中断,保护断点和引出中断服务程序(形成中断服务程序入口地址并发送PC)
13.若一个用户进程通过read系统调用读取一个磁盘文件中的数据,则下列关于此过程的叙述中,正确的是()
Ⅰ.若该文件的数据不在内存中,则该进程进入睡眠等待状态
Ⅱ.请求read系统调用会导致CPU从用户态切换到核心态
Ⅲ.read系统调用的参数应包含文件的名称
解析:若该文件的数据不在内存中,则产生缺页,原进程进入阻塞状态(睡眠等待状态),直到所需数据都被调入内存后才唤醒该进程,Ⅰ正确;read系统调用通过陷入(trap)将CPU从用户态切换到核心态,从而获取相应的系统服务,Ⅱ正确;读文件时首先用open系统调用打开该文件,open中的参数包含文件的路径名和文件名,read只需要使用open返回的文件描述符,不需要使用文件名作为参数。
14.操作系统中,用户界面指的是()
A.硬件接口,软件接口和操作环境
B.命令接口,程序接口和操作环境
C.硬件接口,命令接口和操作环境
D.硬件接口,命令接口和程序接口
解析:在操作系统中,用户界面包括命令接口,程序接口和操作环境。
15.在图形用户接口中,用于查看和操纵应用程序或文档的是()
A.窗口 B.对话框 C.图标 D.菜单
解析:图形用户接口采用了图形化的操纵界面。在图形用户接口中,用于查看和操纵应用程序和文档的是对话框。
16.用户程序请求操作系统服务是通过()实现的。
A.子程序调用指令 B.访管指令 C.条件转移指令 D.以上三种皆可
解析:用户程序请求操作系统服务是通过访管指令实现的,操作系统通过分析访管指令中的参数,调用相应的子程序为用户服务。
17.操作系统的基本类型有()
A.批处理系统,分时系统及多任务系统
B.实时系统,批处理系统及分时系统
C.单用户系统,多用户系统及批处理系统
D.实时系统,分时系统及多用户系统
18.A,B两个程序,程序A按顺序使用CPU 10秒,使用设备甲5秒,使用CPU 5秒,使用设备乙10秒,最后使用CPU 10秒;程序B按顺序使用设备甲10秒,使用CPU 10秒,使用设备乙10秒,使用CPU 5秒,使用设备乙 10秒。试问:
(1)在顺序环境下执行程序A和程序B,CPU的利用率是多少?
(2)在多道程序环境下,CPU的利用率是多少?请画出A,B程序的执行过程。
(3)多道批处理中,是否系统中并发的进程越多,资源利用率越好?为什么?
解析:(1)CPU的利用率=(程序A使用CPU的时间+程序B使用CPU的时间)/(程序A总工作时间+程序B总工作时间)=[(10+5+10)+(10+5)]/[(10+5+5+10+10)+(10+10+10+5+10)] x 100%=47.1%。
(2)在多道程序环境下,A,B程序执行过程如下图:
程序/时间 | 5 | 10 | 15 | 20 | 25 | 30 | 35 | 40 | 45 | 50 |
A | CPU | CPU | 设备甲 | CPU | 设备乙 | 设备乙 | CPU | CPU | ||
B | 设备甲 | 设备甲 | CPU | CPU | 设备乙 | 设备乙 | CPU | 设备乙 | 设备乙 |
由上图可知系统处理A,B进程需要的时间是50秒,其中使用CPU的时间为40秒,所以CPU的利用率为40/50=0.8。
(3)多道批处理系统中,并不是系统中并发的进程越多,资料利用率越好。若系统中并发的进程过多,会导致系统在多个进程之间频繁切换,造成系统的性能下降,增大开销,从而降低资源利用率。
19.下列关于库函数和系统调用的描述中,正确的是( )。
Ⅰ.库函数可以运行在用户空间
Ⅱ.有的库函数会使用系统调用
Ⅲ. 系统调用的执行效率比库函数高
Ⅳ.当调用库函数时,必然会由用户态转为核心态
20.解释下列概念并说明关系和区别:计算机系统的安全性、计算机系统的可靠性。
解析:可靠性:系统持续正常运行的程度,目标为反故障;安全性:不因人为疏漏和蓄谋作案而导致信息资源被泄露、篡改和破坏,目标是反机密。
关系:可靠性是安全性的基础,安全性比可靠性更为复杂。
21.假设有一台计算机,它有32MB内存,操作系统占用2MB,每个用户进程占用10MB。用户进程等待I/O的时间为80%。问,CPU的利用率为多少?若增加32MB内存后CPU的利用率又为多少?
解析:CPU利用率与进程个数之间的计算公式
CPU利用率=1-pn
其中p表示进程等待I/O的概率,n表示进程的数目。
32MB内存时,一共可以装入3个进程,则CPU利用率:
1-(0.8)3=48.8%
64MB内存时,一共可以装入6个进程,则CPU利用率:
1-(0.8)6=73.8%