1.某一个单道批处理系统几乎同时依次到达4个作业,这4个作业的预计运行时间分别为8、4、4和4分钟,按照短作业优先的调度算法运行,请问该批作业的平均周转时间为多少 B
A. 14分钟
B. 11分钟
C. 20分钟
D. 10分钟
2.下列与进程具有一一对应的关系的是 B
A. 程序
B. 进程控制块
C. 动态库
D. 堆栈
3.在多道程序设计系统中,能够并行工作的是 A
A. CPU与外部设备
B. 内存和内存
C. 用户与应用程序
D. CPU和内存
4.多道程序设计的意义是 C
A. 微观上有多个进程在计算机中同时运行
B. 一种将程序分割为若干子程序的设计方法
C. 宏观上有多个进程在计算机中同时运行
D. 多个计算机协同运行一个进程
5.进程调度所需的信息——进程优先级——是存放在下列哪一项中 A
A. 进程控制块
B. 进程调度队列
C. 源代码
D. 编译生成的目标文件
6.从静态的角度看,下列哪一个是进程必须拥有而程序所没有 A
A. 进程控制块
B. 代码正文
C. 常量数据
D. 全局变量
7.哪一项是位于进程控制块中而不是位于进程中 A
A. 进程优先级
B. 全局变量
C. 需要访问的数据文件名
D. 堆栈
8.多道程序设计技术使得进程能够并发进行,相比单道程序运行,并发运行的多道程序不再具有下列哪个特性 D
A. 独立性
B. 随机性
C. 共享性
D. 可再现性
9.所谓进程的唯一“标志”是指 A
A. 进程控制块
B. 程序指令代码
C. 程序堆栈段
D. 程序变量和数组
10.进程创建时需要填写进程控制块,下列哪一类信息不需要保存在进程控制块中 D
A. 进程调度信息
B. 进程现场信息
C. 进程打开的文件句柄
D. 进程用户栈中的信息
11.所谓“可再入程序”是指哪一类程序 A
A. 纯代码程序,运行中不需要修改
B. 过程调用子程序,可被其他过程调用
C. 代码及堆栈,允许部分修改
D. 中断服务程序,与用户代码无关
12.下列进程控制模块的组织方式中,哪一种是错误的 A
A. B+树方法
B. 线性方法
C. 索引方法
D. 链接方法
13.进程控制块PCB的内容一般可以分为调度信息和现场信息两大部分。哪一个属于现场信息 D
A. 当前状态
B. 存储信息
C. 优先级
D. 程序状态字
14.进程控制块PCB的内容一般可以分为调度信息和现场信息两大部分。哪一个属于现场信息 D
A. 当前状态
B. 存储信息
C. 优先级
D. 时钟信息
15.进程控制块PCB的内容一般可以分为调度信息和现场信息两大部分。哪一个属于调度信息 D
A. 程序状态字
B. 时钟信息
C. 界地址寄存器
D. 优先级
16.进程控制块PCB的内容一般可以分为调度信息和现场信息两大部分。哪一个属于调度信息 D
A. 程序状态字
B. 时钟信息
C. 界地址寄存器
D. 当前状态
17.在计算机系统中被创建的进程具有多种特性,所谓进程的“动态性”是指 B
A. 进程始终处于运行过程中
B. 进程动态产生、动态变化、动态消亡
C. 进程和程序一样,可以永久保存
D. 进程每一次的运行结果是完全一样的
18.在计算机系统中被创建的进程具有多种特性,所谓进程的“并发性”是指 A
A. 宏观上,不同的进程可以一起向前推进
B. 微观上,不同的进程均是一起向前推进的
C. 不同的进程都是同时开始的,并且同时结束
D. 不同的进程可以不同时开始,但会同时结束
19.在计算机系统中被创建的进程具有多种特性,所谓进程的“独立性”是指 B
A. 进程可以控制自己的运行节奏,不依赖任何外部条件
B. 一个进程是一个相对完整的资源分配单位
C. 一个进程对应一段程序的代码
D. 进程的运行不需要其他代码的支持
20.在计算机系统中被创建的进程具有多种特性,所谓进程的“异步性”是指 D
A. 进程运行时按照系统始终逐步推进
B. 不同进程交替占用处理器运行
C. 进程每一次的运行过程和结果均不同
D. 每个进程按照各自独立的、不可预知的速度向前推进
21.采用多道程序设计可以提高CPU的利用率,所谓多道程序设计的含义是指 B
A. 允许将一个程序拆分为多个部分同时在CPU上运行
B. 允许多个程序同时进入内存并运行
C. 允许一个程序同时在多个不同的CPU上运行
D. 允许多个程序合并为一个程序并进入内存运行
22.衡量多道程序设计系统效率的指标是 B
A. 处理器利用率
B. 系统吞吐量
C. 响应时间
D. 周转时间
23.多道程序设计技术的引入改善了资源的使用情况。为防止内存中的各个程序互相干扰或干扰操作系统,需要解决的问题是 D
A. 处理器调度问题
B. 文件的合理使用问题
C. 使用设备时发生的冲突问题
D. 程序装入内存时的重定位问题
24.当一个进程由于系统内存不足而暂时被保存到外存上时,该程序位于什么状态 B
A. 阻塞挂起状态
B. 就绪挂起状态
C. 僵尸状态
D. 阻塞状态
25.创建进程最重要的工作是填写PCB,为了便于管理,需要组织多个进程的PCB。下列哪一个是组织进程PCB所采用的方法 D
A. 栈
B. 字典顺序
C. 二叉树
D. 链接结构
26.当一个进程由于长期阻塞而暂时被保存到外存上,该程序位于什么状态 A
A. 阻塞挂起状态
B. 就绪挂起状态
C. 僵尸状态
D. 阻塞状态
27.所谓“并发性”是指 A
A. 以人不可察的时间粒度交替运行,一起向前推进
B. 以人不可察的时间粒度同时运行,一起向前推进
C. 同时在不同处理器核上运行,一起向前推进
D. 同时在相同处理器核上运行,一起向前推进
28.假设有2个程序A和B同时到达,且都要执行。A程序的执行顺序为:在CPU上执行10s,在设备DEV1上执行5s,又在CPU上执行5s,在设备DEV2上执行10s,最后在CPU上执行10s。B程序的执行顺序为:在设备DEV2上执行10s,在CPU上执行10s,在设备DEV1上执行5s,又在CPU上执行5s,最后在设备DEV2上执行10s。在并发执行的环境下,假设设备与CPU可以并行,设备和CPU不可以抢夺,则A、B两个程序全部执行完毕需要花费多少时间 D
A. 80s
B. 40s
C. 90s
D. 45s
29.假设有2个程序A和B同时到达,且都要执行。A程序的执行顺序为:在CPU上执行10s,在设备DEV1上执行5s,又在CPU上执行5s,在设备DEV2上执行10s,最后在CPU上执行10s。B程序的执行顺序为:在设备DEV2上执行10s,在CPU上执行10s,在设备DEV1上执行5s,又在CPU上执行5s,最后在设备DEV2上执行10s。在单道顺序执行的环境下,A、B两个程序全部执行完毕需要花费多少时间 D
A. 45s
B. 40s
C. 90s
D. 80s
30.假设有2个程序A和B同时到达,且都要执行。A程序的执行顺序为:在CPU上执行20s,在设备DEV1上执行10s,又在CPU上执行10s,在设备DEV2上执行20s,最后在CPU上执行20s。B程序的执行顺序为:在设备DEV2上执行20s,在CPU上执行20s,在设备DEV1上执行10s,又在CPU上执行10s,最后在设备DEV2上执行20s。在并发执行的环境下,假设设备与CPU可以并行,设备和CPU不可以抢夺,则A、B两个程序全部执行完毕需要花费多少时间 C
A. 80s
B. 45s
C. 90s
D. 40s
31.假设有2个程序A和B同时到达,且都要执行。A程序的执行顺序为:在CPU上执行20s,在设备DEV1上执行10s,又在CPU上执行10s,在设备DEV2上执行20s,最后在CPU上执行20s。B程序的执行顺序为:在设备DEV2上执行20s,在CPU上执行20s,在设备DEV1上执行10s,又在CPU上执行10s,最后在设备DEV2上执行20s。在单道顺序执行的环境下,A、B两个程序全部执行完毕需要花费多少时间 D
A. 90s
B. 80s
C. 180s
D. 160s
32.某个进程由多个线程组成,其中一个线程被调度程序选中投入运行,其他的线程有的位于就绪队列,有的被阻塞,则此时该进程的状态是 A
A. 运行状态
B. 就绪状态
C. 挂起状态
D. 阻塞状态
33.哪一个不是linux支持的状态 B
A. 运行状态
B. 安全状态
C. 僵尸状态
D. 睡眠状态
34.进程从运行态转换为阻塞态的原因是 A
A. 需要的数据没有准备好
B. 需要的设备不存在
C. 分配给该进程的时间片用完
D. 运算过程中栈溢出
35.进程从等待态转换为就绪时称为 C
A. 阻塞
B. 调度
C. 唤醒
D. 分派
36.下列进程运行时所发生的典型事件中,哪一个不会导致进程终止 B
A. 被零除
B. 设备忙
C. 对只读内存执行写操作
D. 堆栈溢出
37.导致进程从运行态转换为就绪态的典型事件是 B
A. 访问的数据没有准备好
B. 时间片到
C. 程序出错
D. 发生了缺页中断
38.某一单核处理机的计算机系统中共有20个进程,那么处于运行态的进程最多为 A
A. 1个
B. 20个
C. 19个
D. 0个
39.某一单核处理机的计算机系统中共有20个进程,那么处于运行态的进程最少为 D
A. 1个
B. 20个
C. 19个
D. 0个
40.某一单核处理机的计算机系统中共有20个进程,那么处于就绪状态的进程最多为 C
A. 1个
B. 20个
C. 19个
D. 0个
41.某一单核处理机的计算机系统中共有20个进程,那么处于就绪状态的进程最少为 D
A. 1个
B. 20个
C. 19个
D. 0个
42.某一单核处理机的计算机系统中共有20个进程,那么处于阻塞状态的进程最多为 B
A. 1个
B. 20个
C. 19个
D. 0个
43.某4核处理器的计算机系统中共有50个进程,那么处于运行态的进程最多有 A
A. 4个
B. 50个
C. 1个
D. 0个
44.某4核处理器的计算机系统中共有50个进程,那么处于运行态的进程最少有 D
A. 4个
B. 50个
C. 1个
D. 0个
45.某4核处理器的计算机系统中共有50个进程,那么处于就绪状态的进程最少有 D
A. 4个
B. 1个
C. 3个
D. 0个
46.某4核处理器的计算机系统中共有50个进程,那么处于就绪状态的进程最多有 C
A. 4个
B. 46个
C. 49个
D. 0个
47.某服务器装有四颗处理器,每颗处理器有八个核。假设当前系统中共有240个进程,且系统支持多线程。那么处于运行态的进程最多有 C
A. 240
B. 4
C. 32
D. 8
48.当进程处于运行状态时,表示 A
A. 进程占用处理机资源
B. 进程已获得除处理机外所有资源
C. 进程已获得内存资源
D. 进程已获得除内存外的所有资源
49.当进程处于就绪状态时,表示 B
A. 进程占用处理机资源
B. 进程已获得除处理机外所有资源
C. 进程已获得内存资源
D. 进程已获得除内存外的所有资源
50.当进程处于阻塞状态时,表示 A
A. 因某种原因而暂时不能运行的状态
B. 因某种原因未获得处理机资源
C. 因某种原因未获得内存资源
D. 因某种原因未获得外部设备资源
51.当进程处于挂起状态时,表示 A
A. 被转到磁盘
B. 被转到内存
C. 被剥夺了处理机
D. 主动放弃了处理机
52.一个进程从运行态转换为阻塞态的原因是 A
A. 进程需要接收消息
B. 分配给该进程的时间片到了
C. 进程运行结束
D. 进程开启了自旋锁
53.unix操作系统中,fork()系统调用用于创建进程。假设程序正确运行并创建子进程成功,那么输出到屏幕的正确结果是 C
A. 什么也没有
B. 一行hello world
C. 两行hello world
D. 三行hello world
54.假设在unix操作系统环境下执行以下程序,若程序正常运行,紫禁城创建成功。那么屏幕上得到的输出有 C
A. 1个hello world
B. 2个hello world
C. 3个hello world
D. 4个hello world
55.一个运行着的进程打开了一个新的文件,则指向该文件数据结构的关键指针存放在 D
A. 文件目录中
B. 文件句柄中
C. 进程头文件中
D. 进程控制块中
56.当一个新的进程创建完成后,该进程的进程控制块将被插入到下列哪一个队列中 D
A. 运行队列
B. 阻塞队列
C. 挂起队列
D. 就绪队列
57.下列叙述正确的是 A
A. 当进程从运行态转换到就绪态是,处理机的现场信息必须保存在进程控制块中
B. 操作系统的重要概念是进程,不同的进程执行的代码不同
C. 进程存在的标志是进程控制块,用户可以从中读出与本进程相关的运行状态
D. 当进程申请处理机而得不到满足时,它将进去阻塞态
58.当用户在编程中需要创建一个进程时,可以采取下列哪一种方法 A
A. 调用进程创建原语有操作系统创建出进程
B. 填写进程控制块的数据结构并提交系统
C. 填写进程控制块的数据结构并将其放入就绪队列
D. 将用户所在进程的进程控制块复制一份给新进程
59.若一个进程由于申请的内存资源长期不能得到满足,那么操作系统处理该进程的最佳方法是 A
A. 挂起该进程
B. 额外增加该类资源
C. 重启该进程
D. 撤销该进程
60.系统中有多个进程分别处于就绪状态、运行状态和阻塞状态。下列哪一个进程的状态变化必然引起另一个进程的状态变化 A
A. 运行状态 -> 阻塞状态
B. 阻塞状态 -> 就绪状态
C. 阻塞状态 -> 挂起状态
D. 就绪状态 -> 运行状态
61.当使用进程创建原语创建进程时,下列哪一个选项表示的顺序是正确的 B
A. 申请PCB,填写PCB,放入运行队列
B. 申请PCB,填写PCB,放入就绪队列
C. 申请PCB,申请内存,填写PCB
D. 申请内存,申请PCB,填写PCB
62.当使用进程撤销原于撤销进程时,下列哪一个选项描述的顺序是正确的 A
A. 找到对应进程的PCB,撤销其下的子孙进程,释放该进程资源,撤销PCB
B. 找对对应进程的PCB,清空该PCB,释放该进程资源,撤销其下的子孙进程
C. 找到对应进程的PCB,清空该PCB,撤销其下的子孙进程,跳转到调度进程
D. 找到对应进程的PCB,撤销其下的子孙进程,释放该进程资源,跳转到调度程序
63.当使用进程唤醒原语唤醒进程时,下列哪一个选择描述的顺序是正确的 A
A. 在等待队列中找到该进程PCB,修改PCB中进程状态为就绪,将其插入到就绪队列
B. 在就绪队列中找到该进程PCB,修改PCB中进程状态为运行,将其插入到运行队列
C. 在阻塞队列中找到该进程PCB,弹出该进程堆栈,恢复现场,将其插入到就绪队列
D. 在就绪队列中找到该进程PCB,将该进程堆栈装入CPU寄存器,等待处理机调度
64.当使用进程阻塞原语阻塞进程时,下列哪一个选项描述的顺序是合理的 A
A. 中断CPU执行,保存现场信息,修改PCB中进程状态为阻塞,将其插入到阻塞队列
B. 中断CPU执行,将寄存器值推入堆栈,修改PCB中进程状态为阻塞,弹出新进程堆栈
C. 保存现场信息,将寄存器值推入堆栈,将PCB插入到阻塞队列,恢复现场信息
D.中断CPU执行,保存现场信息,将PCB插入到阻塞队列,弹出新进程堆栈
65.进程控制块的组织方式有多种,下列哪一项不是进程控制块的组织方式 B
A. 线性表方式
B. 哈希表方式
C. 索引表方式
D. 链表方式
66.进程创建后其进程控制块形成了多个队列。下列哪一个队列不在这些队列中 C
A. 就绪队列
B. 等待队列
C. 调度队列
D. 运行队列
67.进程控制原语有多种。下列哪一项不是进程控制原语 B
A. 进程优先级改变
B. 进程上下文切换
C. 进程挂起
D. 进程唤醒
68.进程被阻塞后因为等待的事件出现而被唤醒,此时该进程将进去下列哪一个队列 B
A. 运行队列
B. 就绪队列
C. 阻塞队列
D. 挂起队列
69.进程运行过程中因为时间片用完而让出处理器之后将进入下列哪一个队列 C
A. 阻塞队列
B. 挂起队列
C. 就绪队列
D. 运行队列
70.为了便于操作系统进行控制,在操作系统内核中为进程定义了一个专门的数据结构称为PCB。哪一项不是PCB的内容 C
A. 堆栈指针
B. 进程优先级
C. 全局变量
D. 父子进程
71.为了便于操作系统进行控制,在操作系统内核中为进程定义了一个专门的数据结构称为PCB。哪一项不是PCB的内容 C
A. 代码段指针
B. 进程当前进程
C. 系统堆栈
D. 进程号
72.为了便于操作系统进行控制,在操作系统内核中为进程定义了一个专门的数据结构称为PCB。哪一项不是PCB的内容 A
A. 正文代码段
B. 消息队列指针
C. 程序状态字
D. 打开文件的文件句柄(描述符)
73.为了便于操作系统进行控制,在操作系统内核中为进程定义了一个专门的数据结构称为PCB。哪一项不是PCB的内容 B
A. 进程队列指针
B. 消息队列
C. 界地址寄存器
D. 当前打开文件清单
74.操作系统将PCB组织成不同的队列,下列哪一种队列与PCB无关 A
A. 创建队列
B. 就绪队列
C. 等待队列
D. 运行队列
75.在Pthread线程包中,线程操作pthread_join的含义是 C
A. 创建一个新的线程
B. 撤销一个线程
C. 等待一个特定的线程退出
D. 参加一个新的线程
76.在Pthread线程包中,线程操作pthread_yield的含义是 A
A. 线程让出CPU
B. 创建一个线程
C. 阻塞一个线程
D. 等待一个特定的线程退出
77.该程序正确运行后的结果是 A
A. I am the child process,my process ID is 3744
I am the parent process,my process ID is 3987
B. I am the child process,my process ID is 3744
C. I am the parent process,my process ID is 3987
D. 不输出任何信息
78.该程序正确运行后的结果是 A
A. this is in main program i am in child process i am in parent process
B. this is in main program i am in child process
C. this is in main program i am in parent process
D. this is in main program i am in child process this is in main program i am in parent process
79.程序正常运行时最多会派生出多少个进程 A
A. 8
B. 6
C. 5
D. 4
80.程序正常运行后共打印出多少个“hello” A
A. 15
B. 11
C. 7
D. 4
81.对于C语言程序,在unix操作系统中正确编译链接后,其正确的运行结果是 A
A. i am the child process,x=2
i am the parent process,x=0
B. i am the child process,x=2
C. i am the parent process,x=0
D. i am the parent process,x=2
i am the child process,x=0
82.对于C语言程序,在unix操作系统中正确编译链接后,其正确的运行结果是 B
A. 共打印出2行hello world
B. 共打印出3行hello world
C. 共打印出4行hello world
D. 共打印出5行hello world
83.对于C语言程序,在unix操作系统中正确编译链接后,其正确的运行结果是 D
A. 共打印出2行hello world
B. 共打印出3行hello world
C. 共打印出4行hello world
D. 共打印出5行hello world
84.对于C语言程序,在unix操作系统中正确编译链接后,其正确的运行结果是 D
A. 共打印出6行hello world
B. 共打印出7行hello world
C. 共打印出8行hello world
D. 共打印出9行hello world
85.在unix操作系统进程控制操作中,函数wait()的作用是 B
A. 用子进程来代替父进程的代码
B. 父进程获取子进程的结束状态并回收资源
C. 关闭所有标准IO流并退出
D. 进程等待一个IO输入
86.一定不会引起进程调度的操作是 D
A. 一个进程完成工作后被撤销
B. 一个进程从运行状态变成了阻塞状态或就绪状态
C. 一个进程从阻塞状态变成了就绪状态
D. 一个进程从就绪状态变成了运行状态
87.在采用非抢占式调度的操作系统中,不能引起新进程调度的事件是 D
A. 正在运行的进程用完时间片
B. 正在运行的进程出错
C. 正在运行的进程等待IO事件
D. 新创建的进程进入就绪队列
88.在pthread线程包的使用中,当用户编程创建一个新的线程时,需要使用的线程库函数是 B
A. pthread_exit()
B. pthread_create()
C. pthread_yield()
D. pthread_join()
89.在pthread线程包的使用中,当用户需要结束一个线程时,需要使用的线程库函数是 A
A. pthread_exit()
B. pthread_create()
C. pthread_yield()
D. pthread_join()
90.下列关于管程的叙述中,哪一个是错误的 C
A. 为解决进程间的同步关系,引入了条件变量
B. 在条件变量上实施P、V操作
C. 管程本身保证了互斥
D. 管程中不能同时有第二个活跃进程
91.pthread_mutex_init()表示的是 A
A. 创建一个互斥量
B. 等待一个互斥量
C. 删除一个互斥量
D. 释放一个互斥量
92.有如下C语言,哪一个是正确的 A
A. 线程th_f运行后主动退出
B. 线程th_f运行后等待一个特定的线程退出
C. 线程th_f运行后主动释放CPU给其他线程
D. 线程th_f运行后进入等待态
93.有如下C语言,哪一个是正确的 B
A. 线程th_f运行后主动退出
B. 线程th_f运行后等待一个特定的线程退出
C. 线程th_f运行后主动释放CPU给其他线程
D. 线程th_f运行后进入等待态
94.有如下C语言,哪一个是正确的 C
A. 线程th_f运行后主动退出
B. 线程th_f运行后等待一个特定的线程退出
C. 线程th_f运行后主动释放CPU给其他线程
D. 线程th_f运行后进入等待态
95.有如下C语言,哪一个是正确的 D
A. 线程th_f运行后主动退出
B. 线程th_f运行后等待一个特定的线程退出
C. 线程th_f运行后主动释放CPU给其他线程
D. 线程th_f运行后进入等待态
96.有如下C语言,哪一个是正确的 B
A. 程序运行中最多存在1个线程
B. 程序运行中最多存在2个线程
C. 程序运行中最多存在3个线程
D. 程序运行中最多存在4个线程
97.在上述程序中,pthread_creat函数表示 A
A. 创建线程,线程名为th_f
B. 创建线程,线程名为tid
C. 创建线程,线程名为st
D. 创建线程,线程名为NULL
98.在上述程序中,pthread_join函数意义是 B
A. 线程th_f运行后主动退出
B. 线程th_f运行后等待一个特定的线程退出
C. 线程th_f运行后主动释放CPU给其他线程
D. 线程th_f运行后成为僵尸
99.在上述程序中,pthread_exit函数的意义是 A
A. 线程th_f运行后正常退出
B. 线程th_f运行后等待一个特定的线程退出
C. 线程th_f运行后主动释放CPU给其他线程
D. 线程th_f运行后成为僵尸
100.在上述程序中,pthread_yield函数的意义是 C
A. 线程th_f运行后主动退出
B. 线程th_f运行后等待一个特定的线程退出
C. 线程th_f运行后主动释放CPU给其他线程
D. 线程th_f运行后成为僵尸
仍在学习路上... 接受指正,积极完善