今年十八,期末速刷(操作系统篇1)

news2024/9/8 23:42:58

马上期末了,想问问各位期末考几科

我家学校网安考7科呜呜呜

只能出点文章一把梭了。。。

争取只挂一科

 

先来先算法(FCFS)

算法思想

我今天学FCFS只有一个要求

公平、公平

还是tnd公平

算法规则

按照进程的先后顺序来进行服务。

是否会导致饥饿

不会(下面有解释)

是否可抢占

是非抢占式算法

个人理解

怎么说呢。。。

我个人的理解,就是食堂打饭。你先来,我就给你盛饭,不管你要多少菜,我都给你。

就算给你打饭需要1个小时,给别人打饭需要1秒,我也给你打,因为你是先来的。


不过这个打饭很有意思,我在看这个算法时有个疑问,就是:

明明我需要等前一个人打完饭我才可以打饭,那为什么我不会被饿死(导致饥饿)

当然放在现实里有点荒谬,不过注意,“饥饿”在算法里是这样解释的:

 在操作系统中,饥饿问题是指由于高优先级请求的不断涌入导致低优先级进程长时间被停滞,无法获得处理器或资源。通常情况下,当一个任务被无限期地推迟时,就会出现饥饿问题。操作系统需要以下资源来响应进程请求

什么意思捏,是指我去排队打饭,马上快到我的时候,一群牛马过来亲切地问我:同学我可以站在你前面嘛

好好好

