当前位置: 首页 > news >正文

深入解析:【操作系统】408操作系统核心考点精讲:第二章——进程的概念、组成与特征​

进程

  • 导读
  • 一、概念
    • 1.1 实例介绍
    • 1.2 可执行文件
    • 1.3 软件编号
    • 1.4 进程实体
  • 二、组成
    • 2.1 PCB
    • 2.2 程序段
    • 2.3 数据段
  • 三、特征
  • 结语

进程与线程

导读

大家好,很高兴又和大家见面啦!!!

在前面的内容中大家介绍了【操作系统】的基本概念、发展历程、运行环境以及体系结构等重要内容。这些内容让我们对【操作系统】有了一个初步的印象与了解。

从本篇内容开始,我们将进入【操作系统——第二章——进程与线程】的学习。在这个章节中,我们将会学习以下知识点:

  • 进程与线程
  • CPU调度
  • 同步与互斥
  • 死锁

下面就让我们直接进入今天的内容,开始深入探索操作系统吧!!!

一、概念

在多道程序环境下,允许多个程序并发执行,此时它们将失去封闭性,并具有间断性及不可再现性的特征。为此引入了进程(Process)的概念,以便更好地描述和控制程序的并发执行,实现操作系统的并发性和共享性。

1.1 实例介绍

通过为了方便大家理解什么是进程,下面我们能够打开自己的任务管理器(快捷键:Ctrl + Alt + Del):

任务管理器

在任务管理器中,我们在进程页面中看到下面正在运行的所有程序以及在后台运行的所有工具。由此我们可以得到一个定义:

  • 进程就是一个正在执行程序的实例

1.2 可执行文件

上图中展示的这些正在执行的程序,实际上都是运行的存储在硬盘中的后缀名为 .exe可执行文件

大家在编译器中通过各种高级语言编写的代码会被保存在相应的源文件 中,如 C语言编写的代码会被保存到 .c 文件。此时的文件还需要经过一系列的处理才能够变为可执行文件:

生成的一系列指令的集合就是可执行文件实际上就,该文件会被存储在硬盘中,当我们要运行该程序时,计算机会先将可执行文件读取到内存中,这时可执行文件中的一条条指令会逐步执行,而执行的结果就是我们在GUI上看到的程序运行的各种画面;

这时我们就行说,进程时一个程序及其数据从磁盘加载到内存后,在 CPU 上的执行过程

1.3 程序编号

软件被存储在内存块中时,它是静态的

当我们运行该程序后,程序中存储的一条条指令会被动态的执行;

那现在问题来了,如果在同一台计算机上,不同的用户打开同一个程序,这时的指令运行会产生冲突吗?

程序编号

独立的在运行。就是在上图的演示中,我打开了3次记事本,但是从任务管理器中可能看到,记事本这个软件被打开了多次,每一次都

这时我们又行说——程序的一次执行过程就是进程是动态的,

那为什么同一个脚本在多次执行时,工具的执行不会产生冲突呢?

这是因为当一个进程被创建时,操作系统会为该进程分配一个唯一的、不重复的身份证号——进程IDProcess ID, PID)。

PID
在任务管理器的详细信息页面,我们能够清楚的看到每一个进程所对应的PID ,这里我是按进程名称进行的排序,可以看到,对于同一个chrome.exe 程序,它在系统中运行时同时存在多个 进程,而每一个进程对应的PID 都不相同。

这时可能有朋友会奇怪,我们现在不是就打开了一个 chrome.exe ,为什么会有这么多进程呢?

为了回答这个问题,大家可以回到进程页面进行观察:

后台进程

可以看到,当我们打开一个应用时,操作系统的后台也会同时存在多个进程,这是因为每个程序实例可能包含了多个协同工作的独立进程,因此我们才会在详细信息页面看到不同的进程以及对应的PID

这时我们可以说——进程时一个具有独立能力的程序在一个内容集合上运行的过程

1.4 进程实体

系统为了使参与并发执行的每个程序(含数据)都能独立地运行,必须为之配置一个专门的数据结构,称之为进程控制块Process Control Block, PCB)。

系统利用 PCB来描述进程的基本情况和运行状态,进而控制和管理进程。所谓的创建进程,就是创建进程的PCB;撤销进程,就是撤销进程的PCB

程序段相关数据段PCB这三个部分构成了进程实体(也称进程映像)。

这时我们行说——进程是进程实体的运行过程,是体系进行资源分配和调度的一个独立单位

注意:
这里所说的系统资源指的是 CPU、存储器和其他设备服务于某个进程的“时间”。
一个就是由于进程是这些资源分配和调度的独立单位,即 “时间片” 分配的独立单位,这就决定了进程是一定动态的过程性 的概念。

二、组成

进程是一个独立的运行单位,是操作系统进行资源分配和调度的基本单位。它由以下三部分构成:

下面我们就来详细介绍一下这三部分;

2.1 PCB

进程在创建的时候,操作系统会为它新建一个PCB,该结构之后常驻内存,任意时刻都可以进行存取,并在进程结束时删除。PCB是进程实体的一部分,是进程存在的唯一标志

