操作系统-笔记-第二章-进程

news2024/10/6 8:32:31

目录

二、第二章——【进程】

1、进程的概念

(1)PID & PCD 进程控制块

(2)程序段 & 数据段

(3)特征 (特性) property

(4)总结

2、进程的状态

(1)进程——五状态模型

(2)基本状态

(3)进程组织方式——链接方式(链表)

(4)进程组织方式——索引方式

(5)总结(绿色部分-高频考点)

3、状态转换(一气呵成)

(1)操作的原子性(原语)——计算机组成原理也有

4、进程通信

(1)共享存储

(2)消息传递

(3)管道通信

(4)总结

(5)资源抢占问题(互斥、死锁、饥饿、共享区)


二、第二章——【进程】

Chrome 浏览器通常使用多进程架构。每当你在 Chrome 中打开一个新的标签页或窗口,并加载一个网页,它会创建一个新的独立进程来处理该网页。

这种多进程架构的设计有几个优点:

  1. 安全性:每个网页运行在单独的进程中,可以隔离不同网页间的代码,防止恶意网页对系统的攻击或干扰。
  2. 稳定性:如果一个网页崩溃或出现问题,其他网页和浏览器仍然可以正常工作,不会导致整个浏览器崩溃。
  3. 性能:通过将网页的渲染、脚本执行等任务分配给不同的进程,可以同时进行多个任务,提高浏览器的响应速度和效率。

然而,需要注意的是,并非每个标签页都会创建一个新的进程。一些相关页面,比如同一站点的多个标签页,可能会在同一个进程中运行,以节省系统资源。

总之,Chrome 使用多进程的设计可以提供更好的安全性、稳定性和性能,但也会消耗更多的系统资源。

1、进程的概念

PCB & 程序段 & 数据段

(1)PID & PCD 进程控制块

Process ID —— PID  ——进程标识符

PCD ——进程控制块

UID —— user ID

(2)程序段 & 数据段

程序段——二进制指令序列(你开多个QQ,都是运行的同一个程序段~)

数据段——进程运行时产生和获取的数据(每个QQ都有自己的数据段~)

(3)特征 (特性) property

Static & dynamic

