HNU操作系统2022期中考试试卷及参考答案

一、(20分,每小题5分)简答题

(1)通过多任务共享实现的虚拟化CPU与通常虚拟机(VMware等)里所使用的虚拟化技术有什么不一样?

    多任务共享实现的虚拟化CPU通常指的是在操作系统层面,通过时间片轮转等技术,使得多个程序或任务在单个物理CPU上交替执行,从而模拟出多CPU并行的效果。然而,这种虚拟化主要是在操作系统内部实现,每个任务或程序仍然运行在同一个操作系统实例上,它们共享操作系统的资源,但彼此之间是隔离的。

    而通常虚拟机(如VMware等)里所使用的虚拟化技术则更为复杂和全面。它涉及到硬件级别的虚拟化,包括CPU、内存、磁盘、网络等资源的虚拟化。虚拟机通过虚拟化技术,可以在一个物理服务器上创建多个虚拟服务器,每个虚拟服务器都有自己的操作系统、应用程序和数据,彼此之间是完全隔离的。这种虚拟化技术允许在一个物理服务器上同时运行多个不同的操作系统和应用程序,从而显著提高了服务器的利用率和灵活性。

(源自文心一言3.5)

(2)试描述进程的所有状态,其中进程在哪些状态只出现一次,哪些会出现多次?

答:

1. 进程的所有状态包括:创建态、终止态、运行态、阻塞态、就绪态

2. 创建态和终止态只出现一次;运行态、阻塞态、就绪态会出现多次

(3)创建新进程的系统调用fork()和exec()有什么区别?

答:

1. 系统调用fork()用于创建子进程,得到两个返回值。新创建的子进程直接从fork()系统调用返回。父进程和子进程代码和数据段相同,但pid和内存空间不同。

2. 系统调用exec()并没有创建新进程,而是直接将当前运行的程序替换为不同的程序。并且,对exec()的成功调用永远不会返回。

(4)简述周转时间和响应时间的定义,并解释它们在不同调度算法(FIFO,SJF,RR)中的表现。

答:

1. 周转时间 = 完成时间 - 到达时间

    响应时间 = 首次运行时间 - 到达时间 

2. 一般来说,FIFO的周转时间较长,响应时间较长;SJF的周转时间较短,响应时间较长;RR的周转时间较长,响应时间较短

二、(20分)

给出图a图b所示代码的输出,函数fork,getpid,getppid的返回值可以是给定的任意正整形值,但要注意在上下文中保持一致。

#include<stdio.h>
#include<unistd.h>int main(int argc, char**argv)
{pid_t pid;int count = 0;pid = fork();if (pid < 0)perror("fork error!");else if (pid == 0) {printf("the pid of son is %d\n", getpid());count++;}else {printf("the pid of parent is %d\n",getpid());count++;}printf("count = %d\n", count);return 0;
}
#include<sys/types.h>
#include<stdio.h>
#include<unistd.h>int main(int argc, char** argv)
{int i = 0;for (i = 0;i < 2; i++){pid_t rpid = fork();if(rpid == 0)printf("%d son %4d %4d %4d\n", i, getppid(), getpid(),rpid);elseprintf("%d father %4d %4d %4d\n", i, getppid(), getpid(),rpid);}sleep(1);return 0;
}

答:

三、(20分)

 (1)在给定三个作业A、B、C按次序到达,运行长度分别为300、200、100,计算在使用SJF和FIFO调度策略时的响应时间、周转时间、等待时间(10分)

答:

1. SJF调度:

平均响应时间为400/3,平均周转时间为1000/3,平均等待时间为400/3

2. FIFO调度:

平均响应时间为800/3,平均周转时间为1400/3,平均等待时间为800/3

(2)某系统采用基于优先权的非抢占式进程调度策略,完成一次进程调度和进程切换的系统时间开销为1μs。在T时刻就绪队列中有3个进程P1、P2和P3,其在就绪队列中的等待时间、需要的CPU时间和优先权如下表所示。(2018年408统考真题)

进程等待时间需要的CPU时间优先权
P130μs12μs10
P215μs24μs30

P3

18μs36μs20

若优先权值大的进程优先获得CPU,从T时刻起系统开始进程调度,计算系统的平均周转时间。(10分)

答:

四、(20分)

分析多级反馈队列中五条规则的作用。

答:

规则1.如果A的优先级 > B的优先级,运行A(不运行B)

规则2.如果A的优先级 = B的优先级,轮转运行A和B

规则3.工作进入系统时,放在最高优先级(最上层队列)