当我们打开一个记事本时,从资源管理器中我们可能看到以下信息:

PCB

在进程页面记录者该进程对系统资源的使用情况:

  • CPU利用率
  • 内存使用
  • 磁盘读取速度
  • 网络流量
  • GPU利用率
  • 电源使用情况
  • 电源使用情况趋势

当我们在详细页面再一次找到该进程时,我们可以看到以下信息:

PCB2
这里记录了进程的名称、PID、状态、用户名、CPU、内存、UAC等信息。

也就是说,PCB中包含了操作系统对一个进程进行管理时的所有信息,这其中主导包括以下内容:

  • 进程描述信息:说明进程的ID和所使用该进程的用户。
    • PID(Process ID):进程标识符,标志着各个进程,每个进程都有一个唯一的标识符
    • UID(User ID):用户标识符,标志着进程所归属的用户,用户标识符关键为共享和保护服务。
  • 进程控制和管理信息:说明进程的当前状态和优先级。
    • 进程当前状态:描述进程的状态信息,作为CPU分配调度的依据
    • 进程优先级:描述进程抢占 CPU 的优先级,优先级高的进程可优先获得 CPU
  • 资源分配清单:说明有关内存地址空间或虚拟地址空间的状况,锁打开文件的列表和所应用的输入/输出设备信息。
  • 处理机相关信息:也称 CPU 上下文,主要值 CPU 中各寄存器的值。
    • 当进程处于执行态时,CPU的许多信息都在寄存器中。
    • 当进程被切换时,CPU状态信息必须保持在相应的PCB中,以便该进程再次执行时,能从断点处继续执行。

2.2 程序段

能被进程调度到 CPU 执行的程序代码段。就是程序段就

2.3 数据段

程序执行时产生的中间或最终结果。就是一个进程的数据段,可以是进程对应的程序加工处理的原始数据,也许可

三、特征

对比单个程序的顺序执行提出的。总共有4点:就是进程的基本特征

结语

今天的内容到这里就结束了。通过本文的学习,我们系统地梳理了进程这一操作系统的核心概念。

  • 平台进行资源分配和调度的一个独立单位就是进程是进程实体的运行过程,
  • 进程由 PCB进程控制块)、程序段数据段三部分组成
  • 进程拥有动态性并发性独立性异步性四大基本特征

深入探索操作系统并发世界的基石。就是这些内容让我们逐步构建起对进程的全面认识。理解进程

在下一篇内容中,我们将探讨​​进程的状态与转换​​,这是理解操作系统如何进行进程调度的关键。

互动与分享

  • 点赞 - 您的认可是我持续创作的最大动力

  • 收藏⭐ - 方便随时回顾这些主要的基础概念

  • 转发↗️ - 分享给更多可能需要的朋友

• 评论 - 欢迎留下您的宝贵意见或想讨论的话题

感谢您的耐心阅读! 关注博主,不错过更多技术干货。我们下一篇再见!

http://www.jsqmd.com/news/78645/

相关文章:

  • 为什么谷歌云服务器是你的下一个最佳选择?
  • 前端开发者必看:玩转CSS3 3D空间与透视效果实战指南
  • 英语六级(CET-6)语法
  • 超越误解:AI元人文构想的四重元认知跃迁
  • cmus终极音效配置指南:均衡器和重放增益完全掌握
  • 面向水工、市政与环保工程的渗流控制:有限元方法、程序修改与参数化分析
  • 上海房屋漏水反复修不好?芮生建设提供免费上门勘察,先勘察后报价,根源治理 - shruisheng
  • Python 对接淘宝评论 API 接口全流程:权限申请、参数配置与首次采集实战
  • Radiant CMS 实战指南:轻松构建高效内容管理系统
  • Qwen-Image-Edit-Rapid-AIO V10:AI图像编辑的效率革命与开源新范式
  • 将MacBook刘海变身为高效文件传输中心
  • Billion Mail离线安装全攻略:零网络环境下的邮件平台搭建实战
  • 韩语学习笔记
  • 配个环境搞一天,上线联调花一周:我用这套工作流把部署压到了3分钟
  • 开发者体验(DX)拯救指南:扔掉你的 Dockerfile 和 Nginx 吧
  • PyTorch CV模型实战全流程(一) - 详解
  • 6、测试 Lambda 函数的全面指南
  • 巨椰 云手机办公便利性高
  • ai搜索文献:高效获取学术资源的智能工具与应用指南
  • PDFMathTranslate中文显示终极解决方案:从乱码到完美排版
  • 在微信个人号开发中,如何进行API接口二次开发?
  • 7、深入探索AWS Lambda:测试与事件驱动模型
  • 深入解析:Gyroflow:视频稳定的商业革新神器
  • 管理学选刊投稿攻略!
  • 云手机的硬件依赖性如何?
  • AI智能搜索文献:高效精准的学术资源检索与获取新方式
  • JL — 695X — 板级配置文件常用配置
  • 连接器防水设计
  • 文献查询免费网站推荐:实用资源汇总与高效检索指南
  • SimpleRL-reason:零基础强化学习训练指南