什么是进程

目录

  • 一. 进程的概念
  • 二. 进程的组成
  • 三. 进程的特征
  • 四. 进程的状态与转换
    • 4.1 进程的状态
    • 4.2 进程状态的转换
    • 4.3 进程的组织方式
  • 五. 进程控制
    • 5.1 进程控制
    • 5.2 进程创建
  • 六. 进程之间的通信
    • 6.1 共享存储
    • 6.2 消息传递

在这里插入图片描述

\quad

一. 进程的概念

\quad

在这里插入图片描述

思考:操作系统是这些进程的管理者,它要怎么区分各个进程?

答: 当进程被创建时,操作系统会为该进程分配一个唯一的、不重复的“身份证号”―- PID (Prxcess ID,进程ID)

在这里插入图片描述
每一次关闭和打开, PID都是唯一的, 不重复的

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

\quad

二. 进程的组成

\quad

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

在这里插入图片描述
\quad

三. 进程的特征

\quad

在这里插入图片描述
理解就可以了, 不需要背

在这里插入图片描述
\quad

四. 进程的状态与转换

\quad
在这里插入图片描述

\quad

4.1 进程的状态

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

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

\quad

4.2 进程状态的转换

\quad

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

4.3 进程的组织方式

\quad

在这里插入图片描述

在这里插入图片描述

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

\quad

五. 进程控制

\quad

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

\quad

5.1 进程控制

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

如何实现原语的“原子性”?

\quad

在这里插入图片描述
在这里插入图片描述
两个特权指令不允许用户程序使用, 只能在内核程序内使用

\quad

5.2 进程创建

\quad
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
下面讲的是运行环境, 或者说是进程上下文
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
当原来的进程再次投入运行时,可以通过PCB恢复它的运行环境

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

\quad

六. 进程之间的通信

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

\quad

6.1 共享存储

\quad

在这里插入图片描述
有可能会发生写冲突
在这里插入图片描述
在这里插入图片描述
\quad

6.2 消息传递

\quad

在这里插入图片描述

在这里插入图片描述
\quad
消息传递之~直接通信方式,点名道姓的消息传递。
\quad

在这里插入图片描述
\quad
可以多个进程往同一个信箱send消息,也可以多个进程从同一个信箱中receive消息
\quad

在这里插入图片描述
与间接通信不同的是, 管道通信必须从头到尾读取

在这里插入图片描述
先进先出

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

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

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

相关文章

面试算法-110-课程表

题目 你这个学期必须选修 numCourses 门课程,记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出,其中 prerequisites[i] [ai, bi] ,表示如果要学习课程 ai 则 必须 先学习课程 bi 。 …

【分布式websocket】表情怎么做?自制表情包和Unicode表情符号区别?表情编解码?【20期】

前言 表情包是聊天系统中一个比较常见的功能。常见的表情表分为两种是类型。 一种是Unicode表情,另外一种是图片表情。我们这篇文章两种都会涉及。 图片类表情包会涉及到编解码。不会将发送消息的图片的url地址也一并存入数据库中。 文章将会从表情分类。表情编解码…

添加网址到主页

基于localStorage的网址收藏夹-CSDN博客 为了通过安卓菜单添加网址到主页中,调试了几个小时,主要踩了几个坑。 1.localStorage 通过域名隔离,需要加载主页才能读写。 2.WebView 可以不显示,但是 JS 代码要放在 window.onload 中…

oracle19c单机版补丁19.3.0.0升级到19.22.0.0

oracle19c单机版补丁升级到19.22.0.0 一、获取补丁包 查看之前的版本 column product format A30 column version format A15 column version_full format A20 column status format A15 select * from product_component_version;二、备份opatch和数据库文件 su - oracle …

封装-练习

T2、以面向对象的思想,编写自定义类描述IT从业者。设定属性包括:姓名,年龄,技术方向,工作年限;方法包括:工作。 要求: 设置属性的私有访问权限,通过公有的get,set方法实现…

AD域的使用

一,部署共享网络驱动器 1/根目录下创建共享资料库-共享 2/用户-首选项-windows设置-网络驱动器-新建-映射驱动器 3/创建-共享路径-驱动器号(可固定/可随机) 4/更新策略:gpupdate /force 5/客户端查看 首先我们打开服务器此电脑 建立一个文件夹 右击文件夹点击属…

node整理学习(二)

模块化的概念 一、什么是模块化 模块化是指解决一个复杂问题时,自顶向下逐层把系统划分成若干模块的过程,模块是可组合、分解和更换的单元 二、模块化的好处 1、提高了代码的复用性 2、提高了代码的可维护性 3、可以实现按需加载 三、模块化规范 …

