操作系统三级调度相关习题

填空题

  1. 微机是以(总线)为组带构成的计算机系统
  2. 在批处理兼分时系统中,往往把由分时系统控制的作业称为(前台)作业,把由批处理系统处理的作业称为(后台)作业
  3. 在分时系统中,若时间片长度一定,则(用户数越多),系统响应时间越慢
  4. 分布式操作系统能使系统中若干台计算机(协同)完成一个共同的任务,分解问题成为子计算并使之在系统中各台计算机上(并行执行),以充分利用各计算机的优势
  5. 用户通过网络操作系统可以(网络通信)、(资源共享),从而大大扩展了计算机的应用范围

CPU利用率相关计算题

1

有两个程序。
程序A依次使用CPU计10s,设备甲计5s,CPU计5s,设备乙计10s,CPU计10s
程序B依次使用设备甲计10s,CPU计10s,设备乙计5s,CPU计5s,设备乙计10s
问:在单道程序环境下先执行程序A再执行程序B,CPU的利用率是多少
此题并没有说明如果A,B请求使用CPU情况下,谁优先级高

画甘特图
![[Pasted image 20241107201003.png]]

分母是80,分子是10+5+10+10+5=40
单道程序环境下CPU利用率是50%
![[Pasted image 20241107201747.png]]

分母是45,分子是45-5=40
多道程序环境下CPU利用率是88.9%

2

设想一台电脑配备256KB的可用内存空间(未被OS占用的),一个磁盘,一个终端和一台打印机。三个程序JOB1,JOB2和JOB3,同时被提交运行

内容JOB1JOB2JOB3
作业类型偏重计算偏重I/O偏重I/O
执行时间5min15min10min
所需内存50KB100KB80KB
是否需要磁盘NoNoYes
是否需要终端NoYesNo
是否需要打印机NoNoYes

50+100+80=230,三个程序可以同时被放入内存当中

完成以下表格

单道程序设计多道程序设计
处理机利用率1733
内存利用率3367
磁盘利用率3367
打印机利用率3367
经过时间3015
吞吐量612
平均周转时间18.310
  1. 单道情况下
    ![[Pasted image 20241107215048.png]]

CPU利用率:5/30x100%=17%
内存利用率:5x50K+15x100K+10x80K/30x256 x 100%=33%
磁盘利用率:(10x80K)/((5+15+10)x80K) x 100%=33%
打印机利用率:10/30x100%=33%
经过时间:30min
吞吐量:3/0.5h=6Jobs/h
周转时间:(5+20+30)/3=18.3

  1. 多道情况下
    ![[Pasted image 20241107215149.png]]

CPU利用率:5/15x100%=33%
内存利用率:5x230K+5x180K+5x100K/15x256 x 100%=67%
磁盘利用率:(10x80)/(15x80)x100%=67%
打印机利用率:10/15x100%=67%
经过时间:15min
吞吐量:3/0.25h=12Jobs/h
平均周转时间:(5+15+10)/3=10

3

2015

在一个多道批处理系统中,供用户使用的主存空间有100K,主存采用可变分区管理,并且已装入主存的作业不被移动,今有如表1所示仅作计算的作业序列
假设作业调度和进程调度均采用计算时间短的作业优先调度算法,当第一个作业进入输入井后就开始调度,并忽略系统开销的时间。
要求:

  1. 给出作业调度的次序
  2. 计算各作业的周转时间
  3. 计算平均作业周转时间
作业入输井时间需计算时间主存要求进入主存时间开始时间完成时间周转时间
19.0h0.5h15K
29.2h0.4h60K
39.3h0.3h40K
49.5h0.2h10K
59.6h0.1h15K

没有限制有多少道,只要能同时放入主存就可以
已装入主存的作业不被移动:除非作业完成,否则会一直在主存里面
当第一个作业进入输入井后就开始调度:
输入井在外存里边,说明进行作业调度

进入输入井的时间,就是作业提交的时间
9.0,1先进入井,运行到9.5,此时主存空间剩85
9.2,2后进入井,此时主存空间剩25
9.3,3进入不了井,主存空间不够
9.5,4进入井,主存空间剩15,此时1运行结束
之后是进程调度,2和4里面选一个时间短的开始运行,0.4>0.2,优先运行4,运行到9.7结束
9.6,5进入内存,主存空间剩0
9.7,2和5在内存当中,60>15,5先运行,运行到9.8结束
9.8,此时主存内还有2,主存内剩40,让2运行,运行到10.2
10.2,2运行完毕,主存剩100,3进入井,运行到10.5
在这里插入图片描述

周转时间:作业完成时间-作业提交时间
完成时间-输入井时间

