《计算机操作系统》(第4版)考研真题

2024-08-27 17:28

本文主要是介绍《计算机操作系统》(第4版)考研真题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.在单处理机系统中,可并行的是(   )。[2009年统考]

I.   进程与进程

II.  处理机与设备 Ⅲ.处理机与通道 IV.  设备与设备

A.I IⅡ    I

B.I I      IV  C.I    IV D.IⅡ IV

【答案】D

【解析】单处理机即只有一个处理机(此处不包含多核的情况),某时刻处理机只能执行一个进程,所以进程 与进程之间不能并行执行。处理机、通道、设备都能并行执行,比如同时打印(设备)、计算(处理机)、传输数据 (通道控制内存与外存间数据交换)。换个角度来想,进程的执行必须要依赖处理机,而一个处理机同时只能处理 一个进程,所以单处理机系统中进程就不可以并行;而其他选项依赖的是不同部件,因此可以并行。明确一个概 念,即使是采用了多道程序设计技术的系统,只要是单处理机,进程就不可以并行,而只是并发。因此如果题目 改成“采用多道程序设计技术的单处理机系统”,答案依然不变。

2.举例说明为什么操作系统起到了扩展机器的作用?[北大2004年研]

答:把真实的硬件情况在程序员面前隐藏起来,而表现为一组友好的、简单的、可以被读/写的命名文件的  程序就是操作系统。就如同隐藏磁盘硬件,表现为一个简单的面向文件的接口一样,操作系统还隐藏了很多令人 厌烦的中断、定时器、内存管理以及其他一些底层特性。在这种情况下,操作系统所提供的对硬件的抽象更简单, 更容易使用。例如,对于最基本的命令read write,   read  write 命令都需要13个参数,这些参数被组合 在一个9字节的数据中。这些参数给出了需要读的磁盘块的地址、每磁道的扇区数、物理介质上所使用的记录模 式、扇区间的间隔以及遇到数据删除标志时需要做些什么。当操作完成的时候,控制芯片会返回23个状态以及 错误码,它们会被组合到7个字节长的数据中。不仅如此,编写软盘驱动程序的程序员还必须随时留意驱动器的 电动机是开着的还是关着的。如果电动机是关着的,在读/写数据前,它必须被打开(伴随很长一段启动延时)。

电动机也不能长时间开着,否则会使软磁盘因磨损过度而损坏。这就要求程序员必须在长启动延时及磁盘磨损度 (磨损会使磁盘上的数据丢失)之间寻找一种平衡。这对程序员来说是非常困难的。程序员所想要的,是一种简单 的、高级的抽象。对于这一问题,一个典型的抽象就是磁盘上包含一组已被命名的文件,每一个文件都可能被打 开来写或读,最后,文件会被关闭。诸如记录信息是否需要调整频率、电动机的当前状态等细节问题在这一抽象 中就不会再出现在用户的面前。

在这种观点中,操作系统的功能在用户面前就等同于是一台扩展了的机器或者说是虚拟的机器,它使得在硬 件上面的编程更加容易。

2

1.下列选项中会导致进程从执行态变为就绪态的事件是(   )。[2015年统考]

A.  执行P(wait)    操作

B.  申请内存失败

C. 启 动I/O 设备

D.  被高优先级进程抢占

【答案】D

【解析】D 项,被高优先级进程抢占,进程会由执行态变为就绪态。ABC三项,程序由于缺少资源而由执 行态转为阻塞态。

2.下列关于进程和线程的叙述中,正确的是(   )。[2012年统考]

A. 不管系统是否支持线程,进程都是资源分配的基本单位

B. 线程是资源分配的基本单位,进程是调度的基本单位 C. 系统级线程和用户级线程的切换都需要内核的支持  D.  同一进程中的各个线程拥有各自不同的地址空间

【答案】A

【解析】进程始终是操作系统资源分配的基本单位,线程不能直接被系统分配资源。因此A 项是正确的,B  项错误,而且线程是调度的基本单位。用户级线程只在用户进程的空间内活动,系统并不能感知到用户级线程的 存在,所以用户级线程的切换不需要通过内核。系统级线程的切换是需要内核支持的,因此C 项错误。同一进  程下的各线程共享进程的地址空间,并共享进程所持有的资源,但线程有自己的栈空间,不与其他线程共享,因 D 项错误。

3.有两个并发执行的进程P1  P2, 共享初值为1的变量x。P1对 x  1 ,P2  x 减1。

//加1操作

//减1操作

load R1,x

①//取x 到寄存器R1

load R2,x

inc       R1

dec R2

store x,R1

③//将R1 的内容存入x

store x,R2

两个操作完成后,x 的值(   )。[2011年统考]

