筛选结果 共找出609
23.下列选项中,操作系统提供的给应用程序的接口是( )。
A.系统调用
B.中断
C.库函数
D.原语
44.(12分)某程序中有如下循环代码段P∶"for(nti=0;iOP为操作码;Rs 和 Rd为寄存器编号;OFFSET为偏移量,用补码表示。请回答下列问题,并说明理由。
1)M的存储器编址单位是什么?
2)已知 sll指令实现左移功能,数组 A中每个元素占多少位?
3)表中 bne指令的OFFSET字段的值是多少?已知 bne 指令采用相对寻址方式,当前 PC 内容为 bne 指令地址,通过分析表中指令地址和 bne指令内容,推断出 bne 指令的转移目标地址计算公式。
4)若M采用如下"按序发射、按序完成"的5级指令流水线∶IF(取值)、ID(译码及取数)、EXE(执行)、MEM(访存)、WB(写回寄存器),且硬件不采取任何转发措施,分支指令的执行均引起3个时钟周期的阻塞,则P中哪些指令的执行会由于数据相关而发生流水线阻塞?哪条指令的执行会发生控制冒险?为什么指令1的执行不会因为与指令5的数据相关而发生阻塞?
24. 下列选项中,导致创建新进程的操作是( )。
Ⅰ.用户登录成功
Ⅱ.设备分配
Ⅲ.启动程序执行
A.仅Ⅰ和Ⅱ
B.仅Ⅱ和Ⅲ
C.仅Ⅰ和Ⅲ
D.Ⅰ、Ⅱ、Ⅲ
45.假设对于44题中的计算机 M 和程序 P的机器代码,M采用页式虚拟存储管理∶ P开始执行时,(R1)=(R2)=0,(R6)=1000,其机器代码已调入主存但不在 Cache中;数组 A未调入主存,且所有数组元素在同一页,并存储在磁盘同一个扇区。请回答下列问题并说明理由。
1)P执行结束时,R2的内容是多少?
2)M 的指令Cache 和数据Cache分离。若指令 Cache 共有16行,Cache 和主存交换的块大小为32字节,则其数据区的容量是多少?若仅考虑程序段P的执行,则指令 Cache 的命中率为多少?
3)P在执行过程中,哪条指令的执行可能发生溢出异常?哪条指令的执行可能产生缺页异常?对于数组 A的访问,需要读磁盘和TLB至少各多少次?
25.设与某资源相关联的信号量初值为3,当前值为1。若M表示该资源的可用个数,N表示等待该资源的进程数,则 M、N 分别是( )。
A.0、1
B.1、0
C.1、2
D.2、0
46.文件F由 200条记录组成,记录从1开始编号。用户打开文件后,欲将内存中的一条记录插入到文件F中,作为其第30条记录。请回答下列问题,并说明理由。
1)若文件系统采用连续分配方式,每个磁盘块存放一条记录,文件 F 存储区域前后均有足够的空闲磁盘空间,则完成上述插入操作最少需要访问多少次磁盘块? F 的文件控制块内容会发生哪些改变?
2)若文件系统采用链接分配方式,每个磁盘块存放一条记录和一个链接指针,则完成上述插入操作需要访问多少次磁盘块?若每个存储块大小为1KB,其中4字节存放链接指针,则该文件系统支持的文件最大长度是多少?
26. 下列选项中,降低进程优先级的合理时机是( )。
A.进程的时间片用完
B.进程刚完成I/O,进入就绪列队
C.进程长期处于就绪列队
D.进程从就绪状态转为运行态
47.系统中有多个生产者进程和多个消费者进程,共享一个能存放1000件产品的环形缓冲区(初始为空)。当缓冲区未满时,生产者进程可以放入其生产的一件产品,否则等待;当缓冲区未空时,消费者进程可以从缓冲区取走一件产品,否则等待。要求一个消费者进程从缓冲区连续取出 10件产品后,其他消费者进程才可以取产品。请使用信号量P,V(或 wait(),signal())操作实现进程间的互斥与同步,要求写出完整的过程,并说明所用信号量的含义和初值。
27.进行 p0和 p1的共享变量定义及其初值为∶
boolean flag[2];
int turn=O;
flag[0]=FALSE; flag[1]=FALSE;
若进行 p0 和p1访问临界资源的类C代码实现如下∶
则并发执行进程 p0和 p1时产生的情形是( )。
A.不能保证进程互斥进入临界区,会出现"饥饿"现象
B.不能保证进程互斥进入临界区,不会出现"饥饿"现象
C.能保证进程互斥进入临界区,会出现"饥饿"现象
D.能保证进程互斥进入临界区,不会出现"饥饿"现象
41. (15分)用单链表保存m个整数,结点的结构为:data|link,且|data|≤n(n为正整数)。现要求设计一个时间复杂度尽可能高效的算法,对于链表中data的绝对值相等的结点,仅保留第一次出现的结点而删除其余绝对值相等的结点。例如,若给定的单链表head如下:
head—> —>21—>15—> -15—>-7—>15∧
则删除结点后的head为:
head—> —>21—>15—> -15—>-7∧
要习之∶
(1)给出算法的基本设计思想。
(2)使用C或C++语言,给出单链表结点的数据类型定义。
(3)根据设计思想,采用C或C++语言描述算法,关键之处给出注释。
(4)说明你所设计算法的时间复杂度和空间复杂度。