操作系统4小时速成:进程管理复习重点,进程,线程,处理机调度,进程同步,死锁

2023-11-14

操作系统4小时速成:进程管理复习重点,进程,线程,处理机调度,进程同步,死锁

2022找工作是学历、能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测开
测开的话,你就得学数据库,sql,oracle,尤其sql要学,当然,像很多金融企业、安全机构啥的,他们必须要用oracle数据库
这oracle比sql安全,强大多了,所以你需要学习,最重要的,你要是考网络警察公务员,这玩意你不会就别去报名了,耽误时间!
考网警特招必然要考操作系统,计算机网络,由于备考时间不长,你可能需要速成,我就想办法自学速成了,课程太长没法玩
在这里插入图片描述
操作系统系列文章:
【1】操作系统4小时速成:操作系统的基本概念,它是系统软件,管理处理机、存储器、io设备、文件,并发和共享是最基本特征,还有虚拟和异步
【2】操作系统4小时速成:操作系统发展和分类,运行环境:运行机制和内核,用户态非特权,核心态特权,中断技术,访管指令
【3】操作系统4小时速成:进程管理占考试40%,进程状态,组织,通信,线程拥有调度,进程拥有资源,进程和线程的区别
【4】操作系统4小时速成:处理机调度,调度方法,调度准则,典型的调度算法,响应比
【5】操作系统4小时速成:进程同步,临界资源,互斥,信号量的作用,死锁产生的四个条件,安全状态,银行家算法


操作系统进程管理复习重点——本文是上述45文章的复习,可以直接看45文章即可

在这里插入图片描述

进程与线程

传统的顺序活动
单道执行
在这里插入图片描述
多道并发执行——进程的基础
并行
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
分配存储空间,IO资源
调度处理器,先执行谁?

传统的进程——既能分配资源,也能调度

进程的组成:程序段,数据,进程控制块PCB

在这里插入图片描述
pcb数据结构,里面有一个pid
这是class的唯一id
标识符

PCB+程序段+数据data=进程映像=进程实体——静态static

运行过程叫进程——dynamic

进程的特征:并发和共享是最重要的特征

在这里插入图片描述
在这里插入图片描述

进程的状态与转换

在这里插入图片描述
创建–>就绪队列–>有了处理机,开始运行run
run可以去阻塞态,阻塞态只能去就绪态
run也可以到就绪态
如也可以到结束态

在这里插入图片描述
看图就知道
在这里插入图片描述
这图要熟悉

运行到阻塞是主动行为——自己要主动让出来
而阻塞到就绪是被动行为——需要别人搞它

在这里插入图片描述

进程的控制

在这里插入图片描述
在这里插入图片描述
申请pcb是核心

在这里插入图片描述
剥夺式停止

在这里插入图片描述
pid来标识即可,用队列queue搞它

在这里插入图片描述
os执行原语去搞定这事

在这里插入图片描述
在这里插入图片描述

进程的组织

在这里插入图片描述
在这里插入图片描述

进程通信

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
打电话即可
在这里插入图片描述
快递柜,丰巢柜就是【queue】
驿站

不是直接打电话给你
在这里插入图片描述
在这里插入图片描述
对讲机
你讲,我不能讲

线程,之后的进程与线程区别

在这里插入图片描述
线程是相对于进程来说的
现在专门负责资源的分配

而线程专门负责调度作业工作的
线程目前是调度的基本单元
进程是资源分配的基本单元

在这里插入图片描述
进程资源分配基本单元
线程是调度的基本单元哦

现在含义变了哦!!!
线程的吞吐率更高
在这里插入图片描述
在这里插入图片描述
更好的并发
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
用户态不需要os
核心态需要os
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

处理机裸机的调度

在这里插入图片描述
调度算法
你要会玩最基础的两种
一个是fifo
一个是sif

在这里插入图片描述
外存-内存-CPU

外层要作业调度
内存调到外存,中级调度
cpu分配是进程调度

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
时间片
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
要立马处理,需要剥夺

紧急情况下需要立马中断原来的进程