A. 可能为- 1或3

B.    1

C.  可能为0、1或2

D. 可能为- 1、0、1或2

【答案】C

【解析】执行①②③④⑤⑥结果为1,执行①②④⑤⑥③结果为2,执行④⑤①②⑨⑥结果为0,结果-1无 法得到。这个题目的进程之间没有同步关系,因此通过分步尝试就可以得到答案。有的题目中两个进程会有同步 关系,可以画出前趋图,以防推进顺序错误。

4.在支持多线程的系统中,进程P 创建的若干个线程不能共享的是(   )。 [2011年统考]

A.  进程P 的代码段

B. 进 程P 中打开的文件 C.  进程P 的全局变量

D.  进程P 中某线程的栈指针

【答案】D

【解析】进程是资源分配的基本单元,进程下的各线程可以并行执行,它们共享进程的资源,包括地址空间、 持有资源、相关变量和代码等,但各个线程有自己的栈,这样各线程才能够独立执行程序而不相互干扰,各自的 栈指针对其他线程是透明的,因此进程P 中某线程的栈指针是不能共享的。

5.下列选项中,导致创建新进程的操作是(   )。[2010年统考]

I.   用户登录成功  .设备分配

IⅢ . 启动程序执行

A.   I 和Ⅱ B. 仅Ⅱ和Ⅲ C.   I 和Ⅲ

D.I I III

【答案】C

【解析】用户登录成功就需要为这个用户创建进程来解释用户的各种命令操作,用户的相应操作都会反映为  该用户进程的请求或反馈,便于系统管理;设备分配由相应进程提出申请,内核自动完成,对于设备的操作可以 归于提出申请的这个进程,因此不需要创建新进程;启动程序执行,系统需要为这个程序创建一个对应的动态结 构,也就是进程,来控制和管理这个程序的运行,可以简单地说启动程序的目的就是创建一个新进程来执行程序。

6.下列选项中,降低进程优先权级的合理时机是(   )。[2010年统考]

A.  进程的时间片用完

B. 进程刚完成I/O 操作,进入就绪列队

C.  进程长期处于就绪列队

D.  进程从就绪状态转为运行态

【答案】A

【解析】进行降低优先级的操作主要是为了改善交互式系统的响应时间,并均衡各个作业的公平性。A 项进 程时间片用完可以降低其优先级;B 项中进程刚完成I/O,  进入就绪队列后应该等待被处理器调度,故应提高优   C 项中长期处于就绪队列中的进程应当提高其优先级,避免产生“饥饿”甚至“饿死”现象;D 中优先级

不应该在此时降低,应该在时间片用完后降低。

7.  设与某资源相关联的信号量初值为3,当前值为1,若M 表示该资源的可用个数,N  表示等待该资源的 进程数,则M,N    分别是(   )。 [2010年统考]

A.0,1 B.1,0 C.1,2 D.2,0

【答案】B

【解析】题目中信号量初值为3,表示该资源初始时有3个。信号量当前值K>0 时,表示此资源还有K 个

资源可用,题目中信号量当前值为1,表示还有1个可用资源,M 应该为1。由于还存在可用资源,所以此时不 应存在等待该资源的进程,N 应当为0。因此答案选B 项。

8. 某计算机系统中有8台打印机,由K 个进程竞争使用,每个进程最多需要3台打印机。该系统可能会发 生死锁的K 的最小值是(   )。 [2009年统考]

A.2 B.3  C.4 D.5

【答案】C

【解析】这种题用到组合数学中鸽巢原理的思想,考虑最极端情况,因为每个进程最多需要3台打印机,如  果每个进程已经占有了2台打印机,只要

