




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 选择题选择题 1 在进程的组成部分之中 进程在运行中不可修改的部分是 B A 私用程序段 B 共享程序段 C 数据段 D 进程控制块 2 在消息缓冲通信中 消息队列属于 A 资源 A 临界 B 共享 C 永久 D 可剥夺 3 进程间的同步是指进程间在逻辑上的相互 B 关系 A 联接 B 制约 C 继续 D 调用 4 进程A和进程B通过共享缓冲区协作完成数据处理 进程A负责生产数据并放入缓 冲区 进程B从缓冲区中读数据并输出 进程A和进程B之间的关系是 B A 互斥关系 B 同步关系 C 互斥和同步 D 无制约关系 5 进程从运行状态到阻塞状态可能是由于 C A 进程调度程序的调度 B 现运行进程的时间片耗尽 C 现运行进程执行了wait操作 D 现运行进程执行了signal操作 6 下面关于线程的叙述中正确的是 A A 线程包含CPU现场 可以独立执行程序 B 每个线程有自己独立的地址空间 C 线程之间的通信必须使用系统调用函数 D 进程只能包含一个线程 7 并发进程之间 D A 彼此无关 B 必须同步 C 必须互斥 D 可能需要同步或互斥 8 信号量S不能用于 D 操作 A signal B wait C 赋初值 D 运算表达式 9 D 是一种只能进行wait操作和signal操作的特殊变量 A 调度 B 进程 C 同步 D 信号量 10 分配给进程占用处理机的时间到而强迫进程P让出处理器 或有更高优先级的进 程要运行 迫使正在运行的进程P让出处理器 则进程P状态变化的情况为 A A 运行态 就绪态 B 运行态 等待态 C 就绪态 运行态 D 等待态 就绪态 11 下面关于进程的叙述中正确的是 A A 进程获得CPU运行是通过调度得到的 B 优先级是进程调度的重要依据 一旦确定就不能改变 C 在单CPU的系统中 任何时刻都有一个进程处于运行状态 D 进程申请CPU得不到满足时 其状态变为阻塞 12 操作系统通过 B 对进程进行管理 A 进程 B 进程控制块 C 进程启动程序 D 进程控制区 13 若一个进程拥有100个线程 这些线程属于用户级线程 它们在系统调度执行时间上占用的 时间片个数是 A A 1 B 100 C 1 100 D 0 14 到其他3种状态的进程状态是 D A 就绪 B 阻塞 C 完成 D 执行 15 信号量的初值为2 当前值为 3 则表示等待进程有 C A 1个 B 2个 C 3个 D 5个 16 wait操作可能导致 C A 进程就绪 B 进程结束 C 进程阻塞 等待 D 新进程创建 17 下列的进程状态变化中不可能发生的变化是 A A 等待 运行 B 运行 等待 C 运行 就绪 D 等待 就绪 18 如果有三个进程共享同一互斥段 而且每次最多允许两个进程进入该互斥段 则 信号量的初值应设置为 C A 3 B 1 C 2 D 0 19 一个进程释放一种资源将有可能导致一个或几个进程 D A 由就绪变运行 B 由运行变就绪 C 由阻塞变运行 D 由阻塞变就绪 20 进程控制块PCB不包括的内容是 D A CPU现场 B 进程优先级 C 进程运行状态 D 文件缓冲区 21 PCB是描述进程状态和特性的数据结构 一个进程 D A 可以有多个PCB B 可以和其他进程共用一个PCB C 可以没有PCB D 只能有唯一的PCB 22 进程和程序的本质区别是 B A 内存和外存 B 动态和静态特征 C 共享和独占使用计算机资源 D 顺序和非顺序执行指令 23 用于解决进程间互斥的方法是 B 信号量及wait signal操作 加锁与解锁 信箱方式 消息缓冲方式 特权指令方式 A 和 B 和 C 和 D 和 24 在操作系统中 每个进程具有独立性 进程之间又具有相互制约性 对于任何两 个并发进程 它们 C A 必定无关 B 必定相关 C 可能相关 D 可能相同 25 进程所请求的一次打印输出结束后 将使进程状态从 D A 运行态变为就绪态 B 运行态变为等待态 C 就绪态变为运行态 D 等待态变为就绪态 解析 运行中的进程有3种状态 运行状态 就绪状态和等待状态 运行状态 是指进程已获得CPU 并且在CPU中执行的状态 就绪状态 是指进程已具备 运行条件 但由于没有获得CPU而不能运行所处的状态 一旦CPU分配给它 就可以运行 等待状态 是指进程因等待某种事件发生而暂时不能运行的状态 例如 当两个进程竞 争使用同一资源时 没有占用该资源的进程便处于等待状态 它必须等到该资源被释放后 才可以去使用它 引起等待的原因一旦消失 进程就变为就绪状态 以便在适当的时候投 入运行 26 在下面的叙述中 不正确的是 C A 一个进程可创建一个或多个线程 B 一个线程可创建一个或多个线程 C 一个线程可创建一个或多个进程 D 一个进程可创建一个或多个进程 27 在下面的叙述中正确的是 B A 线程是比进程更小的能独立运行的基本单位 B 引入线程可提高程序并发执行的程度 可进一步提高系统效率 C 线程的引入增加了程序执行时时空开销 D 一个进程一定包含多个线程 解析 线程是进程内一个相对独立的执行单元 但并不能单独运行 只能在程序中 运行 线程的引入减少了程序执行时的时空开销 一个进程可包含一个或多个线程 28 下面关于线程的叙述中 正确的是 C A 不论是系统支持线程还是用户级线程 其切换都需要内核的支持 B 线程是资源的分配单位 进程是调度和分配的单位 C 不管系统中是否有线程 进程都是拥有资源的独立单位 D 在引入线程的系统中 进程仍是资源分配和调度分派的基本单位 解析 引入线程后 进程仍然是资源分配的单位 线程是处理器调度和分派的单位 线程本身不具有资源 它可以共享所属进程的全部资源 29 在下面的叙述中 正确的是 D A 引入线程后 处理机只在线程间切换 B 引入线程后 处理机仍在进程间切换 C 线程的切换 不会引起进程的切换 D 线程的切换 可能引起进程的切换 30 进程依靠 D 从阻塞状态过渡到就绪状态 A 程序员的命令 B 系统服务 C 等待下一个时间片到来 D 合作 进程的唤醒 二 简答题二 简答题 1 什么是线程 进程和线程的关系是什么 线程可定义为进程内的一个执行单位 或者定义为进程内的一个可调度实体 在具有多线程机制的操作系统中 处理机调度的基本单位不是进程而是线程 一个进程可 以有多个线程 而且至少有一个可执行线程 进程和线程的关系是 1 线程是进程的一个组成部分 2 进程的多个线程都在进程的地址空间活动 3 资源是分给进程的 而不是分给线程的 线程在执行中需要资源时 系统从进程的资源 分配额中扣除并分配给它 4 处理机调度的基本单位是线程 线程之间竞争处理机 真正在处理机上运行的是线程 5 线程在执行过程中 需要同步 2 进程能自己将自己唤醒吗 进程能自己将自己撤销吗 唤醒进程和撤消进程都是要通过CPU上运行程序来实现的 一个进程入睡了 它 就不可能被调度到CPU上运行 一个进程在撤消前必须先进入终止状态 而处于终止 状态的进程不可能被调度到CPU上运行 因此 进程被唤醒 被撤消都不能由自己来 完成 只能由别的进程实现 3 父进程创建子进程之后 父子进程间的关系是什么 一个进程创建子进程之后 进程与产生的进程之间的关系是父子关系 分别称为父进程 和子进程 子进程一经产生就与父进程并发执行 子进程共享父进程的正文段和已经打开 的文件 4 简述引进线程的好处 1 以线程作为系统调度的基本单位 减少了系统的时空开销 以进程为系统调度的 基本单位的系统中 进程的切换是很频繁的 在切换中由于要保留当时的运行环境 还 要设置新选中的进程的运行环境 这既花费了处理机的时间 又增加了主存的空间 从 而也限制了系统进程的数量和进程的切换速度 2 引进线程提高了系统的并行能力 线程作为进程内的一个可执行实体 减少了 并行粒度 线程作为调度的基本单位而不是资源分配的基本单位 调度更为容易 而且 采用线程提高系统的并行能力比采用进程更为有效 3 同一进程的线程共享进程的用户地址空间 所以同一进程的线程间的通信更容易 实现 5 当一个进程的父进程被撤销时 该进程是撤销好还是不撤销好 在实际系统中 两种处理办法都是可行的 且各有优缺点 若撤消 则该进程的 任务可能还没有完成 这显然是不利的 特别是当该进程的运行结果对其他进程的运行很 重要 如该进程是其他进程的前趋进程 没有它的运行结果其他进程无法运行 时 若不撤 消 则该进程又可能成为不可控的 孤儿 从而产生不可预测的结果 比较好的做法是 当一个进程的父进程被撤消时 可以将该进程 过继 给系统内一个级别较高的进程 如Unix 中的1 进程 让它有一个 新的父亲 这样既可以继续完成其任务又不会成为不可控的 6 为什么说进程同步问题关系到OS的成败 同步机制应遵循的准则是什么 进程同步问题若处理不当 有可能会产生种种 与时间有关性错误 特别是当两 个或多个进程共享了公共变量而又没有互斥地使用这些变量时 极有可能导致用户程序运 行结果的不正确 这量种灾难性的后果 这种OS显然是不成功的 是用户不敢使用的 有以下四条准则 空闲让进 忙则等待 有限等待 让权等待 7 进程之间存在哪几种相互制约关系 各是什么原因引起的 下列活动分别属于哪种 制约关系 1 若干同学去图书馆借书 2 两队举行篮球比赛 3 流水线生产的各道工序 4 商品生产和消费 进程间存在着两种相互制约的关系 直接制约关系 即同步问题 和间接制约关 系 即互斥问题 同步问题是存在逻辑关系的进程之间相互等待产生的制约关系 互斥问题是相互无逻辑关系的进程间竞争使用相同的资源所发生的制约关系 1 属于互斥关系 因为书的个数是有限的 一本书只能借给一个同学 2 属于互斥关系 篮球只有一个 两队都要争夺 3 属于同步关系 各道工序的开始都依赖前道工序的完成 4 属于同步关系 商品没生产出来 消费无法进行 商品未消费完 生产也无需进 行 8 试比较说明进程和程序的区别有哪些 1 每个进程实体中包含了程序段和数据段这两个部分 因此说进程是与程 序是紧密相关的 但从结构上看 进程实体中除了程序段和数据段外 还必须包含一 个数据结构 即进程控制块PCB 2 进程是程序的一次执行过程 因此是动态的 动态性还表现在进程由创建而 产生 由调度而执行 由撤消而消亡 即它具有一定的生命周期 而程序则只是一组 指令的有序集合 并和永久地存放在某种介质上 其本身不具有运动的含义 因此是 静态的 3 多个进程实体可同时存放在内存中并发地执行 也正是引入进程的目的 而 程序 在没有为它创建进程时 的并发执行具有不可再现性 因此程序不能正确地并 发执行 4 进程是一个能够独立运行 独立分配资源和独立接受调度的基本单位 而因 程序不具有PCB 所以它是不可能在多道程序环境下独立运行的 5 程与程序不一一对应 同一个程序的多次运行 将形成多个不同的进程 同 一个程序的一次执行也可以产生多个进程 而一个进程也可以执行多个程序 三 应用题三 应用题 1 有一个理发师 一把理发椅和n把供等候理发的顾客坐的椅子 如果没有顾客 则理发师便 在理发椅子上睡觉 当一个顾客到来时 必须唤醒理发师 进行理发 如果理发师正在理 发时 又有顾客来到 则如果有空椅子可坐 他就坐下来等 如果没有空椅子 他就离开 为理发师和顾客各编一段程序描述他们的行为 要求不能带有竞争条件 define CHAIRS 为等候的顾客准备的椅子数 semaphore customers 0 semaphore barbers 0 semaphore mutex 1 用于互斥 int waiting 0 void customers wait mutex if waiting CHAIRS waiting waiting 1 signal mutex signal customers 坐下等待 wait barbers else signal mutex void barber while 1 wait customers wait mutex waiting waiting 1 signal mutex 理发 signal barbers 2 计算进程PC和打印进程P01 P02共享一个单缓冲区 计算进程负责计算 并把计算结果放 入单缓冲中 打印进程P01 P02则负责从单缓冲中取出计算结果进行打印 而且对每个计 算结果 P01和P02都需分别打印一次 请用记录型信号量描述上述进程间的同步关系 为了实现计算进程和打印进程之间的同步 并使单缓冲中的每个计算结果都被两个打 印进程分别打印一次 可设置四个信号量 full1表示缓冲中是否有可供P01打印的计算结果 full2表示缓冲中是否有可给P02打印的计算结果 emptypl empty2则表示计算结果是否 已被P01l P02取走 只有当一个结果被两个打印进程都取走后 缓冲区才变空 计算进程 才可将下一个计算结果放入单缓冲 相应的同步算法可描述如下 semaphore empty1 1 enpty2 1 full1 0 full2 0 PC While 1 computrt next number wait empty1 wait empty2 add the number to bufer signal full1 signal full2 P01 While 1 wait full1 take from bufer signal emptyl print last number P02 wait full2 take from buffer signal empty2 print last number 3 设有三个进程 输入进程 input 计算进程 compute 和输出进程 output 它们通过共享两 个缓冲区buf1和buf2协作完成任务 如下图所示 输入进程计算进程输出进程buf1buf2 三个进程之间的合作关系如下 1 输入进程使用put 函数把数据送到buf1 供计算进程调用calculate 函数计算 2 计算进程每次调用get 函数从buf1取出已输入的可计算的数据进行计算 并把计 算结果使用put 函数把数据送到buf2送入buf供输出进程打印 3 输出进程调用get 函数把buf2中的数据使用print 函数输出 定义合适的信号量 并用伪代码完成实现过程 信号量 nonf1 none1 输入进程与计算进程同步 buf1是否为空 nonf2 none1 计算进程与输出进程同步 buf2是否为空 s1 s2 分别互斥使用buf1和buf2 procedure input while 1 wait nonf1 wait s1 put data signal s1 signal none1 procedure compute while 1 wait none1 wait s1 data get data calculate data signal s1 signal nonf1 wait nonf2 wait s2 put data signal s2 signal none2 procedure output while 1 wait none2 wait s2 data get print data signal s2 signal nonf2 4 下面给出的两个进程互斥的算法是安全的吗 为什么 define true define false Int flag 2 flag 1 flag 2 false enter crtsec i int i While flag 1 i flag i true leave crtsec i Int i flag i false process I Enter crtsec i In critical section Leave crtsec i 从概念上讲 系统中各进程在逻辑上是独立的 它们可以按各自的速度向前推进 但 由于它们共享某些临界资源 因而产生了临界区问题 对于具有临界区问题的并发进程 它们之间必须互斥 以保证不会同时进入临界区 这种算法不是安全的 因为 在进入临界区的enter crtsec 不是一个原语操作 如果两个进程同时执行完其循环 此前两个flag均为false 则这两个进程可同时进入临界区 5 进程 A1 A2 An 通过 K 个缓冲区向进程 B1 B2 Bm 不断地发送消息 发送和接收工作遵循如下规则 1 每个发送进程一次发送一个消息 写入缓冲区 缓冲区大小
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年西式烹调师初级考试模拟题及解析
- 二零二五年度电力设备安装工程安全教育培训合同
- 2025年度航空航天设备制造厂主体工程承包合同
- 二零二五年度场管理办公室智能安防系统设计与安装合同
- 二零二五年度餐饮服务员劳动合同创新服务模式
- 二零二五年度智能仓储物流系统区域代理商加盟代理合同
- 二零二五年度土地承包经营权纠纷调解执行合同
- 二零二五年度虚拟现实技术应用开发合同
- 七年前数学试卷
- 去年余姚中考数学试卷
- DL∕ T 5100-1999 水工混凝土外加剂技术规程
- 合同未签订提前供货函模板
- 小学必背古诗词182首(带目录及释义)人教(部编版)
- 2024年东南亚一体式直流充电桩市场深度研究及预测报告
- DZ∕T 0213-2020 矿产地质勘查规范 石灰岩、水泥配料类(正式版)
- 学校食堂食材采购询价方案范文(35篇)
- 2023年广西现代物流集团社会招聘、校园招聘考试真题及答案
- 保险公司案件风险排查工作报告
- 《化妆品技术》课件-化妆品的历史起源与发展
- 《建筑施工安全检查标准》JGJ59-20248
- 住宅公共部分装修综合项目施工专项方案
评论
0/150
提交评论