规则4.一旦工作用完了其在某一层中的时间配额(无论中间主动放弃了多少次CPU),就降低其优先级(移入低一级队列)

规则5.经过一段时间S,就将系统中所有工作重新加入最高优先级队列

五、(20分)

(1)给定3个进程(A、B、C)的步长(stride)值分别是80、160、40,初始行程值都是0,当存在几个进程有相同的行程值时,按顺序选择进程执行。使用步长调度算法画出调度程序的行为,直到当所有行程值再次相等。

答:

行程值(A)步长=80行程值(B)步长=160行程值(C)步长=40谁运行
000A
8000B
801600C
8016040C
8016080

A

16016080C
160160120C
160160160……

(2)为什么彩票调度算法和步长调度算法并没有作为CPU调度程序被广泛使用?解释其主要原因。(8分)

答:

原因1:这两种方式都不能很好地适合I/O

原因2:彩票调度的票数分配问题并没有确定的解决方式

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/31085.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

证书速览|CCSK云计算安全知识认证

随着云计算技术的发展&#xff0c;现在越来越多的企业感受到云的好处&#xff0c;把业务逐渐转移到云上。上云是大势所趋&#xff0c;也是现今企业发展的实际需要。 这就意味着企业会更青睐于具备云安全专业知识、技能与经验的人员。 CCSK 云计算安全知识认证&#xff0c;是由…

【学习笔记】Maven高级01:POM深入了解

文章目录 一、POM的四个层次超级POM父POM当前POM有效POM(effective pom) 二、属性的声明和引用使用 mvn help:evaluate查看属性通过Maven访问系统属性1、访问Java系统属性2、访问系统属性4、访问系统环境变量5、访问project属性访问一级标签访问子标签访问标签列表 6、访问全局…

c++里 父类私有的虚函数,也是可以被子类重写和继承的。但父类私有的普通函数,子类无法直接使用

谢谢 。今天看课本上有这么个用法&#xff0c;特测试一下。这样就也可以放心的把父类的私有函数列为虚函数了&#xff0c;或者说把父类的虚函数作为私有函数了。 再补充一例&#xff1a;

2024-06月 | 维信金科 | 风控数据岗位推荐,高收入岗位来袭!

今日推荐岗位&#xff1a;策略分析经理/分析专家、贷前、中策略分析、风控模型分析。 风控部门是金融业务的核心部门&#xff0c;而从事风控行业的人即称之为风险管理者。是大脑&#xff0c;是最最最重要的部门之一。今日推荐岗位的核心技能分布如下&#xff1a; 简历发送方式…

如何使用ChatGPT辅助设计工作

文章目录 设计师如何使用ChatGPT提升工作效率&#xff1f;25个案例告诉你&#xff01;什么是 prompt&#xff1f;咨询信息型 prompt vs 执行任务 prompt编写出色 prompt 的基本思路撰写 prompt 的案例和技巧1、将 ChatGPT 视作专业人士2、使用 ChatGPT 创建表单3、使用 ChatGPT…

人工智能产品经理,行业巨头争夺的稀缺人才

前言 在当今这个由数据驱动的时代&#xff0c;人工智能&#xff08;AI&#xff09;正迅速成为推动各行各业创新的核心力量。随着行业巨头纷纷布局人工智能领域&#xff0c;对于专业人才的需求也日益增长。特别是人工智能产品经理这一岗位&#xff0c;缺口高达6.8万&#xff0c…

如何用Vue3打造一个引人注目的3D雷达图

本文由ScriptEcho平台提供技术支持 项目地址&#xff1a;传送门 ApexCharts 雷达图&#xff1a;可视化多系列数据 应用场景介绍 雷达图是一种可视化多变量数据的多边形图表&#xff0c;每个变量表示雷达图上的一条射线&#xff0c;射线的长度表示变量的值。雷达图广泛用于展…

【ajax核心01】ajax底层原理

一:XMLHttpRequest对象 节选自MDN网站 XMLHttpRequest&#xff08;XHR&#xff09;对象用于与服务器交互。通过 XMLHttpRequest 可以在不刷新页面的情况下请求特定 URL&#xff0c;获取数据。这允许网页在不影响用户操作的情况下&#xff0c;更新页面的局部内容。XMLHttpReque…

东芝-Soft Limit 报警及其解决办法

灵感来源与生活,在生活中总能有意想不到的惊喜,下面来看看小编今天的惊喜!!! 今天不知道怎么了,有人来找就说是机器人坏了,一直报警,重启关机回原点也没有用。 意外到来,只能使用手柄将控制器打手动,来看看报警显示什么。 下面就看到了这,我靠第一次看见,只能看看手…

