操作系统系列学习——一个实际的schedule函数

文章目录

  • 前言
  • 一个实际的schedule函数


前言

一个本硕双非的小菜鸡,备战24年秋招,计划学习操作系统并完成6.0S81,加油!
本文总结自B站【哈工大】操作系统 李治军(全32讲)
老师课程讲的非常好,感谢
【哈工大】操作系统 李治军(全32讲)

一个实际的schedule函数

在这里插入图片描述
基于counter(时间片)轮转与优先级

当就绪态进程counter都用完了,就要执行所有进程counter右移一位(/2)
如果是就绪态进程:设置成了counter初值
如果是其他进程:counter折了一半再加上初值。将来一旦阻塞态进程要变成就绪的时候,他的counter一定比就绪态大
所以IO阻塞过的进程,再回来counter一定大(导致执行io那些进程回来以后它的优先级会上来)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
每次时钟中断就要修改counter, - -让counter等于0,等于0就切换

counter承担时间片和优先级任务

io时间越长,在阻塞队列中待得越久,优先级越大(IO约束级进程)

除二为了收敛

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

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

相关文章

Java后端面试经验分享,~纯分享

本文将从面试、工作、学习三个方面分享最近面试的一些心得以及以后发展的一些规划,仅供参考,哈哈,毕竟本人也很菜,因为菜才要多学习。一会儿也会分享两本Java面试题库(题库是b站大学找的,一会儿我也会分享出…

如何将Git拉取项目后,将SSH验证方式修改为HTTPS?

首先在打开项目所在位置的Git BashGUI 查找当前的远程仓库URL: 打开终端或命令提示符,导航到你的项目目录,并使用以下命令查看当前配置的远程仓库URL: git remote -v这会显示如下格式的输出: origin gitgithub.com:用…

python自动化之pytest框架以及数据驱动(第五天)

1.pytest框架需要遵循的规则 (1).py 测试文件必须以test 开头(或者以 test结尾) (2)测试类必须以Test开头,并且不能有 init 方法 (3)测试方法必须以test 开头 (4)断言…

电大搜题:开启学习新时代

身处信息化时代,学习的方式已经发生了巨大的变革。在这个多元化的学习环境中,传统的学习模式已经无法满足现代学习者的需求。然而,电大搜题应运而生,为学习者提供了一个高效、便捷的学习途径。 电大搜题,作为黑龙江开…

Java课程实验—作业二

题目一 代码 import java.util.*;public class Main {public static void main(String[] args){Scanner inputnew Scanner(System.in);String strinput.nextLine();//nextLine()方法遇到回车结束输入,next()遇到空格int[]anew int[10];//用来计数a[0]-1;for(int i0…

Java复习01 集合概念

Java复习01 集合 在Java中,集合(Collections)是一种用来存储一组对象的结构。想象一下有一个装东西的箱子,这个箱子可以装很多不同类型的东西,例如书、DVD或者玩具。Java的集合也是这样,但是它专门用来装载…

更安全的C gets()和str* 以及fgets和strcspn的用法

#include <stdio.h>int main() {char *str;gets(str);puts(str);return(0); }可以说全是错误 首先char *str没有指向一个分配好的地址&#xff0c;就直接读入&#xff0c;危险 ps: 怎么理解char *str "Hello World" 是将一个存储在一个只读的数据段中字符串常…

java算法第25天 | ● 216.组合总和III ● 17.电话号码的字母组合

这两道题都是基于回溯的基本问题。 216.组合总和III 这道题是77.组合问题的变体&#xff0c;只不过终止条件多了一个和等于n。 class Solution {List<List<Integer>> resnew ArrayList<>();List<Integer> pathnew ArrayList<>();public List&l…

c++算法学习笔记 (8) 树与图部分

1.树与图的存储 &#xff08;1&#xff09;邻接矩阵 &#xff08;2&#xff09;邻接表 // 链式前向星模板&#xff08;数组模拟&#xff09; #include <iostream> #include <cstring> #include <algorithm> using namespace std; const int N 100010, M …

ABC345(A-C)

A - Leftrightarrow(100 points) 语法题&#xff0c;输入一个字符串&#xff0c;判断是否是&#xff1a;的样式&#xff0c;输入后只需判断是第一个和最后一个字符是否分别为">"和"<",再判断中间是否都是""即可。 #include<bits/stdc…

pta上的几个例题

c语言中的小小白-CSDN博客c语言中的小小白关注算法,c,c语言,贪心算法,链表,mysql,动态规划,后端,线性回归,数据结构,排序算法领域.https://blog.csdn.net/bhbcdxb123?spm1001.2014.3001.5343 给大家分享一句我很喜欢我话&#xff1a; 知不足而奋进&#xff0c;望远山而前行&am…

双向SSM: Vision Mamba Encoder

文章目录 Vision Mamba Encoder初始化输入映射序列变换参数映射BC参数映射delta参数映射 SSM参数初始化A , D矩阵初始化delta参数初始化 双向SSM初始化参数初始化 前向输入映射fast_pathuse_fast_pathno use_fast_path 双向SSMv1前向后向 v2前向后向 Vision Mamba Encoder Vis…

解决游戏程序一运行就退出的问题

正文&#xff1a; 在游戏开发过程中&#xff0c;我们可能会遇到程序一运行就立即退出的情况。这种情况通常是由于程序中的某些逻辑错误或初始化问题导致的。 下面我们将分析可能的原因&#xff0c;并提供一些解决方案。 目录 正文&#xff1a; 原因分析&#xff1a; 解决方案…

AI健身教练-引体向上-俯卧撑计数-仰卧起坐姿态估计-康复训练姿态识别-姿态矫正

在AI健身应用中&#xff0c;通过关键点检测技术可以实现对用户动作的精准捕捉和分析&#xff0c;从而进行统计计数和规范性姿态识别。 统计计数&#xff1a;比如在做瑜伽、健身操等运动时&#xff0c;系统可以通过对人体关键点&#xff08;如手部、脚部、关节等&#xff09;的…

关于工业机器人的四大保养事项

工业机器人的保养周期和注意事项会根据具体机器人的型号、使用环境和工作负荷等因素而有所不同。一般来说&#xff0c;以下是一些常见的保养周期和注意事项&#xff1a; 工业机器人保养注意事项如下&#xff1a; 一、常规保养 1.清洁与除尘&#xff1a;定期清洁机器人的外壳、…

前端之CSS 创建css--行内引入、内联样式、外联样式

创建css有三种创建样式&#xff0c;行内引入、内联引入、外联引入。 行内引入 在行内标签引入 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>行内样式</title> </head> <body>…

深度学习入门基于python的理论与实现-第四章神经网络的学习(个人向笔记)

文章目录 从数据中学习损失函数均方误差(MSE)交叉熵误差mini_batch学习mini_batch版交叉熵误差的实现 梯度概念梯度法神经网络的梯度 从数据中学习 神经网络的"学习"的学习是指从训练数据自动获取最有权重参数的过程。 神经网络的特征就是可以从数据中学习即由数据自…

C++ 优先级队列(大小根堆)OJ

目录 1、 1046. 最后一块石头的重量 2、 703. 数据流中的第 K 大元素 为什么小根堆可以解决TopK问题&#xff1f; 3、 692. 前K个高频单词 4、 295. 数据流的中位数 1、 1046. 最后一块石头的重量 思路&#xff1a;根据示例发现可以用大根堆(降序)模拟这个过程。 class So…

Hack The Box-Jab

目录 信息收集 nmap enum4linux 服务信息收集 Pidgin kerbrute hashcat 反弹shell & get user 提权 系统信息收集 端口转发 漏洞利用 get root 信息收集 nmap 端口探测┌──(root㉿ru)-[~/kali/hackthebox] └─# nmap -p- 10.10.11.4 --min-rate 10000 -oA…

Linux服务器(Debian系)包含UOS安全相关巡检shell脚本

#!/bin/bash# Define output file current_date$(date "%Y%m%d") # Gets the current date in YYYYMMDD format output_file"server_security_inspection_report_${current_date}.txt"# Empty the file initially echo > $output_file# 获取巡检时间 (…