1.1 访管指令能引起访管中断,它本身属于特权指令( B )
A. 正确
B. 错误
解释1:
执行访管指令会产生一个中断事件,从而将CPU从用户态转换到核心态。而访管指令本身是在用户态下执行的。
特权指令是在核心态下执行的指令。
解释2:
访管指令并不是特权指令 。所谓特权指令,是指用于操作系统或其他系统软件 的指令,一般不提供给用户使用。
1.2 关于etcd中Raft的说法,错误的是( B )
A. 在Raft中,任何一个节点都可能成为Leader
B. 只有特定服务器都可以成为一个候选者Candidate
C. 所有节点初始状态都是Follower角色
D. Candidate收到大多数节点的选票则转换为Leader
解释:
etcd是一个高可用的键值存储系统,主要用于共享配置和服务发现,通过Raft一致性算法处理日志复制以保证强一致性。Raft是一个新的一致性算法,适用于分布式系统的日志复制,Raft通过的方式来实现一致性。
Raft将一致性拆分为几个关键元素:Leader、日志复制、安全性。
节点有三种角色:
Leader:负责接收客户端的请求,将日志复制到其他节点并告知其他节点何时应用这些日志是安全的
Candidate:用于Leader的一种角色
Follower:负责响应来自Leader或者Candidate的请求
角色转换:
所有节点初始状态都是Follower角色;
超时时间内没有收到Leader的请求则转换为Candidate进行;
Candidate收到大多数节点的选票则转换为Leader;发现Leader或者收到更高任期的请求则转换为Follower;
Leader在收到更高任期的请求后转换为Follower;
1.3 分析以下消费者进程,并将临界区②补充完整,合理的是: ( A C )
process producer i(i=1,2,…n)
p(a) ;
p(b) ;
② ;
v(b) ;
v© ;
A. take a product from [y] ;
y=(y+1)mod12;
B. take a product from [y] ;
y=(y-1)mod12;
C. take a product from [y] ;
y=(y+1)mod10;
D. take a product from [y] ;
y=(y-1)mod10;
解释:
先p 后v 两者互斥 处加状
1.4 多道程序设计是利用了CPU和通道并行工作来提高系统的效率( B )
A. 正确
B. 错误
解释:
多道程序设计主要是能够宏观是是多个程序并行的结果,实质是对现场的中断和恢复操作,CPU和通道并行工作只是减少了中断cpu的次数加快io传输的效率.
1.5 当CPU处于核心态时,它可以执行的指令是:( C )。
A. 仅限于特权指令
B. 仅限于非特权指令
C. 计算机系统的全部指令
D. 仅限于访管指令
解释1:
核心态下,CPU对一切硬件具有完全访问权限,可以执行机器能够执行的任何指令。而在用户态下,cpu不能执行特权指令。
解释2:
我个人觉得这题有问题吧,内核态下,访管指令应该不能执行吧,访管指令应该只能在用户态下才能执行的,用于请求内核态。(就像计算机网络一样ICMP差错报告报文也不会去发送自己ICMP的差错报告报文)
1.6 进程从执行态转变为阻塞态可能是由于( C )。
A. 进程调度程序的调度
B. 进程的时间片用完
C. 进程执行了P 操作
D. 进程执行了V 操作
解释:
进程的调度程序的调度和时间片的用完,会使进程从执行态进入就绪态(因为此时只要一分配到处理机就可以立即执行,不需要等待别的资源什么的)。
P操作,申请资源
V操作,释放资源
1.7 在Linux中查看ARP缓存记录的命令是? A
A. “arp –a”
B. “arp –d”
C. “arp -L”
D. “arp –D”
1.8 下列哪一个选项是引入缓冲的原因( A B D )
A. 缓冲CPU和I/O设备间速度不匹配的矛盾
B. 减少对CPU的中断频率,放宽对蓄洪大响应时间的限制
C. 减少CPU对I/O控制的干预
D. 提高CPU和I/O设备之间的并行性
解释:
A:CPU运算速度远高于I/O设备,如果没有缓冲区,必然导致打印机的速度跟不上,这样就会是CPU停下来等待
B:我们之前每传送一位数据,就会中断一次CPU,假如我们采用8位的缓存寄存器,我们就可以减少CPU的中断频率
D:我们可以在CPU执行后就处理下一个任务,打印机从缓冲区中取得数据
C选项中引入通道或者DMA可以减少CPU对I/O控制的干预,而不是引入缓冲。
1.9 实时操作系统最重要的目标是( A )
A. 及时性
B. 公平性
C. 吞吐率高
D. 平均周转时间短
解释:
实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,并控制所有实时任务协调一致运行的操作系统。
其主要特点:提供及时响应和高可靠性。
1.10 有4个进程A,B,C,D,设它们依次进入就绪队列,因相差时间很短可视为同时到达。4个进程按轮转法分别运行11,7,2,和4个时间单位,设时间片为1。四个进程的平均周转时间为 B
A. 15.25
B. 16.25
C. 16.75
D. 17.25
E. 17.75
F. 18.25
解释:
A B C D
1 2 3 4
5 6 7 8
9 10 11
12 13 14
15 16
17 18
19 20
21
22
23
24
如上分析,分别表示每个进程执行时的时间点
平均周转时间 =(24 + 20 + 7 + 14)/ 4 = 65 / 4 = 16.25
1.11 Unix操作系统的进程控制块中常驻内存的是( A )。
A. proc结构
B. proc结构和核心栈
C. ppda区
D. proc结构和user结构
解释:
Unix把进程分成两大类:
一类是系统进程,另一类是用户进程。系统进程执行操作系统程序,提供系统功能,工作于核心态。用户进程执行用户程序,在操作系统的管理和控制下执行,工作于用户态。进程在不同的状态下执行时拥有不同的权力。
在Unix系统中进程由三部分组成,分别是进程控制块、正文段和数据段。Unix系统中把进程控制块分成proc结构和user结构两部分
proc存放的是系统经常要查询和修改的信息,需要快速访问,因此常将其装入内存
1.12 若某单处理器多进程系统中有多个就绪态进程,则下列关于处理机调度的叙述中,错误的是 。 C
A. 在进程结束时能进行处理机调度
B. 创建新进程后能进行处理机调度
C. 在进程处于临界区时不能进行处理机调度
D. 在系统调用完成并返回用户态时能进行处理机调度
解释:
选项 A 、 B 、 D 显然是可以进行处理机调度的情况。对于 C ,当进程处于临界区时,说明进程正在占用处理机,只要不破坏临界资源的使用规则,是不会影响处理机调度的。比如,通常访问的临界资源可能是慢速的外设(如打印机),如果在进程访问打印机时,不能进行处理机调度,那么系统的性能将是非常差的。
1.13 在现代Unix系统中,下列哪些可以用于进程间的通讯:( A B C D )
A. socket
B. 共享内存
C. 消息队列
D. 信号量
解释:
unix进程间的通信方式
(1)管道(Pipe):管道可用于具有亲缘关系进程间的通信,允许一个进程和另一个与它有共同祖先的进程之间进行通信。
(2)命名管道(named pipe):命名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信。命名管道在文件系统中有对应的文件名。命名管道通过命令mkfifo或系统调用mkfifo来创建。
(3)信号(Signal):信号是比较复杂的通信方式,用于通知接受进程有某种事件发生,除了用于进程间通信外,进程还可以发送信号给进程本身;linux除了支持Unix早期信号语义函数sigal外,还支持语义符合Posix.1标准的信号函数sigaction(实际上,该函数是基于BSD的,BSD为了实现可靠信号机制,又能够统一对外接口,用sigaction函数重新实现了signal函数)。
(4)消息(Message)队列:消息队列是消息的链接表,包括Posix消息队列system V消息队列。有足够权限的进程可以向队列中添加消息,被赋予读权限的进程则可以读走队列中的消息。消息队列克服了信号承载信息量少,管道只能承载无格式字节流以及缓冲区大小受限等缺
(5)共享内存:使得多个进程可以访问同一块内存空间,是最快的可用IPC形式。是针对其他通信机制运行效率较低而设计的。往往与其它通信机制,如信号量结合使用,来达到进程间的同步及互斥。
(6)内存映射(mapped memory):内存映射允许任何多个进程间通信,每一个使用该机制的进程通过把一个共享的文件映射到自己的进程地址空间来实现它。
(7)信号量(semaphore):主要作为进程间以及同一进程不同线程之间的同步手段。
(8)套接口(Socket):更为一般的进程间通信机制,可用于不同机器之间的进程间通信。起初是由Unix系统的BSD分支开发出来的,但现在一般可以移植到其它类Unix系统上:Linux和System V的变种都支持套接字。
1.14 虚拟存储的容量受到下列哪一个因素的限制影响最大? D
A. 磁盘空间大小
B. 物理内存大小
C. 数据存放的实际地址
D. 计算机地址位数
解释:
这题应该是计算机地址位数才对。
从影响上讲:
虚存容量 = min (2^计算机位数, 内存+外存);
说影响最大的是内存容量,简直胡扯
1.15 作业在执行中发生了缺页中断,经系统将该缺页调入内存后,应继续执行( B )。
A. 被中断的前一条指令
B. 被中断的指令
C. 被中断的后一条指令
D. 程序的第一条指令
解释:
作业在执行中发生了缺页中断,经系统将该缺页调入内存后,应继续执行( 被中断的指令 )。
缺页中断机构:
在请求分页系统中,每当要访问的页面不存在时,便产生一缺页中断,请求OS将所缺之页调入内存。 缺页中断作为中断同样经历:保护CPU环境、分析中断原因、转入缺页中断,恢复CPU环境等步骤。
缺页中断与其他中断的区别:
(1)在执行期间产生和处理中断信号。通常CPU是在一条指令执行完后,才检查是否有中断请求到达。若有,便去响应,否则继续执行下条指令。但缺页中断是在指令执行期间或数据不在内存时所产生和处理的。
(2)一条指令在执行期间,可能产生多次缺页中断。 有可能执行一个指令时,指令本身跨越两个页面,访问的数据块也不在同一个页面,所以,系统中硬件机构应该能保存多次中断时的状态,并保证最后能返回到中断前产生缺页中断指令处继续执行。
1.16 计算机系统需要大容量RAM是重要的,其原因是()
A. 除非系统具有足够大的RAM来容纳一个程序所有的指令,否则不能加载和运行该程序
B. 除非整个文件先被加载到RAM,否则程序不能访问文件
C. 如果没有足够的RAM,多任务和大型程序运行会很慢
D. RAM存储器比硬盘存储器成本低
解释:
随机存取存储器(RAM)
CPU直接交换数据的内部存储器,也叫主存(内存)。它可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介。
- 运行一个程序必须先把程序加载到内存,具体加载多少是看这个应用程序消耗系统资源的多少,并不是这个程序的大小。所以A、B错误。
- 由上图得出,辅助存储器解决了主从容量不足与高成本的矛盾。所以D错误。
1.17 操作系统的功能是进行处理机管理,( B )管理,设备管理,文件管理和作业管理等
A. 进程
B. 存储器
C. 硬件
D. 软件
解释:
- 处理机管理:进程管理应该是属于处理机管理的一部分,不同类型的操作系统将针对不同情况来采取不同的调度策略。如先来先服务、优先级调度、分时轮转等调度策略,来提高系统资源的利用率。
- 存储器管理:主要是指针对计算机的主存管理。
- 设备管理:主要涉及对系统中的各种输入/输出设备等的管理和控制问题。
- 文件管理:又称信息管理或文件系统,在现代计算机操作系统中,将各种信息资源组织成文件存储在计算机的硬盘或者磁带上。文件管理就是对这些信息资源进行存储、检索和保护,以便用户能方便、安全地访问它们。
1.18 某计算机系统中有8台打印机,由K个进程竞争使用,每个进程最多需要3台打印机。该系统可能会发生死锁的K的最小值是( C )
A. 2
B. 3
C. 4
D. 5
解释:
由于每个进程最多需要使用3台打印机,可以先给每个进程分配2台打印机,最后在总的资源中减1个出来分配给一个进程就能避免死锁。所以用7/2=3.5,向下取整为3,所以最多使用3个进程不会发生死锁。所以发生死锁的最小值为4。