JavaWeb之JSON、AJAX

JSON 什么是JSON&#xff1a;JSON: JavaScript Object Notation JS对象简谱 , 是一种轻量级的数据交换格式(JavaScript提供) 特点 [{"name":"周珍珍", "age":18},{"name":"李淑文","age":20}]数据是以键值对形式…

后端不提供文件流接口,前台js使用a标签实现当前表格数据(数组非blob数据)下载成Excel

前言&#xff1a;开发过程中遇到的一些业务场景&#xff0c;如果第三方不让使用&#xff0c;后端不提供接口&#xff0c;就只能拿到table数据(Array)&#xff0c;实现excel文件下载。 废话不多说&#xff0c;直接上代码&#xff0c;方法后续自行封装即可&#xff1a; functio…

微观时空结构和虚数单位的关系

回顾虚数单位的定义&#xff0c; 其中我们把称为周期&#xff08;的绝大部分&#xff09;&#xff0c;称为微分&#xff0c;0称为原点或者起点&#xff08;意味着新周期的开始&#xff09;&#xff0c;由此我们用序数的概念反过来构建了基数的概念。 周期和单位显然具有倍数关…

在Maven工程中手动配置并测试SpringBoot(巨详)

本篇博客承继自博客&#xff1a; 在IDEA 2024.1.3 (Community Edition)中创建Maven项目_idea2024.1.3如何创建maven项目-CSDN博客 配置POM文件 打开工程中的pom.xml文件&#xff0c;先向其中写入 <parent><groupId>org.springframework.boot</groupId><…

大厂的 404 页面都长啥样?看到最后一个,我笑了~

每天浏览各大网站&#xff0c;难免会碰到404页面啊。你注意过404页面么&#xff1f;猿妹搜罗来了下面这些知名网站的404页面&#xff0c;以供大家欣赏&#xff0c;看看哪个网站更有创意&#xff1a; 腾讯 网易 淘宝 百度 新浪微博 新浪 京东 优酷 腾讯视频 搜狐 携程 去哪儿 今…

深度解析RocketMq源码-持久化组件(四) CommitLog

1.绪论 commitLog是rocketmq存储的核心&#xff0c;前面我们介绍了mappedfile、mappedfilequeue、刷盘策略&#xff0c;其实commitlog的核心组件我们基本上已经介绍完成。 2.commitLog的组成 commitLog的核心其实就是MqppedFilequeue&#xff0c;它本质上就是多个mappedFile…

web中间件漏洞-weblogic漏洞-弱口令war包上传

web中间件漏洞-weblogic漏洞-弱口令war包上传 弱口令war包上传 制作war包 jar cvf ma.war.(最后的.代表打包当前目录) 弱口令weblogic/weblogic123 点击部署后、一直点击下一步 访问webshell

传输大文件之镭速自动清理过期文件

电子文档的普及无疑极大地便利了我们的工作与生活&#xff0c;但随之而来的是如何有效管理这些日益增多的文件。企业面临着存储空间紧张、文件传输复杂、敏感信息泄露等挑战。自动化文件清理的需求日益凸显&#xff0c;这不仅关乎个人对高效工作环境的追求&#xff0c;更是企业…

Centos7安装自动化运维Ansible

自动化运维Devops-Ansible Ansible是新出现的自动化运维工具&#xff0c;基于Python 开发&#xff0c;集合了众多运维工具&#xff08;puppet 、cfengine、chef、func、fabric&#xff09;的优点&#xff0c;实现了批量系统配置 、批量程序部署、批量运行命令 等功能。Ansible…

【02】区块链技术应用

区块链在金融、能源、医疗、贸易、支付结算、证券等众多领域有着广泛的应用&#xff0c;但是金融依旧是区块链最大且最为重要的应用领域。 1. 区块链技术在金融领域的应用 1.2 概况 自2019年以来&#xff0c;国家互联网信息办公室已发布八批境内区块链信息服务案例清单&#…

Java8 --- Gradle安装及测试使用

目录 一、Gradle 1.1、简介 1.2、安装 1.2.1、注意事项 1.2.2、安装流程 1.2.3、配置共享仓库 1.3、构建项目 1.4、常用指令 1.4.1、gradle classes 1.4.2、gradle clean 1.4.3、gradle test 1.4.4、gradle build 1.5、修改Maven下载源 1.6、Wrapper包装器 1.…