保研面试408复习 3——操作系统

文章目录

  • 1、操作系统
    • 一、进程有哪几种状态,状态之间的转换、
    • 二、调度策略
      • a.处理机调度分为三级:
      • b.调度算法

标记文字记忆,加粗文字注意,普通文字理解。

为什么越写越少?
问就是在打瓦。(bushi)

1、操作系统

一、进程有哪几种状态,状态之间的转换、

在这里插入图片描述

  • 就绪态:进程获得了除处理机外的一切所需资源,一旦得到处理机,便可立即运行。
    • 就绪队列
  • 运行态:进程正在处理机上运行。
    • 只有就绪状态的进程才能被调度程序选中。
  • 阻塞态:阻塞态,又称等待态。进程正在等待某一事件而暂停运行,如等待某资源为可用(不包括处理机)或等待输入/输出完成。即使处理机空闲,该进程也不能运行。
    • 阻塞队列

一个进程从运行态变成阻塞态是主动的行为(比如进程运行时申请某一资源,但是资源不够等待释放,进程主动调用阻塞Block原语进入阻塞态)。从阻塞态变成就绪态是被动的行为,需要与之合作的或其他相关的进程中调用一条相应的Wakeup原语唤醒进程(比如资源得到释放,所需的资源有了,则进程已经具备了除了CPU外的一切所需资源,进入就绪态)。

运行态到就绪态,就绪态到运行态是通过调度器完成的。

进程控制包括:

  • 进程的创建
  • 进程的终止
  • 进程的阻塞和唤醒

这都是在核心态下完成的,在执行期间不允许中断。

二、调度策略

a.处理机调度分为三级:

  • 高级调度(作业调度
    • 在外存上处于后备队列的作业中挑选一个(或多个),给它们分配内存等必要资源,并建立相应的进程,以使它获得竞争处理机的权利。
  • 中级调度(内存调度
    • 将暂时不能运行的进程调至外存等待,此时进程的状态称为挂起态
  • 低级调度(进程调度
    • 分配处理机

b.调度算法

调度算法适用的不止进程调度。

  • 先到先服务调度算法(FCFS)
    • 不可剥夺算法
  • 最短作业有限调度算法(SJF)
  • 优先级调度算法
  • 时间片轮转调度算法
    • 可剥夺算法
  • 多级反馈队列调度算法
    • 结合前几种算法的有点是时间片轮转 和 优先级调度算法的综合与发展。
    • 设置多级就绪队列,优先级逐个降低;第i+1级队列的时间片比第i级队列的时间片长1倍。每个队列先到先服务,优先调度第i级队列,只有第i级为空,才调度第i+1级。

在这里插入图片描述

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

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

相关文章

TC3xx MTU概述(2)

目录 1.概述 2.如何配置NDT 3.小结 1.概述 上篇TC3xx MTU概述(1)-CSDN博客我们讲解了MTU基本功能和MBIST基本概念,接下来我们继续讲解MTU如何配置NDT算法。 2.如何配置NDT 前面聊了那么多概念,我们还是来看看如何配置MTU来实现NDT。 MTU寄存器分为…

从固定到可变:利用Deformable Attention提升模型能力

1. 引言 本文将深入探讨注意力机制的内部细节,这是了解机器如何选择和处理信息的基础。但这还不是全部,我们还将探讨可变形注意力的创新理念,这是一种将适应性放在首位的动态方法。 闲话少说,我们直接开始吧! 2. 注…

模板初阶篇

本篇目标 泛型编程函数模板类模板 一、泛型编程 下面是实现一个通用的交换函数 void Swap(int& left, int& right) {int temp left;left right;right temp; } void Swap(double& left, double& right) {double temp left;left right;right temp; } v…

SpringBoot整合rabbitmq使用案例

RocketMQ(二十四)整合SpringBoot SpringBoot整合rabbitmq使用案例 一 SpringBoot整合RocketMQ实现消息发送和接收消息生产者1)添加依赖2)配置文件3)启动类4)测试类 消息消费者1)添加依赖2&…

软件测试,软件评测师

如果你想考软件评测师证书,那这篇文章可以帮你少走很多弯路,估计你用别人一半的时间备考就可以通过考试,以下为本人亲身经验哈,你可以先收藏后看哦,提前祝你考试过过过。 如果以后想从事一份软件测试工程师的工作&…

【算法系列】链表

目录 常用技巧 常用操作 leetcode/牛客题目 一、移除链表元素 二、反转链表 三、链表的中间结点 四、返回倒数第k个节点 五、合并两个有序链表 六、链表分割 七、链表的回文结构 八、相交链表 九、环形链表 十、环形链表 II 十一、随机链表的复制 十二、两数相加…

淡茶怎么泡?

很多人都知道喝浓茶对身体不好,但是怎么冲泡淡茶却一知半解。按照《品深淡茶冲泡标准》中对绿茶冲泡淡茶的规定,冲泡的茶汤中咖啡碱不得高于31.67mg/100mL,可可碱不得高于2.67mg/mL,茶碱不得高于1.50mg/100mL,茶多酚不…

使用nginx部署Vue项目

前提是后端已经跨域! 下载nginx,在路径下使用cmd打开nginx,关闭nginx使用任务管理器details end task 把dist中的文件都放到html文件夹中 打开conf,找到nginx.conf,编辑以下内容 location就是刚才放dist文件的那个文…

ArthasGC日志GCeasy详解

Arthas详解 Arthas是阿里巴巴在2018年9月开源的Java诊断工具,支持JDK6,采用命令行交互模式,可以方便定位和诊断线上程序运行问题.Arthas官方文档十分详细.详见:官方文档 Arthas使用场景 Arthas使用 # github下载arthas wget https://alibaba.github.io/arthas/arthas-boot.j…

Go 语言 ORM 框架之 xorm

1、xorm 1.1、xorm 简介 xorm 是一个简单而强大的Go语言ORM库. 通过它可以使数据库操作非常简便。 特性 支持 struct 和数据库表之间的灵活映射,并支持自动同步事务支持同时支持原始SQL语句和ORM操作的混合执行使用连写来简化调用支持使用ID, In, Where, Limit,…

太速科技-FMC377_双AD9361 射频收发模块

FMC377_双AD9361 射频收发模块 FEATURES: ◆ Coverage from 70M ~ 6GHz RF ◆ Flexible rate 12 bit ADC/DAC ◆ Fully-coherent 4x4 MIMO capability, TDD/FDD ◆ RF ports: 50Ω Matched ◆ support both internal reference and exter…

怎么通过Java语言实现远程控制无人售货柜

怎么通过Java语言实现远程控制无人售货柜呢? 本文描述了使用Java语言调用HTTP接口,实现控制无人售货柜,独立控制售货柜、格子柜的柜门。 可选用产品:可根据实际场景需求,选择对应的规格 序号设备名称厂商1智能WiFi控…