在这里插入图片描述
在这里插入图片描述
运行时间希望是100%

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这个表是需要自己去算的
在这里插入图片描述
在这里插入图片描述
你这鼠标不能老是转圈
否则很烦人
没耐心的

典型的调度算法

在这里插入图片描述
在这里插入图片描述
最简单的做法
easy

在这里插入图片描述
1先来,立马玩,8开始运行,等0s,很快完成
10s结束,那2可以玩了
周转时间是完成-提交
带权是周转/run

11s结束,3开始玩

11.5s结束,4开始玩
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
这个堆长作业来说,不好,它要等半天………………

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
适合于进程调度,舒服
在这里插入图片描述
在这里插入图片描述
相当于是带权周转时间?????

在这里插入图片描述
这貌似是北京汽车摇号那个策略
一方面随机
另一方面等待太久也可以有更大的机会来摇号
在这里插入图片描述
时间片轮番转
在这里插入图片描述
每个用户公平地用,时间片到了你别用了,我要用
轮转

啥时候占用?调度策略呗
在这里插入图片描述
在这里插入图片描述
优先级又分为剥夺,和非剥夺
所以不是绝对的

进程同步,是因为进程也是异步的

在这里插入图片描述
在这里插入图片描述
访问是互斥的
否则你同时修改不行的

在这里插入图片描述
在这里插入图片描述
因为异步制约,所以同步合作

在这里插入图片描述

你用完,我用
咱俩互斥的
在这里插入图片描述
不玩你就让出来
和去银行取钱一样
都是类比的
在这里插入图片描述
在这里插入图片描述
P等待
V干活
在这里插入图片描述
在这里插入图片描述
解决同步和互斥的问题

在这里插入图片描述
在这里插入图片描述
合作
互斥是不同占用

在这里插入图片描述
在这里插入图片描述
管程,扩展

阻塞–就绪,才能去run

死锁

在这里插入图片描述
就是因为互斥导致的
车辆AB
我占你,你占我,没法玩
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
死锁预防,防止死锁产生

在这里插入图片描述
在这里插入图片描述
预防是干条件
避免——想办法算法看看是否进入不安全状态
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
但浪费吧
在这里插入图片描述
在这里插入图片描述
需要计算,这个是要算题目的
银行家算法

安全状态:银行家算法

在这里插入图片描述
在这里插入图片描述
给p2 2台,剩余1台
释放后,剩下4+1=5台
这时候只有P1可以满足要求
给P1
剩余0台
释放之后剩余10+0=10台
满足P3
所以
P2,P1,P3就是安全状态的顺序

在这里插入图片描述

最大需求B-已分配A=D,这是你还需要的
可用资源K怎么说
D<=可用资源K

就能分配
在这里插入图片描述
这个老师讲得快,应该看小岳老师那个
没事,这里是复习,你看看就行

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
自己算,看来还是小岳更完美,刺激


总结

提示:重要经验:

1)
2)学好oracle,操作系统,计算机网络,即使经济寒冬,整个测开offer绝对不是问题!同时也是你考公网络警察的必经之路。
3)笔试求AC,可以不考虑空间复杂度,但是面试既要考虑时间复杂度最优,也要考虑空间复杂度最优。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

