- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作系统阶段测验题
一、选择题:
当系统正在处理某一屮断时,若要防止新发生屮断的干扰,可釆取手段是()。
A.关中断 B.中断返回C.中断嵌套D.中断响应
进程由多个部分组成,下列项目中不属于进程的组成部分的是()。
A.进程控制块 B.程序 C.就绪队列D.数据集合
计算机系统屮检测是否有屮断事件发生应是在()。
A.进程切换时 B.执行完一条指令后
C.执行P操作后 D.由用户态转入管态时
采用多道程序设计能够()。
A?减少调度次数 B.减少处理器空闲时间
C.缩短每道作业的执行时间 I).避免发生资源竞争现象
一个能被多个用户同时调用执行的程序必须是()。
A.为各个用户提供不同的服务 B.在执行中随用户的要求而发生变化
C.是纯代码/可重入的 D.能分解成多个并行执行的子程序
用户程序是通过()请求操作系统服务的。
A.转移指令 B.子程序调用指令
C.系统调用 D.以上三种都可以
下列选项屮,在用户态下执行的是:
A.命令解释程序 B.缺页处理程序
C.进程调度程序 D.时钟中断处理程序
在支持多线程的系统中,进程P内创建的多个线程不能共享的是:
A.进程P的代码段B.进程P屮打开的文件
C.进程P的全局变量D.进程P中某线程的栈指针
二、简答题
为什么要引入线程,多线程有何优点?
传统进程存在的问题:
?进程创建开销大;
?进程切换开销大;
?进程间通信不方便效率低;
?编写并发程序困难。
操作系统引入线程后,可以简化并发程序的设计,方便在一个进程内实现多 个并行处理。
多线程的优点包括:实现进程内并行处理;方便数据共享;降低了切换时的 系统开销;提高了 CPU的利用率;改善了程序的响应性。
对比进程间切换与同一进程内的线程间切换的异同。
进程切换涉及地址空间等的改变,系统开销大;线程切换没有地址空间的 改变,开销小;
进程切换必定由操作系统完成,而用户级线程切换可由用户程序自己完 成,不需要系统调用,速度快。另外,进程调度的标准由操作系统确定, 不能改变,而用户组线程的调度标准和算法都由用户程序决定,比较灵 活。
和同之处:都需要保护程序执行环境:指令计数器,寄存器,堆栈等。段测验 第一题
三个进程Pl, P2和P3互斥使用一个包含N (N0)个单元的缓冲区。
P1每次用produce()生成一个正整数,并用put ()送入缓冲区某一空单元中;
P2每次用getodd ()从该缓冲区中读出并清空一个奇数,并用countodd ()统计奇数 个数;
P3每次用getevenO从该缓冲区中读出并清空一个偶数,并用counteven() 统计偶数个数。三个进程Pl, P2和P3互斥使用一个包含N (N0)个单元 的缓冲区。
P1每次用produce ()生成一个正整数,并用put ()送入缓冲区某一空单元
P2每次用getodd()从该缓冲区中读出并清空一个奇数,并用countodd0统 计奇数个数;
P3每次用getevenO从该缓冲区中读出并清空一个偶数,并用counteven() 统计偶数个数。
?三个进程Pl, P2和P3
?请用信号灯机制实现这三个进程的同步与互斥活动,并说明所定义信号量的 含义。程序使用伪代码描述。
第二题
?某银行提供1个服务窗口和10个供顾客等待的座位。
?顾客到达银行时,若有空座位,则到取号机上领取一个号,等待叫号。
?取号机每次仅允许一位顾客使用。
?当营业员空闲时,通过叫号选取一位顾客,并为其服务。
?顾客和营业员的活动过程描述如下:
Process 顾客 i {
?从取号机获取一个号码;
?前往服务窗口; /*等待叫号后*/
?获取服务;
}
?请添加必要的信号量和P、V (或waitO. signal ())操作,实现上述过程 中的互斥与同步。
?要求写出完整的过程,说明信号量的含义并赋初值。
解:第一题:设计如下信号量:
semaphore mutex二 1; //互斥
semaphore location二N; //同步:空缓冲区单元的个数
semaphore odd=0; //同步:奇数个数
semaphore even=0;
semaphore even=0;
//同步:偶数个数
生产者P1进程活动如下:
wh订e(l) {
produce ();
//生成整数
P(location);
//缓冲区有无空闲单元
P(mutex);
//互斥进入
put(); //送入缓冲区某一空单元屮是偶数? V(even);
//唤醒P2或P3否则,
V(odd);
V(mutex);
}
奇数消费者P2进程的活动如下:
wh订e(l) {
P(odd);
〃有无奇数?
P(mutex);
//互斥进入
getoddO ;
//从该缓冲区中读出一个奇数并清空
文档评论(0)