然后我就被饿死了。(bushi

那为什么在FCFS中不会出现这种情况呢,是因为他有一个规则,即:

优先处理等待时间长的任务

什么意思?

等待时间长,就说明来得早。先来先算法顾名思义

优缺点

  • 优点:算法简单、公平
  • 缺点:对长作业有利,对短作业不利

为啥?

劳资几秒的事,非得拖到最后一个处理?人多也就不说啥了,人少不就是明摆着恶心人嘛。

然后有几个算式哈,理解一下就可。

算法

周转时间(打饭花费时间)=完成时间(打完饭)-到达时间(开始排队)

平均周转时间(平均每个人打饭时间)=各作业周转时间之和(总共打饭时间) / 作业数(打饭人数)

 带权周转时间=作业周转时间 / 作业实际运行的时间=(作业完成时间-作业提交时间)/ 作业实际运行的时间(编不下去了,自己理解吧qwq)

题目来自 _hacknet原创文章

最后一个进程是p4哈

周转时间=运行时间-到达时间

p1=7-0

p2=4-2........

仔细想想,这么写是不是错了

p2必须等p1打完饭才能开始打饭,所以从它到食堂开始排队到开始打饭等了多长时间?

p2等待时间:7-2=5

p2打饭时间:4

p2一共花费时间:5+4=9

那它的带权周转时间呢

根据公式:作业周转时间/作业实际运行时间

什么叫实际运行时间?

我去食堂为了干啥,打饭捏。那我排队能拿到一粒米吗?不能

所以实际运行时间即运行时间即开始打饭时间。一个意思,别问我为啥强调,问就是忘了。。。

所以:

周转时间/实际运行时间=9/4=2.25

剩下几个平均的整体算出来加一下除一下就行了,咱把剩下几个p简单说说。

p3周转时间:

p3到食堂的时间是4,这个时候,p1还没打完饭,那还得等个3,等完3之后,p2说他先来的,还得等他打饭花费的一个4。

问题来了,p3等了多长时间?

3+4=7

那咱打饭要多长时间?

咱饭量小,一个1就够

那7+1=8

咱的周转时间就是8

剩下的不说了,开另一个算法

RR调度算法

RR调度算法,也称时间片轮转。

算法思想

公平、平均(个人理解)

算法规则

按照各进程到达就绪队列的顺序,轮流让各个进程执行一个时间片(如100ms)。若进程未在一个时间片内执行完,则剥夺处理机,将进程重新放到就绪队列队尾重新排队。

是否会导致饥饿

不会(下面有解释)

是否可抢占

是抢占式算法

优缺点

优点:公平:响应快,适用于分时操作系统:
缺点:由于高频率的进程切换,因此有一定开销;不区分

不难,打个比方

我是一名班主任,带学生去做植树

分别有A,B,C,D,E,F六名学生,地面是这样的

这里只是画了部分树,还有很多树要被种

我选择按一排一排的形式植树。

啥意思捏,

每个人都有一个自己的任务进度,完不成一个任务进度禁止回家。而且每个人的任务进度都不一样,有人要种一个,有人要种两个

我先让6个人中的三个人去植树,给他们设个时间,好比是10分钟一次,等10分钟结束,不管他种没种完,都下来歇着。

如果,他种完了自己的任务进度,他直接放学回家。

如果,他没种完自己的任务进度,换另一个人种。

双人合作种一个树任务进度分开算。

那开始思考一下:

我是A,我先种了10分钟,可我没有种完,换B上来,B的手脚很麻利,种了5分钟就种完自己的任务进度回家了。

我就直接上去接着种我自己的任务进度,这就是抢占式。

如果是非抢占式,我就要等属于B的十分钟过完才能接着种。

那再想想,如果有15个学生,每列分到5名学生种树,这时候如果我在规定的十分钟之内没种完,我就只能排在队伍的后面重新等待了呜呜呜

看习题

图片来自 Devour123原创文章

没啥好讲的吧

周转时间是完成时间-到达时间

带权是周转/服务时间

如果就绪队列有 n 个进程,并且时间片为 q,那么每个进程会得到 1/n 的 CPU 时间,而且每次分得的时间不超过 q 个时间单元。每个进程等待获得下一个 CPU 时间片的时间不会超过 (n-1)q 个时间单元。例如,如果有 5 个进程,并且时间片为 20ms,那么每个进程每 100ms 会得到不超过 20ms 的时间。

 再来一个例题:

 由图可知,q=4,p1>q,p2,3<q,

开始p1先走4,余24-4=20,排至进程最后

接着CPU被p2抢占,p2<q,所以运行3后退出,CPU被p3抢占,p3<q,同样运行3后退出。

接着运行p1,20-4=16,排至就绪队列最后,但因就绪队列只剩p1,所以继续执行p1,16-4,12-4以此类推

SJF短作业优先

看这个名感觉就不用我说啥了

算法思想

追求最少的平均等待时间、最少的平均周转时间和平均带权周转时间。

不公平呜呜呜

算法规则

最短的作业/进程 优先得到服务。

是否可抢占

非抢占式

是否会导致饥饿

会,如果有源源不断的短作业到来,可能使长作业长时间得不到服务。

优缺点

优点:“最短的“平均等待时间、平均周转时间

缺点:不公平,对短作业有利,对长作业不利

例题

题目来自 四月天行健原创文章

 运行顺序,因为不公平先说一嘴

p1->p3->p2->p4

为啥p3不在p1前面,因为p1开始跑的时候p3还没进来

所以

周转时间:

p1=7-0

p3=7+1-4

p2=7+4+1-2

带权周转时间 = 周转时间 / 运行时间:没啥说的

等待时间 = 周转时间 - 运行时间也没啥说的

先发一篇,晚上接着写

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

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

相关文章

Web自动化测试:WebDriverWait元素等待和全局设置

由于现在部分web应用加载方式的选择&#xff0c;页面会需要一定时间逐渐加载完毕&#xff0c;也就是说有的页面元素先加载出来&#xff0c;有的元素后加载出来。如果直接定位所查找的元素的话&#xff0c;可能会由于此元素尚未加载完毕找不到元素从而报错&#xff0c;由于网络不…

leetcode 647.回文子串

题目描述 给你一个字符串 s &#xff0c;请你统计并返回这个字符串中 回文子串 的数目。 回文字符串 是正着读和倒过来读一样的字符串。 子字符串 是字符串中的由连续字符组成的一个序列。 具有不同开始位置或结束位置的子串&#xff0c;即使是由相同的字符组成&#xff0c;也会…

【干货】有效的项目绩效管理评估,能成为组织成长的引擎

是谁已经开始在写年中总结了&#xff1f; 对于这件事&#xff0c;项目经理们肯定不会缺席&#xff0c;毕竟每周、每月、每个季度都少不了项目报告。这两天项目经理小刘&#xff0c;还在办公室吐槽项目绩效的数据实在太差了&#xff0c;询问如何能巧妙美化数据&#xff0c;这是…

算法学习day20

文章目录 513.找树左下角的值递归迭代 112 .路径总和递归迭代 113.路径总和II递归 106.从中序与后序遍历序列构造二叉树递归 105.从前序与中序遍历序列构造二叉树卡尔递归版本递归优化 总结 513.找树左下角的值 给定一个二叉树的 根节点 root&#xff0c;请找出该二叉树的 最底…

K8S从入门到精通之基本组件介绍

文章目录 0.前言k8s 的dashboard基本组件活动图 1. 基本概念1.1. kube-apiserver1.2. etcd1.3. kube-scheduler1.4. kube-controller-manager1.5. kubelet1.6. kube-proxy1.7. coredns&#xff1a;1.8. Container Runtime1.9. Ingress Controller1.10. Storage Plugin1.11. Das…

原点安全携“金融机构消费者个人信息保护解决方案”亮相 2023 中国金融数字化转型发展大会

6 月 7 日&#xff0c;由中国金融电子化集团有限公司、南京市建邺区人民政府、中国人民银行南京分行主办&#xff0c;主题为“数驱转型 智创未来”的「2023 中国金融数字化转型发展大会暨第十三届中国城市商业银行信息化发展创新座谈会」于南京国际博览中心隆重召开。 本次会议…

使用POI实现JAVA操作Excel

Apache POI POI提供API给JAVA程序对Microsoft Office格式档案读和写的功能 POI工具介绍 POI 是用Java编写的免费开源的跨平台的 Java API&#xff0c;Apache POI提供API给Java程式对Microsoft Office格式档案读和写的功能。主要是运用其中读取和输出excel的功能。 POI官网地…

每日一练 | 华为认证真题练习Day57

1、两台路由器通过PPP链路互连&#xff0c;管理员在两台路由器上配置了OSPF&#xff0c;且运行在同一个区域中&#xff0c;如果它们的Router ID相同&#xff0c;则下面描述正确的&#xff08;&#xff09;。 A. 两台路由器将会建立正常的完全邻居关系 B. 两台路由器将不会互相…

看看苹果如何平衡Vision Pro性能和功耗

众所周知&#xff0c;Quest 2极为严格的控制SoC运行频率&#xff0c;目的就是保证整机的“散热性能”&#xff0c;说白了就是发热不能严重、风扇噪音不能大。这也是VR头戴设备中降低用户体验的两个关键指标。 对于Quest 2很直接的一个优势就是&#xff0c;用户大多时候听不到狂…

Javaweb学习路线(3)——SpringBoot入门、HTTP协议与Tomcat服务器

一、SpringBoot入门 &#xff08;一&#xff09;第一个Springboot案例 1、创建Springboot工程&#xff0c;添加依赖。 2、定义类&#xff0c;添加方法并添加注释 3、运行测试。 pom.xml&#xff08;框架自动生成&#xff09; <?xml version"1.0" encoding&quo…

linux上安装es、Kibana、ik分词

基本概念 ES是什么&#xff1f;我们可以把ES比作一个Mysql数据库&#xff0c;同样用来存储数据&#xff0c;不过比Mysql提供了更多的搜索功能,例如分词搜索&#xff0c;关联度搜索等&#xff0c;而且搜索速度也不是同一级别的&#xff0c; ES能够实现百万数据/秒的查询速度。接…

【Java|golang】1171. 从链表中删去总和值为零的连续节点

给你一个链表的头节点 head&#xff0c;请你编写代码&#xff0c;反复删去链表中由 总和 值为 0 的连续节点组成的序列&#xff0c;直到不存在这样的序列为止。 删除完毕后&#xff0c;请你返回最终结果链表的头节点。 你可以返回任何满足题目要求的答案。 &#xff08;注意…

Linux内核中内存管理相关配置项的详细解析9

接前一篇文章&#xff1a;Linux内核中内存管理相关配置项的详细解析8 十三、Enable recovery from hardware memory errors 对应配置变量为&#xff1a;CONFIG_MEMORY_FAILURE。 此项只有选中和不选中两种状态&#xff0c;默认为选中。 内核源码详细解释为&#xff1a; Enab…

HTML5 input元素新的特性

在HTML5中&#xff0c;<input>元素增加了许多新的属性、方法及控件。本文章分别对这三方面进行介绍。 目录 1. 属性 2. 方法 3. 新控件 1. 属性 <input>元素在HTML5中新增加的属性有&#xff1a;autocomplete 、autofocus、form、formaction、formenctype、f…

人工智能网站KameAI

人工智能网站KameAI 前言 人工智能的崛起与发展随着科技的飞速发展&#xff0c;人工智能(AI)已经逐渐成为我们生活中不可或缺的一部分。它的出现不仅改变了我们与世界的互动方式&#xff0c;还为各行各业带来巨大的便利。今天&#xff0c;我们就来聊一聊一个人工智能网站—Ka…

合并两个排序的链表

题目&#xff1a; 输入两个递增排序的链表&#xff0c;合并着两个链表并使新链表中的结点仍然是按照递增顺序的。例如输入的链表1和链表2如下&#xff0c;合并后的为链表3。链表的结点定义如下&#xff1a; struct ListNode {int value;ListNode *next; }; 复制 解题思路&…

APP性能测试,你需要关注哪些指标?

一、Android客户端性能测试常见指标 1、内存 2、CPU 3、流量 4、电量 5、启动速度 6、滑动速度、界面切换速度 7、与服务器交互的网络速度 二、预期标准指定原则 1、分析竞争对手的产品&#xff0c;所有指标要强于竞品 2、产品经理给出的预期性能指标数据 3、符合业…

Unity3D:Scene 视图导航

推荐&#xff1a;将 NSDT场景编辑器 加入你的3D工具链 3D工具集&#xff1a; NSDT简石数字孪生 Scene 视图导航 场景视图具有一组导航控件&#xff0c;可帮助您高效地四处移动&#xff1a; 场景视图辅助图标移动、旋转和缩放工具居中工具 场景视图辅助图标 场景辅助图标将显…