操作系统4小时速成:进程管理复习重点,进程,线程,处理机调度,进程同步,死锁 的相关文章

  • 终端连接控制(stty的编写)

    终端连接控制 stty的编写 一 背景 文件与目录在之前已经学习过了 文件中包含着数据 这些数据可以被读出 写入 也可以用以操作 但文件不仅仅是计算机唯一的数据来源 计算机的数据还可以来自于许多的外部设备 比如扫描仪 照相机 鼠标等输入设备
  • texlive支持中文的简单方法

    1 确保tex文件的编码方式是UTF 8 2 在文档开始处添加一行命令即可 即 usepackage UTF8 ctex 如下所示 documentclass article usepackage UTF8 ctex begin artic
  • 计算机网路基础 - 一些基本概念与网络结构

    1 基本概念 计算机网络 通信技术 计算机技术 是两项技术紧密结合的产物 通信系统的基础模型 计算机网络 是指将地理位置不同 具有独立功能的多台计算机及其外部设备 通过通信线路连接 在网络操作系统 网络管理软件及网络通信协议的管理和协调下
  • MySQL基础(非常全)

    MySQL基础 一 MySQL概述 1 什么是数据库 答 数据的仓库 如 在ATM的示例中我们创建了一个 db 目录 称其为数据库 2 什么是 MySQL Oracle SQLite Access MS SQL Server等 答 他们均是
  • System.getProperty用法

    转自 http blog darkmi com 2011 03 16 1666 html System getProperty 用于获取当前的系统属性 比如java版本 操作系统名称 区域 用户名等 这些属性一般由jvm自动获取 不能手工设
  • Win11微软账号登录不上?Win11登录Microsoft账户出错的解决方法

    Win11微软账号登录不上 近期有部分Win11用户反映在登录微软账号会出现一直转圈 无法登录的情况 这样导致部分功能都不能正常使用了 为此十分令人头疼 那么对于这一情况 有没有什么方法可以有效的解决呢 下面小编教给大家操作方法 大家可以去
  • unix环境高级编程——文件IO

    本期主题 unix环境高级编程 文件IO 文件IO 0 引言 1 文件描述符 2 IO编程中常用的API接口 1 open函数 2 close函数 3 read函数 4 write函数 5 lseek函数 3 函数sync fsync和fd
  • Linux网络安全-Zabbix入门(一)

    一 基本概念 1 监控目的 运行情况 提前发现问题 2 监控资源类别 公开 tcp udp 端口 私有 cpu 磁盘 监控一切需要监控的东西 只要能够想到 能够用命令实现的都能用来监控 如果想远程管理服务器就有远程管理卡 比如Dell id
  • Java堆的自动垂直缩放

    多年以来 java一直是贪婪的应用程序的同义词 这种类型的应用程序在晚上打开冰箱并吞噬所有可用资源 直到崩溃 该行为的主要原因是缺乏一种有效的方式来将操作系统在Java堆中分配且不再使用的内存交还给操作系统 However with the
  • 《一个操作系统的实现》读书笔记-- 第一章--最小的“操作系统”

    一 最简单的 操作系统 最最简单的 操作系统 就是一个最最简单的引导扇区 Boot Sector 虽然它不具有任何功能 但是它却能够直接在裸机上运行 不依赖其他软件 一个引导扇区是512个字节 并且以0xAA55为结束标识的扇区 下面就是那
  • 深入ftrace kprobe原理解析

    Linux krpobe调试技术是内核开发者专门为了编译跟踪内核函数执行状态所涉及的一种轻量级内核调试技术 利用kprobe技术 内核开发人员可以在内核的绝大多数指定函数中动态插入探测点来收集所需的调试状态信息而基本不影响内核原有的执行流程
  • 03LinuxC线程学习之线程共享和非共享

    1 线程共享和非共享 1 1 线程共享资源 1 文件描述符表 由于线程间共享进程间的内容 而文件描述符表在主线程的PCB当中 各个线程可以直接去请求访问 所以线程间通信就不需要像进程那样通过管道这些方式通信 2 每种信号的处理方式 即当某个
  • 通过源码包*.src.rpm定制开发rpm

    为什么80 的码农都做不了架构师 gt gt gt 1 基本流程 1 下载 安装相应的src rpm包 wget xxx src rpm rpm ivh xxx src rpm 这里的 安装 是指把xxx src rpm中的tar gz p
  • Visual studio 2005 hangs on startup AppHangXProcB1 svchost devenv.exe svchost.exe:{2a811bb2-303b-48b...

    This problem has been torturing me for the whole afternoon and after searching on the web for a long time I finally get
  • [架构之路-185]-《软考-系统分析师》-3-操作系统基本原理 - 文件索引表

    目录 一 文件的索引块 二 索引分配表 三 索引表的链接方案 四 多层索引 五 混合索引分配 一 文件的索引块 存放在目录中的文件 并非是文件的真实内容 目录中记录了文件的索引块是几号磁盘块 文件对应的索引表是存放在指定的磁盘块中的 二 索
  • Linux常用命令记录

    文章目录 1 软件安装 安装软件 来自源服务器 安装 deb软件 来自本地 deb文件 修复依赖关系 卸载软件 2 文件 文件夹操作 删除文件夹 移动文件 文件重命名 3 程序查看 处理 进程查看 查看端口占用情况 强制终止程序 4 解压文
  • Linux 内核中的 Device Mapper 机制

    Linux 内核中的 Device Mapper 机制 尹 洋 在读博士生 尹洋 中科院计算所国家高性能计算机工程技术研究中心的在读博士生 主要从事服务部署和存储资源管理以及Linux块设备一级的开发和研究工作 简介 本文结合具体代码对 L
  • Ubuntu9.04太多乱码(中文不能正常显示)

    最近在使用Ubuntu9 04的过程中 发现有好多地方都出现乱码 其实是中文不能正常显示 现在把我所遇到的所有乱码问题集中一下 方便以后查阅参考 一 Flash乱码 在终端输入 sudo gedit etc fonts conf d 49
  • 内存管理——分页分段

    一 分页存储管理 1 页面与页框 1 页面 将一个进程的逻辑地址空间分成若干个大小相等的片 称为页面或页 并为各页加以编号 2 页框 相应于页面 把内存空间分成和页面相同大小的若干个存储块 称为 物理 块或页框 frame 3 页内碎片 在
  • 由于回车符引起的shell错误

    今天弟弟写shell时出现一个错误 源代码如下 zip r 1 2 执行时出现错误 我也写了相同的语句 发现是可以执行的 把两个文件对比一看 差别在于 出错shell 正确shell 在linux下的回车是 n 在win下面的回车是 r n

随机推荐

  • 安装 Hana Studio

    1 从sap 官网下载下来的安装包是 sar 类型的压缩包 2 需要用专门的解压工具 SAPCAR 3 运行sapcar 工具和安装包放到英文路径下 win r 输入cmd 输入CD SAPCAR保存路径 我的保存在 出现这种 没有打开相应
  • pandas之Series()菜鸟教程

    Pandas数据结构Series 基本概念及创建 一维数组 Serise import numpy as np import pandas as pd import time Series 数据结构 Series 是带有标签的一维数组 可以
  • CUDA安装详细教程

    一 CUDA下载 CUDA官网 二 CUDA具体安装步骤 1 检查电脑的NVIDIA版本 在cmd中输入nvidia smi 注意nvidia smi中的是驱动对应的cuda最高版本 只要此版本大于等于你安装的cuda即可 若命令nvidi
  • 机器学习笔试面试超详细总结(一)

    文章目录 1 判别模型和生成模型 2 最大概率分词 3 中文分词的基本方法 4 CRF 条件随机场 的特点 5 隐马尔可夫模型 HMM 时间复杂度及可以使用的数据集 6 在二分类问题中的评价方案 7 决策树特点 8 过拟合 9 异方差性 1
  • 关于gitlab的使用1——拉取代码

    1 快速上手 1 1注册 1 2登录 1 3选择 1 4选择所要拉取代码到idea的项目 1 5 选择索要拉取的模块 1 6选择clone按钮进行操作 1 7复制ssh或者http协议地址 1 8打开idea 1 9输入协议地址和保存路径
  • 关于Ajax跨域提交时session丢失的问题

    今天在工作中遇到了一个问题 就是当使用ajax和jsonp进行跨域时 每一服务器都会在cookie里set一个新的sessionId 会将原有的sessionId覆盖 也就是说客户端对于服务器来说始终处于未登录状态 我使用谷歌浏览器是没有问
  • R语言gg3D包绘制3D图形

    本次分享一个绘图还不错的包 gg3D 2018年1月公布 一 安装包 gg3D包目前 写该文章时 在R语言官方网站还不能找到并下载 但可以通过开源的托管平台gitHub下载 运行如下代码 install packages devtools
  • React Router中useRoutes()方法的使用

    运用场景 当我们需要路由权限控制点时候 对路由数组做一些权限的筛选过滤 这时需要把路由进行集中式管理 所谓的集中式路由配置就是用一个数组统一把所有的路由对应关系写好替换本来的Roues组件 便于管理路由 更加灵活 原来的路由写法 impor
  • STM32 基础系列教程 45 - FSMC_LCD_Touch

    前言 上一节我们完成了用 STM32F4的 FSMC接口来控制 TFTLCD的显示的操作 其实正点原子的探索者F4开发板带的屏幕支持触摸操作 笔者用的是4 3寸的电容触摸屏 本节我们继续实验 来完成基于STM32的触摸屏的实验 关于触摸屏的
  • Xshell的下载与安装

    引言 上一篇文章有介绍Windows子系统的安装与使用 安装Ubuntu桌面版确实可以直接使用Ubuntu子系统 但是Ubuntu桌面版的界面不是很好看 并且不能直接上传文件到服务器中 所以本篇章介绍SSH远程终端工具Xshell的下载与安
  • Springboot的application.properties或者application.yml环境的指定运行与配置

    Springboot的application properties或者application yml文件的配置 1 关于多个配置环境的指定运行 我们在主配置文件编写的时候 文件名可以是 application profile propert
  • 【k8s】ImagePullBackOff 错误处理

    文章目录 1 概述 2 问题复现 参考 1 概述 ImagePullBackOff错误比较简单 镜像下载失败 要么网络设置有问题 要么没有设置镜像源 另外一个比较隐蔽的问题是 当你在集群环境下 假设有3个节点 那么这三个节点都要设置镜像源
  • 物联网专业毕业设计题目大全

    文章目录 1 前言 2 选题分享 2 1 嵌入式方向 2 2 算法方向 2 3 移动通信方向 2 4 学长作品展示 3 选题技巧 3 1 如何避坑 重中之重 3 2 难度把控 3 3 题目名称 4 最后 1 前言 这是学长亲手整理的物联网相
  • k8s部署gitlab最新版并初始化和登录

    前提条件是已经部署了k8s环境 采用k8s部署gitlab作为devops的测试环境 更加简洁和方便 1 准备工作 1 1 创建nfs共享目录 在nfs服务器创建共享目录 部署的gitlib使用共享目录来进行持久化 这样不管在哪个节点运行g
  • 一个程序员的成长历程(持续更新)

    此处将是我学习编程的整个简单过程将持续记录只想在这里见证我一步步的成长 此时学习编程200天 2016 8 1 大一刚接触时的冲动和欣喜 认为语言种类积累学习越多我将走向成功 如今大一暑假 经过这一阶段对c语言与c 学习过后 喜欢上了算法
  • 使用windows自带的任务计划程序定时运行python程序(详细教程)

    最近写了一段微信定时发送消息的代码 但是这样需要一直将代码运行 现在运用windows自带的任务计划程序来实现代码自动运行 以达到定时发送消息的效果 将此记录下来方便下次使用时查找 1 打开搜索框搜索windows管理工具 并打开 2 在w
  • UML2面向对象分析与设计(第2版) 谭火彬 期末复习整理+部分答案【超实用】

    所用教材 谭火彬 编著 笔者纯手打整理 喜欢的话请点赞 关注我哦 UML相关的书就不能精简一点嘛 配套答案在公众号 书圈 内下载 也可以通过百度网盘链接 https pan baidu com s 1IPFlXBCVItuXrPZzY6qv
  • 程序员的自我修养--链接、装载与库笔记:目标文件里有什么

    编译器编译源代码后生成的文件叫做目标文件 目标文件从结构上讲 它是已经编译后的可执行文件格式 只是还没有经过链接的过程 其中可能有些符号或有些地址还没有被调整 其实它本身就是按照可执行文件格式存储的 只是跟真正的可执行文件在结构上稍有不同
  • 合并两数组(并排序)

    将两个数组num1和num2合并 升序排序 代码如下 import java util Arrays public class LangSuZu public int Hebing int num1 int num2 int num3 ne
  • 操作系统4小时速成:进程管理复习重点,进程,线程,处理机调度,进程同步,死锁

    操作系统4小时速成 进程管理复习重点 进程 线程 处理机调度 进程同步 死锁 2022找工作是学历 能力和运气的超强结合体 遇到寒冬 大厂不招人 可能很多算法学生都得去找开发 测开 测开的话 你就得学数据库 sql oracle 尤其sql