IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 进程的定义与创建 -> 正文阅读

[系统运维]进程的定义与创建

1.进程的定义

(1)程序
程序(program)是一个普通文件,是为了完成特定任务而准备好的指令序列与数据的集合,这些指令和数据以”可执行映像”的格式保存在磁盘中。

正如我们所写的一些代码,经过编译器编译后,就会生成对应的可执行文件,那么这个就是程序,或者称之为可执行程序

(2)进程
进程(process)则是程序执行的具体实例,比如一个可执行文件,在执行的时候,它就是一个进程,直到该程序执行完毕。

进程实体由数据段,程序段,进程控制块PCB(Process Control Block)组成

在这里插入图片描述
进程的特征
在这里插入图片描述

进程和程序的区别和联系

区别:
1.进程是动态的;程序是静态的
程序只是一系列指令序列与数据的集合,它本身没有任何运行的含义,它只是一个静
态的实体。
而进程则不同,它是程序在某个数据集上的执行过程,它是一个动态运行的实体,有
自己的生命周期,它因启动而产生,因调度而运行,因等待资源或事件而被处于等待																																																																																																																																																												
状态,因完成任务而被销毁。

2.进程有独立性,能并发执行; 程序不能并发执行

3.组成不同。进程包含PCB、程序段、数据段。程序包含数据和指令代码

4.程序是一个包含了所有指令和数据的静态实体。本身除占用磁盘的存储空间外,并
不占用系统如CPU、内存等运行资源。
进程由程序段、数据段和PCB构成,会占用系统如CPU、内存等运行资源

5.二者无一一对应关系
进程和程序并不是一一对应的,一个程序执行在不同的数据集上运行就会成为不同的
进程,可以用进程控制块来唯一地标识系统中的每个进程。而这一点正是程序无法做
到的,由于程序没有和数据产生直接的联系,既使是执行不同的数据的程序,他们的
指令的集合依然是一样的,所以无法唯一地标识出这些运行于不同数据集上的程序。
一般来说,一个进程肯定有一个与之对应的程序,而且有且只有一个。而一个程序有
可能没有与之对应的进程(因为这个程序没有被运行),也有可能有多个进程与之对
应(这个程序可能运行在多个不同的数据集上)。


联系:进程不能脱离具体程序而虚设, 程序规定了相应进程所要完成的动作

2.进程相关术语

在 Linux 中是通过检查表记录与进程相关的信息的,进程表就是一个数据结构,它把当前加载在内存中的所有进程的有关信息保存在一个表中,其中包括进程的 PID、进程的状态、命令字符串和其他一些 ps 命令输出的各类信息。操作系统通过进程的 ID 对它们进行管理,这些 PID 是进程表的索引

查看进程:
ps –aux 目前在系统上运行的所有进程
pstree 将进程以树状关系列出来

(1)进程 ID
Linux 系统中的每个进程都都会被分配一个唯一的数字编号,我们称之为进程 ID(ProcessID,通常也被简称为 PID)。

进程 ID 是一个 16 位的正整数,默认取值范围是从 2 到 32768(PID 数字为 1 的值一般是为特殊进程 init 保留,即系统在运行时就存在的第一个进程, init 进程负责管理其他进程),由 Linux 在启动新进程的时候自动依次分配,当进程被启动时,系统将按顺序选择下一个未被使用的数字作为它的 PID

(2)父进程 ID
任何进程(除 init 进程)都是由另一个进程启动,该进程称为被启动进程的父进程,被启动的进程称为子进程,
父进程的进程号(PID)即为子进程的父进程号(PPID)。用户可以通过调用 getppid() 函数来获得当前进程的父进程号

进程启动时,启动进程是新进程的父进程,新进程是启动进程的子进程
每个进程都有一个父进程(除了系统中如“僵尸进程”这种特殊进程外)
可以把 Linux中的进程结构想象成一个树状结构,其中 init 进程就是树的“根”;或者可以把 init 进程看作为操作系统的进程管理器,它是其他所有进程的祖先进程。我们将要看到的其他系统进程要么是由init 进程启动的,要么是由被 init 进程启动的其他进程启动的

(3)PCB

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-09-02 11:48:00  更:2021-09-02 11:48:19 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 12:27:14-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码