并发 & 独立 (Concurrency & Independence

结构性 (constitutive property

(4)总结

2、进程的状态

软考的图:

(1)进程——五状态模型

1、创建

2、就绪——(静止)

3、运行

4、阻塞——(等待)

5、终止态——(结束)

北大的图:

(2)基本状态

(3)进程组织方式——链接方式(链表)

大多数操作系统——都是使用链式方式

注意:这里可以套娃,可以创建多个链表(具体情况,具体分析!) 

(4)进程组织方式——索引方式

(5)总结(绿色部分-高频考点)

3、状态转换(一气呵成)

(1)操作的原子性(原语)——计算机组成原理也有

 

外界干预——人为停止(比如我们用【任务管理器】主动杀死某个进程)

4、进程通信

(1)共享存储

数据结构——慢

存储区——快

(2)消息传递

直接通信

间接通信

(3)管道通信

管道——写和读的进程——具体情况,具体分析(可以有多个)

但是!!!考试的话,就采用高教社的答案

多个写,一个读(这个关于读者&写者问题)

(4)总结

(5)资源抢占问题(互斥、死锁、饥饿、共享区)


今天已经是8月中旬!

时间飞逝!

要记得每日复习呀!为了知识而学习!用知识武装自己,这些知识,是为了之后更好学习自己感兴趣的领域,一定要戒骄戒躁,步步为营,耐住寂寞,你一定可以!加油!

时间:2023年8月15日13:02:46 

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

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

相关文章

配置应用/配置权限提升

配置应用 配置 servera 上的应用 ex200 ,要求如下:当以用户 pandora 运行 ex200 时,它将显示 borough lively excursion nephew scarce find / | grep ex200 which ex200wim /usr/local/bin/ex200 echo borough lively excursion nephew …

【Java集合框架面试题(30道)】

文章目录 Java集合框架面试题(30道)引言1.说说有哪些常见集合? List2.ArrayList和LinkedList有什么区别?3.ArrayList的扩容机制了解吗?4.ArrayList怎么序列化的知道吗?为什么用transient修饰数组?5.快速失败&#xff0…

工厂无线安灯呼叫系统解决方案

在现代制造业中,生产线的高效运作是企业成功的关键之一。为了实现生产线的顺畅运转,安灯系统成为了制造业生产现场的必备工具。安灯系统是一个专门应用软硬件系统,旨在快速联络生产、物料、维修、主管等部门,以满足生产线的需求并…

【STM32RT-Thread零基础入门】 5. 线程创建应用(线程创建、删除、初始化、脱离、启动、睡眠)

硬件:STM32F103ZET6、ST-LINK、usb转串口工具、4个LED灯、1个蜂鸣器、4个1k电阻、2个按键、面包板、杜邦线 文章目录 前言一、线程管理接口介绍二、任务:使用多线程的方式同时实现led闪烁和按键控制喇叭(扫描法)1. RT-Thread相关接…

根据两组相关联数据(部门 + 用户),生成列表树

文章目录 背景想要得到的数据格式业务层获取数据,部门及用户,构建树结构TreeUtil生成的格式部门实体用户实体 背景 目前拥有用户和部门两组数据,根据部门和用户的关系,生成部门树,且每个部门下拥有哪些与子部门同级的…

接口自动化测试框架搭建

为什么要做(自动化)接口测试? 1、由于现在各个系统的复杂度不断上升,导致传统的测试方法成本上升且测试效率大幅下降,而接口测试相对于UI测试更加稳定,且相对容易实现自动化持续集成,可以减少人…

Spring BeanDefinition 也分父子关系?

在 Spring 框架中,BeanDefinition 是一个核心概念,用于定义和配置 bean 的元数据,虽然在实际应用中,我们一般并不会或者很少直接定义 BeanDefinition,但是,我们在 XML 文件中所作的配置,以及利用…

数字化智慧工地云平台,劳务实名制系统、视频监控系统、环境监测系统、人员定位系统、工资代发系统、AI识别系统、视频监控系统

智慧工地概念 智慧工地是一种崭新的工程全生命周期管理理念,是指运用信息化手段,通过对工程项目进行精确设计和施工模拟,围绕施工过程管理,建立互联协同、智能生产、科学管理的施工项目信息化生态圈,并将此数据在虚拟…

RabbitMQ的5种消息队列

RabbitMQ的5种消息队列 1、七种模式介绍与应用场景 1.1 简单模式(Hello World) 一个生产者对应一个消费者,RabbitMQ 相当于一个消息代理,负责将 A 的消息转发给 B。 应用场景:将发送的电子邮件放到消息队列,然后邮件服务在队列…

LeetCode150道面试经典题-- 环形链表(简单)

1.题目 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置&…

通过pycharm使用git和github的步骤(图文详解)

一、在Pycharm工具中配置集成Git和GitHub。 1.集成Git。 打开Pycharm, 点击File-->Settins-->Version Control-->Git 然后在 Path to Git executable中选择本地的git.exe路径。如下图: 2.集成GitHub 打开Pycharm, 点击File-->Settins-->Version…

基于Googlenet深度学习网络的信号调制类型识别matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1 深度学习与卷积神经网络 4.2 数据预处理 4.3 GoogLeNet结构 4.4 分类器 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 MATLAB2022a 3.部分核心程序 ............…

Qt 父子对象的关系

文章目录 前言一. Qt 对象可以存在父子关系:二. 父子关系的建立:三. Qt 对象的销毁: 总结 前言 Qt是一个流行的C框架,用于开发跨平台的图形用户界面(GUI)应用程序。Qt提供了一种强大的对象模型&#xff0c…

leetcode做题笔记83删除排序链表中的重复元素

给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。 输入:head [1,1,2] 输出:[1,2] 思路一:模拟题意 struct ListNode* deleteDuplicates(struct ListNode* head){i…

韦东山-电子量产工具项目:显示单元

所有代码都已通过测试跑通,其中代码结构如下: 一、include文件夹 1.1 disp_manager.h #ifndef _DISP_MANAGER_H //防止头文件重复包含,只要右边的出现过,就不会再往下编译 #define _DISP_MANAGER_H //区域结构体 typedef struct DispBuff …

机器学习样本数据划分的典型Python方法

机器学习样本数据划分的典型Python方法 DateAuthorVersionNote2023.08.16Dog TaoV1.0完成文档撰写。 文章目录 机器学习样本数据划分的典型Python方法样本数据的分类Training DataValidation DataTest Data numpy.ndarray类型数据直接划分交叉验证基于KFold基于RepeatedKFold基…

【C++】面向对象编程引入 ( 面向过程编程 | 查看 iostream 依赖 | 面向对象编程 )

文章目录 一、面向过程编程二、查看 iostream 依赖三、面向对象编程 一、面向过程编程 给定 圆 的 半径 , 求该圆 的 周长 和 面积 ; 半径为 r r r , 周长就是 2 π r 2 \pi r 2πr , 面积是 π r 2 \pi r^2 πr2 ; 使用 面向过程 的方法解决上述问题 , 只能是令程序顺序执…

DDCX——运维开发准备

DD——运维开发准备 一4 linux用的什么版本,常见命令(awk sed grep telnet netstate tcpdump top ps perf)5 数据库有哪些类型,关系型数据库有哪些,非关系型数据库有哪些6 mysql事务7 mysql集群了解多少8 redis数据类型…

Spring 框架入门介绍及IoC的三种注入方式

目录 一、Spring 简介 1. 简介 2. spring 的核心模块 ⭐ 二、IoC 的概念 2.1 IoC 详解 2.2 IoC的好处 2.3 谈谈你对IoC的理解 三、IoC的三种注入方式 3.1 构造方法注入 3.2 setter方法注入 3.3 接口注入(自动分配) 3.4 spring上下文与tomcat整…

ChatGPT聊天微信小程序源码/适配H5和WEB端

ChatGPT-MP(基于ChatGPT实现的微信小程序,适配H5和WEB端) 可二开包含前后台,支持打字效果输出流式输出,支持AI聊天次数限制,支持分享增加次数等功能。开源版禁止商用,仅供学习交流,禁止倒卖。 技术栈&…