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

2024-05-07 03:20

本文主要是介绍保研面试408复习 3——操作系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

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

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

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

1、操作系统

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

在这里插入图片描述

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

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

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

进程控制包括:

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

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

二、调度策略

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

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

b.调度算法

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

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

在这里插入图片描述

这篇关于保研面试408复习 3——操作系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/966176

相关文章

可视化实训复习篇章

前言: 今天,我们来学习seaborn库可视化,当然,这个建立在Matplotlib的基础上,话不多说,进入今天的正题吧!当然,这个是《python数据分析与应用》书中,大家有需求的可以参考这本书。 知识点: Matplotlib中有两套接口分别是pyplot和pyylab,即绘图时候主要导入的是Matplotlib库下的两个子模块(两个py文件)matplotlib.pyplot和matp

【Linux进阶】UNIX体系结构分解——操作系统,内核,shell

1.什么是操作系统? 从严格意义上说,可将操作系统定义为一种软件,它控制计算机硬件资源,提供程序运行环境。我们通常将这种软件称为内核(kerel),因为它相对较小,而且位于环境的核心。  从广义上说,操作系统包括了内核和一些其他软件,这些软件使得计算机能够发挥作用,并使计算机具有自己的特生。这里所说的其他软件包括系统实用程序(system utility)、应用程序、shell以及公用函数库等

Java面试八股之怎么通过Java程序判断JVM是32位还是64位

怎么通过Java程序判断JVM是32位还是64位 可以通过Java程序内部检查系统属性来判断当前运行的JVM是32位还是64位。以下是一个简单的方法: public class JvmBitCheck {public static void main(String[] args) {String arch = System.getProperty("os.arch");String dataM

【操作系统】信号Signal超详解|捕捉函数

🔥博客主页: 我要成为C++领域大神🎥系列专栏:【C++核心编程】 【计算机网络】 【Linux编程】 【操作系统】 ❤️感谢大家点赞👍收藏⭐评论✍️ 本博客致力于知识分享,与更多的人进行学习交流 ​ 如何触发信号 信号是Linux下的经典技术,一般操作系统利用信号杀死违规进程,典型进程干预手段,信号除了杀死进程外也可以挂起进程 kill -l 查看系统支持的信号

数据库期末复习知识点

A卷 1. 选择题(30') 2. 判断范式(10') 判断到第三范式 3. 程序填空(20') 4. 分析填空(15') 5. 写SQL(25') 5'一题 恶性 B卷 1. 单选(30') 2. 填空 (20') 3. 程序填空(20') 4. 写SQL(30') 知识点 第一章 数据库管理系统(DBMS)  主要功能 数据定义功能 (DDL, 数据定义语

复习2-20240624

vscode 使用 Javabean (封装性) public class Demo01 {/*1.原则 : 字母 数字 $ _ 中文 除了 这五个 其它都不可以2. 细则 : 数字 不能 开头%hbviunh &hfiureh )nhjrn 7487j -ni +hbiu tgf h

操作系统实训复习笔记(1)

目录 Linux vi/vim编辑器(简单) (1)vi/vim基本用法。 (2)vi/vim基础操作。 进程基础操作(简单) (1)fork()函数。 写文件系统函数(中等) ​编辑 (1)C语言读取文件。 (2)C语言写入文件。 1、write()函数。  读文件系统函数(简单) (1)read()函数。 作者本人的操作系统实训复习笔记 Linux

C++面试八股文:std::deque用过吗?

100编程书屋_孔夫子旧书网 某日二师兄参加XXX科技公司的C++工程师开发岗位第26面: 面试官:deque用过吗? 二师兄:说实话,很少用,基本没用过。 面试官:为什么? 二师兄:因为使用它的场景很少,大部分需要性能、且需要自动扩容的时候使用vector,需要随机插入和删除的时候可以使用list。 面试官:那你知道STL中的stack是如何实现的吗? 二师兄:默认情况下,stack使

【云计算 复习】第1节 云计算概述和 GFS + chunk

一、云计算概述 1.云计算的商业模式 (1)软件即服务(SaaS) 有些景区给游客提供烧烤场地,游客需要自己挖坑或者砌烧烤台,然后买肉、串串、烧烤。 (2)平台即服务(PaaS) 有些景区给游客提供烧烤场地,同时搭建好烧烤台,游客只需要自己带食材和调料、串串、烧烤。 (3)基础设施即服务(IaaS) 有些景区给游客提供烧烤场地,同时搭建好烧烤台,还有专门的厨师来烧烤,用户不需要关心前面的所有

Java面试八股之JVM参数-XX:+UseCompressedOops的作用

JVM参数-XX:+UseCompressedOops的作用 JVM参数-XX:+UseCompressedOops的作用是启用对象指针压缩(Ordinary Object Pointers compression)。这一特性主要应用于64位的Java虚拟机中,目的是为了减少内存使用。在传统的64位系统中,对象引用(即指针)通常占用8字节(64位),而大部分应用程序实际上并不需要如此大的地址空间