作业入输井时间需计算时间主存要求进入主存时间开始时间完成时间周转时间
19.0h0.5h15K9.09.09.50.5
29.2h0.4h60K9.29.810.21.0
39.3h0.3h40K10.210.210.51.2
49.5h0.2h10K9.59.59.70.2
59.6h0.1h15K9.69.79.80.2

平均周转时间:(0.5+1+1.2+0.2+0.2) / 5 = 0.62
作业调度的次序就是进入主存的次序:12453

4

2016
在一个多道批处理系统中,有如下表格所示的作业序列,并且作业都是仅作计算的
假定当所有作业均进入输入井时立即开始作业调度,忽略系统管理的开销时间。
要求分别计算采用先来先服务算法和计算时间短的作业优先算法时,
这批作业的调度顺序和作业平均周转时间。

  1. 采用先来先服务算法时:
    ![[Pasted image 20241108122546.png]]

必须要所有作业都进入井里面,之后才能开始作业调度
![[Pasted image 20241108124501.png]]

周转时间=作业完成时间-作业提交时间(作业进入输入井的时间)

作业入输井时间需计算时间开始时间完成时间周转时间
18.0h1h8.69.61.6
28.2h0.5h9.610.11.9
38.4h0.2h10.110.31.9
48.6h0.6h10.310.92.3

作业平均周转时间
(1.6+1.9+1.9+2.3)/4=1.925
2. 短作业优先:

因为是多道批处理系统,到了8.6,四个作业同时进入内存
![[Pasted image 20241108122907.png]]

![[Pasted image 20241108123836.png]]

作业平均周转时间
(2.9+1.1+0.4+1.3)/4=1.425

作业入输井时间需计算时间开始时间完成时间周转时间
18.0h1h9.910.92.9
28.2h0.5h8.89.31.1
38.4h0.2h8.68.80.4
48.6h0.6h9.39.91.3
5

2017
在一个单道批处理系统中,有4个作业进入系统,进入输入井的时间及需计算时间如下面的表格所示。现忽略系统开销的时间,并规定8:00时当第一个作业进入输入井立即开始作业调度

采用先来先服务调度算法
![[Pasted image 20241109134239.png]]

作业入输井时间需计算时间开始时间完成时间周转时间
18:0060min8:009:001
28:3030min9:009:301
39:0012min9:309:420.7
49:306min9:429:480.3

平均周转时间:1+1+0.7+0.3=3 3/4=0.75

当采用计算时间短的作业优先调度算法时,先将各作业的开始时间,完成时间,周转时间,平均周转时间
![[Pasted image 20241109135110.png]]

作业入输井时间需计算时间开始时间完成时间周转时间
18:0060min8:009:001
28:3030min9:129:421.2
39:0012min9:009:120.2
49:306min9:429:480.3

平均周转时间:1+1.2+0.2+0.3=2.7 2.7/4=0.625

6

2019
一个具有两道作业的批处理系统,作业调度采用短作业优先的非抢先调度算法
进程调度采用优先数为基础的抢占式调度算法,在下表所示的作业序列中,作业优先数即为进程优先数,优先数越小优先级越高

作业名到达时间估计运行时间优先数
A10:0040min5
B10:2030min3
C10:3050min4
D10:5020min6

![[Pasted image 20241109141846.png]]

10:00,A先进入输入井,此时内存内只有A一道程序,获得处理机,运行
10:20,B进入输入井,进入内存,此时内存内有AB两道程序,进行进程调度,B的优先级比A高,B抢占处理机,进行运行
10:30,C进入输入井,此时内存里有两道程序,在后备队列中等待
10:50,D进入输入井,此时B运行完毕,后备队列中有C和D,D的运行时间比C短,先进入内存,此时内存里有AD两道程序,D的优先级比A小,A先运行
11:10,A运行完毕,C从后备队列进入内存,C的优先级比D高,获得处理机运行
12:00,C运行完毕,此时内存里只剩D一个程序,运行

作业入内存时间完成时间周转时间
A10:0011:1070
B10:2010:5030
C11:1012:0090
D10:5012:2090

平均周转时间:70+30+90+90=280 280/4=70

7

2020
有6个待运行的作业,各自预计运行时间为3,5,6,7,9,x,请问用什么调度算法能使作业的平均周转时间最短,并写出其执行次序

按照短作业优先的次序可以使平均周转时间最短,x值不定,

  1. x<=3,次序:x,3,5,6,7,9
  2. 3<x<=5,次序:3,x,5,6,7,9
  3. 5<x<=6,次序:3,5,x,6,7,9
  4. 6<x<=7,次序:3,5,6,x,7,9
  5. 7<x<=9,次序:3,5,6,7,x,9
  6. 9<=x,次序:3,5,6,7,9,x