Avalonia(11.0.2)+.NET6 打包设置发布包的版本号

Avalonia11.0.2+.NET6 打包设置发布包的版本号 系统版本如何打包设置打包的版本号本文是对上一篇打包文章的补充,后台好多人私信我说打包的版本号如何设置,今天出个补充说明 Avalonia(11.0.2)+.NET6 打包运行到银河麒麟V10桌面系统 系统版本 如何打包 Avalonia(11.0.2)+.NET…

MVC与MVVM:两种前端架构模式对比

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

pytest教程-19-pytest.ini配置文件

领取资料,咨询答疑,请➕wei: June__Go 上一小节我们学习了pytest内置fixture的使用方法,本小节我们讲解一下pytest.ini文件的配置方法。 pytest配置文件可以改变pytest的运行方式,它是一个固定的文件pytest.ini文件&#xff0c…

OpenGL学习笔记【4】——创建窗口,给窗口添加渲染颜色

一、前三章节的前情回顾 章节一:上下文(Context) OpenGL学习笔记【1】——简介-CSDN博客 章节一讲述了OpenGL在渲染的时候需要一个Context来记录了OpenGL渲染需要的所有信息和状态,可以把上下文理解成一个大的结构体,它里面记录了当前绘制使…

C#.NET 与 Python 交互

若你要用.NET和Python交互,那么你可以使用两种技术:IronPython 和 Python.NET 。 但两者的基础实现和目标场景都不同,因此如何使用它们也有所不同。 IrconPython简称 IPy , Python.NET 也叫 pythonnet 或 Python for .NET ,下面分…

基于Java校园跑腿管理系统设计与实现(源码+部署文档)

博主介绍: ✌至今服务客户已经1000、专注于Java技术领域、项目定制、技术答疑、开发工具、毕业项目实战 ✌ 🍅 文末获取源码联系 🍅 👇🏻 精彩专栏 推荐订阅 👇🏻 不然下次找不到 Java项目精品实…

《SQL必知必会第五版》第十五章(插入数据)挑战题

1. 使用 INSERT 和指定的列,将你自己添加到 Customers 表中。明确列出要添加哪几列,且仅需列出你需要的列。 INSERT INTO Customers(cust_id,cust_name,cust_address,cust_city,cust_state,cust_zip,cust_country,cust_contact,cust_email) VALUES(…

简单函数_加减乘除

任务描述 对输入的算式进行简单的运算,输出算式结果。运算符只会是加、减-、乘*、除/、求余%、阶乘!之一。 输出运算的结果,如果出现除数为零,则输出“error”,如果求余运算的第二个运算数为0,也输出“error”。 输入…

自定义collate_fn函数:应对报错RuntimeError: stack expects each tensor to be equal size

使用BERT或ResNet分别生成文本和图像特征时,由于文本自身长度和图像大小的限制,导致最后形成的特征数据在送入DataLoader时会因为维度不同而报错: RuntimeError: stack expects each tensor to be equal size此时就需要自定义collate_fn函数实现数据的自定义加载功能,下面…

UR5 机器人 URDF 代码阅读

系列文章目录 文章目录 系列文章目录前言一、UR5 URDF 代码二、base_link三、shoulder_pan_joint四、shoulder_pan_trans五、ROS base_link 坐标系到 UR 机器人 Base 坐标系的转换六、与全零TCP&#xff08;工具坐标系&#xff09;重合的工具链接 前言 一、UR5 URDF 代码 <…

算法人生(8):从“注意力算法”看“战胜拖延”(被分心太多版)

现代人拖延产生的原因有很多&#xff0c;比如因为害怕失败而拖延&#xff0c;因为完美主义倾向而拖延&#xff0c;不想走出“舒适区”而拖延等等&#xff0c; 今天我们要针对一个常见的原因“被分心的事情太多”而产生的拖延来看&#xff0c;如何从“注意力算法”的思路中找到些…

类型双关联合体(C++基础)

类型双关 类型双关就是在同样的一个内存中&#xff0c;存储的数据可以用做不同类型的表述。用在底层性能优化的时候&#xff0c;一般使用的时候要非常小心&#xff0c;因为不当的使用可能导致程序的不稳定和不可预测的行为。 int a 5;//double value (double)a;double value…

软考信息系统项目管理师2024上半年报名流程及注意事项

2024年5月软考信息系统项目管理师报名入口&#xff1a; 中国计算机技术职业资格网&#xff08;http://www.ruankao.org.cn/&#xff09; 2024年软考报名时间暂未公布&#xff0c;考试时间上半年为5月25日到28日&#xff0c;下半年考试时间为11月9日到12日。不想错过考试最新消…