semaphore mutex=1;semaphore odd=0,even=0; semaphore empty=N;Process P1(){while(true){number=produce();P(empty);                //检查缓冲区是否有空单元P(mutex);                //申请访问缓冲区put();V(mutex);if(number%2==0) V(even);elseV(odd);} }Process P2(){while(true){P(odd);P(mutex); getodd();V(mutex);   V(empty);   countodd();]}Process P3(){while(true)P(even);P(mutex);geteven();V(mutex);V(empty);counteven();}}

还有多的打印机,那么总能满足达到3台的条件,不会产生死锁。所以, 将8台打印机分给K 个进程,每个进程有2台打印机且无剩余打印机,这个情况就是极端情况,K 为4。

9 . 3个进程P1 P2 P3 互斥使用一个包含N(N>0) 个单元的缓冲区,P1 每次用produce(生成一个正整数, 并用put() 送入缓冲区某一空单元中;P2  每次用getodd() 从该缓冲区中取出一个奇数,并用countodd() 统计奇数 个数;P3 每次用geteven()从该缓冲区中取出一个偶数,并用counteven()统计偶数个数。请用信号量机制实现这 3个进程的同步与互斥活动,并说明所定义的信号量的含义。要求用伪代码描述。[2009年统考]

答:定义信号量odd 控制P1 P2 之间的同步,初值为0;even 控制P1 P3 之间的同步,初值为0;empty 表示缓冲区中的空单元数,初值为N;mutex   控制进程间互斥使用缓冲区,初值为1。程序如下:

这篇关于《计算机操作系统》(第4版)考研真题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1112305

相关文章

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用

龙蜥操作系统Anolis OS-23.x安装配置图解教程(保姆级)

《龙蜥操作系统AnolisOS-23.x安装配置图解教程(保姆级)》:本文主要介绍了安装和配置AnolisOS23.2系统,包括分区、软件选择、设置root密码、网络配置、主机名设置和禁用SELinux的步骤,详细内容请阅读本文,希望能对你有所帮助... ‌AnolisOS‌是由阿里云推出的开源操作系统,旨

五大特性引领创新! 深度操作系统 deepin 25 Preview预览版发布

《五大特性引领创新!深度操作系统deepin25Preview预览版发布》今日,深度操作系统正式推出deepin25Preview版本,该版本集成了五大核心特性:磐石系统、全新DDE、Tr... 深度操作系统今日发布了 deepin 25 Preview,新版本囊括五大特性:磐石系统、全新 DDE、Tree

如何测试计算机的内存是否存在问题? 判断电脑内存故障的多种方法

《如何测试计算机的内存是否存在问题?判断电脑内存故障的多种方法》内存是电脑中非常重要的组件之一,如果内存出现故障,可能会导致电脑出现各种问题,如蓝屏、死机、程序崩溃等,如何判断内存是否出现故障呢?下... 如果你的电脑是崩溃、冻结还是不稳定,那么它的内存可能有问题。要进行检查,你可以使用Windows 11

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

Linux操作系统 初识

在认识操作系统之前,我们首先来了解一下计算机的发展: 计算机的发展 世界上第一台计算机名叫埃尼阿克,诞生在1945年2月14日,用于军事用途。 后来因为计算机的优势和潜力巨大,计算机开始飞速发展,并产生了一个当时一直有效的定律:摩尔定律--当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍。 那么相应的,计算机就会变得越来越快,越来越小型化。

计算机视觉工程师所需的基本技能

一、编程技能 熟练掌握编程语言 Python:在计算机视觉领域广泛应用,有丰富的库如 OpenCV、TensorFlow、PyTorch 等,方便进行算法实现和模型开发。 C++:运行效率高,适用于对性能要求严格的计算机视觉应用。 数据结构与算法 掌握常见的数据结构(如数组、链表、栈、队列、树、图等)和算法(如排序、搜索、动态规划等),能够优化代码性能,提高算法效率。 二、数学基础

java计算机毕设课设—停车管理信息系统(附源码、文章、相关截图、部署视频)

这是什么系统? 资源获取方式在最下方 java计算机毕设课设—停车管理信息系统(附源码、文章、相关截图、部署视频) 停车管理信息系统是为了提升停车场的运营效率和管理水平而设计的综合性平台。系统涵盖用户信息管理、车位管理、收费管理、违规车辆处理等多个功能模块,旨在实现对停车场资源的高效配置和实时监控。此外,系统还提供了资讯管理和统计查询功能,帮助管理者及时发布信息并进行数据分析,为停车场的科学

华为OD机试真题-学生方阵-2024年OD统一考试(E卷)

题目描述 学校组织活动,将学生排成一个矩形方阵。 请在矩形方阵中找到最大的位置相连的男生数量。这个相连位置在一个直线上,方向可以是水平的,垂直的,成对角线的或者呈反对角线的。 注:学生个数不会超过10000 输入描述 输入的第一行为矩阵的行数和列数, 接下来的 n行为矩阵元素,元素间用""分隔。 输出描述 输出一个整数,表示矩阵中最长的位

2024年AMC10美国数学竞赛倒计时两个月:吃透1250道真题和知识点(持续)

根据通知,2024年AMC10美国数学竞赛的报名还有两周,正式比赛还有两个月就要开始了。计划参赛的孩子们要记好时间,认真备考,最后冲刺再提高成绩。 那么如何备考2024年AMC10美国数学竞赛呢?做真题,吃透真题和背后的知识点是备考AMC8、AMC10有效的方法之一。通过做真题,可以帮助孩子找到真实竞赛的感觉,而且更加贴近比赛的内容,可以通过真题查漏补缺,更有针对性的补齐知识的短板。