8

2021
假设系统中有5个进程,它们的到达时间和服务时间见下表,忽略I/O以及其他开销时间,按时间片轮转(RR,时间片=1)调度算法进行CPU调度,请给出各个进程的完成时间,周转时间,带权周转时间和平均带权周转时间

进程到达时间服务时间
A03
B26
C44
D65
E82

![[Pasted image 20241109144312.png]]

进程到达时间服务时间完成时间周转时间带权周转时间
A03444/3=1.33
B26181616/6=2.67
C44171313/4=3.25
D65201414/5=2.8
E821577/2=3.5

平均周转时间 10.8
平均带权周转时间 2.71

简答题

![[Pasted image 20241108151039.png]]

就绪态->运行态:进程获得处理机资源
运行态->就绪态:当前进程的时间片用完或有更高优先级的进程到来被抢占
运行态->阻塞态:进程请求某一资源或等待某一事件发生
阻塞态->就绪态:进程等待的事件发生或进程请求的资源已分配好

  1. 阻塞态不能直接转变为运行态。当进程等待的事件发生后,应该先把进程状态转换为就绪态,进程通过进程调度和进程切换再转变为运行态。
  2. 就绪态不能直接转变为阻塞态。进程只有在运行的时候才会请求资源或等待事件。

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

STL 迭代器iteratior 详解

C的标准模板库&#xff08;STL&#xff09;中&#xff0c;迭代器是一种重要的工具&#xff0c;用于访问容器中的元素。 迭代器是一个变量&#xff0c;相当于容器和操纵容器的算法之间的中介。迭代器可以指向容器中的某个元素&#xff0c;通过迭代器就可以读写它指向的元素。从…

移门缓冲支架有什么作用?

移门缓冲支架是一种安装在滑动门上的装置&#xff0c;主要用于吸收门关闭时的冲击力&#xff0c;防止门突然停止时的震动&#xff0c;从而保护门体、轨道和墙体。移门缓冲支架不仅提升了门的使用体验&#xff0c;还增加了安全&#xff0c;延长了门的使用寿命。关于移门缓冲支架…

MATLAB大数计算工具箱及其用法

1. MATLAB大数工具箱Variable Precision Integer Arithmetic介绍 Variable Precision Integer Arithmetic是John DErrico 开发的大数运算工具箱&#xff0c;可以用完全任意大小的整数进行算术运算。支持vpi定义的数组和向量。 2.MATLAB代码 完整代码见: https://download.cs…

AI大模型如何重塑软件开发流程?

《AI大模型对软件开发流程的重塑&#xff1a;变革、优势、挑战与展望》 一、传统软件开发流程与模式&#xff08;一&#xff09;传统软件开发流程&#xff08;二&#xff09;传统软件开发模式面临的问题&#xff08;一&#xff09;AI在软件开发中的应用场景&#xff08;二&…

基于Python通过DOI下载文献(至简仅需2行代码)

文章目录 一、安装库二、导入库三、准备doi3.1 excel法3.1.1 检索数据3.1.2 导出excel 3.2 txt法3.3 列表or字符串法3.3.1 字符串3.3.2 列表 四、下载4.1 脚本4.2 下载成功4.3 已存在4.4 至于失败的 五、结果5.1 目标文件夹5.2 失败记录 一、安装库 pip install OAFuncs 二、导…

Git仓库

Git初始 概念 一个免费开源&#xff0c;分布式的代码版本控制系统&#xff0c;帮助开发团队维护代码 作用 记录代码内容&#xff0c;&#xff0c;切换代码版本&#xff0c;多人开发时高效合并代码内容 如何学&#xff1a; 个人本机使用&#xff1a;Git基础命令和概念 多…

excel常用技能

1.基础技能 1.1 下拉框设置 a. 选中需要设置的列或单元格&#xff0c;数据 ---》 数据验证 b.验证条件 ---> 序列&#xff08;多个值逗号隔开&#xff09; 2.函数 2.1 统计函数-count a.count(区域&#xff0c;区域&#xff0c;......) 统计数量&#xff0c;只针…

沙龙活动精彩回顾:攸信携手博格咨询,探索数智管理的奥秘

10月30日&#xff0c;一场聚焦数智管理的沙龙活动在热烈的氛围中圆满落幕。本次活动由攸信携手博格咨询共同举办&#xff0c;有幸邀请到了资深讲师书麟老师、攸信项目经理黄小容以及市场部经理高建成&#xff0c;他们共同为参会者带来了一场关于数智管理的知识盛宴。 01深入剖析…

17个工作必备的Python自动化代码

Python是一种流行的编程语言&#xff0c;以其简单性和可读性而闻名。因其能够提供大量的库和模块&#xff0c;它成为了自动化各种任务的绝佳选择。让我们进入自动化的世界&#xff0c;探索17个可以简化工作并节省时间精力的Python脚本。 1.自动化文件管理 1.1 对目录中的文件…

【IEEE/EI会议】第八届先进电子材料、计算机与软件工程国际学术会议(AEMCSE 2025)

会议通知 会议时间&#xff1a;2025年4月25-27日 会议地点&#xff1a;中国南京 会议官网&#xff1a;www.aemcse.org 会议简介 第八届先进电子材料、计算机与软件工程国际学术会议&#xff08;AEMCSE 2025&#xff09;由南京信息工程大学主办&#xff0c;将于2025年4月25日…

AndroidStudio-文本显示

一、设置文本的内容 1.方式&#xff1a; &#xff08;1&#xff09;在XML文件中通过属性&#xff1a;android:text设置文本 例如&#xff1a; <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.andr…

关于CountDownLatch失效问题

一、项目背景 这几天要开发一个类似支付宝那种年度账单统计的功能&#xff0c;就是到元旦后支付完会把用户这一年的消费情况从各个维度&#xff08;我们把这一个维度称作一个指标&#xff09;统计分析形成一张报告展示给用户。 这个功能实现用到了CountDownLatch。假如统计分析…

【含开题报告+文档+源码】基于SSM的物流管理系统设计与实现

开题报告 随着电子商务的迅猛发展和人们生活水平的提高&#xff0c;快递服务行业正经历着前所未有的增长。占航快递公司作为国内知名的快递企业之一&#xff0c;面临着巨大的机遇和挑战。传统的快递服务管理方式已经无法满足日益增长的业务需求&#xff0c;快递服务流程中的问…

【AtCoder】Beginner Contest 377-C.Avoid Knight Attack

Avoid Knight Attack 题目链接 Problem Statement There is a grid of N 2 N^2 N2 squares with N N N rows and N N N columns. Let ( i , j ) (i,j) (i,j) denote the square at the i i i-th row from the top ( 1 ≤ i ≤ N ) (1\leq i\leq N) (1≤i≤N) and j j…

sizeof和strlen区分,(好多例子)

sizeof算字节大小 带\0 strlen算字符串长度 \0之前

Javascript中如何实现函数缓存?函数缓存有哪些应用场景?

#一、是什么 函数缓存&#xff0c;就是将函数运算过的结果进行缓存 本质上就是用空间&#xff08;缓存存储&#xff09;换时间&#xff08;计算过程&#xff09; 常用于缓存数据计算结果和缓存对象 解释 const add (a,b) > ab; const calc memoize(add); // 函数缓存…

MATLAB实现智能水滴算法(Intelligent Water Drops Algorithm, IWDA)

1.智能水滴算法介绍 智能水滴算法&#xff08;Intelligent Water Drops Algorithm&#xff0c;IWDA&#xff09;是一种基于水滴特性的智能优化算法&#xff0c;它借鉴了水滴在自然界中的运动和形态变化规律&#xff0c;通过模拟水滴的形成、发展和消亡过程&#xff0c;实现问题…

(Go基础)Go的运行流程步骤与包的概念

1. 快速入门 所有的go开发&#xff0c;都必须存在并包含在某一个包内 .go 是go语言程序的后缀名 1.1 编译 通过使用 go build 命令对该go文件进行编译&#xff0c;生成.exe文件 1.2 运行 运行刚刚生成出来的test.exe文件既可&#xff0c;不过并不不是双击&#xff0c;而是在…

AI 写作(三)文本生成算法:创新与突破(3/10)

一、生成式与判别式模型&#xff1a;AI 写作的基石 &#xff08;一&#xff09;区别与特点 生成式模型和判别式模型在多个方面存在明显差异。在优化准则上&#xff0c;生成式模型致力于学习联合概率分布&#xff0c;而判别式模型则专注于建立输入数据和输出之间的关系&#xf…

ubuntu下使用pocketsphinx进行语音识别(包含交叉编译)

文章目录 前言一、pocketsphinx的介绍二、ubuntu下编译三、使用示例1.模型选择2.代码示例3.自定义字典 四、交叉编译总结 前言 由于工作需要语音识别的功能&#xff0c;环境是在linux arm版上&#xff0c;所以想先在ubuntu上跑起来看一看&#xff0c;就找了一下语音识别的开源…