news 2026/4/18 11:35:37

系统编程-进程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
系统编程-进程

一、进程的定义与PCB

定义:进程时一个程序执行的过程,回去分配内存资源,cpu资源。

PCB:是一个结构体,系统用于描述正在运行的进程所有相关信息

PCB包含: 1.pid //进程ID 2.path //进程对应的程序路径 3.umask 0002 //文件权限掩码 4.int fd[1024] //文件描述符数组

二、进程与程序的区别

对比维度程序(program)进程(process)
本质属性静态实体动态实体
存在形式存储在硬盘中内存中运行的实体
生命周期永久存在(除非主动删除)临时存在(创建、调度、运行、消亡)
状态变化无状态支持并发运行
资源占用不占用cpu,内存等资源

占用cpu、内存等资源

资源竞争无资源竞争进程间会竞争cpu、内存

三、进程的分类:

1、交互式进程 进程运行后需要用户的输入,在给出对应的输出
2、批处理进程 shell脚本 批量执行命令
3、 守护进程 进程会自动运行,默认不需要输入,处于休眠状态。等到特定条件满足。自己开始运行。(更新进程,杀毒软件)

四、linux进程状态切换图

五、进程的调度

1.Linux 系统中有多个需运行的任务(进程),但 CPU 仅有一个,因此需合理安排下一时刻运行的进程。
2.常见调度算法:时间片轮转、短任务优先、进程优先级、完全公平调度算法(CFS)。
3.宏观并行:一个时间段中,每个进程都在运行;微观串行:时间某一刻,只有一个进程在运行。
4.进程上下文切换:a.out 的 CPU 时间片耗尽时,需运行 b.out。a.out 需把自身状态信息(PCB、硬件寄存器、PC、内存相关数据)缓存到硬盘,释放内存后,b.out 将缓存的自身数据读入内存,开始运行。

六、相关命令

ps aux //显示所有的进程相关的信息 top //linux中的任务管理器 kill //发信号 kill -9 pid //关闭指定pid的进程 kill -9 a.out //关闭多个 a.out

七、相关函数

1.创建子进程函数

pid_t fork() //创建一个子进程

特性:1.一次调用、会返回两次。

2.子进程和父进程谁先运行,顺序不确定,变量不共享。

3.子进复制父进程的0到3g空间和父进程内核中的PCB,但pid号不同。

返回值:int类型数字。

在父进程中,成功返回值>0;

失败,返回-1;

在子进程中,成功返回0;

2.获得pid相关函数

getpid pit_t getpid(void); //获得pid编号
getppid parent //获得调用该函数进程的父进程的pid编号 pid_t getppid(void)
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 7:23:11

成都顶级游资泄密:颠覆你认知的5条短线铁律

引言:为何听了那么多道理,依旧在亏钱?你是否也曾经历这样的循环:花无数个夜晚研究K线,把各种技术指标烂熟于心,偶尔抓住一两个涨停便心生希望,但最终,一次猝不及及的大跌就足以吞噬掉…

作者头像 李华
网站建设 2026/4/18 7:29:44

晶体塑性有限元显示动力学cpfem_vumat子程序(界面调用程序)

晶体塑性有限元显示动力学cpfem_vumat子注意此程序为\"界面调用程序\",用于显示动力学。最近在搞晶体塑性有限元仿真的时候,发现显式动力学框架下的材料子程序开发真是个磨人的小妖精。特别是那个cpfem_vumat,说是"界面调用程…

作者头像 李华
网站建设 2026/4/18 5:15:35

基于R语言BIOMOD2 及机器学习方法的物种分布模拟与案例分析

查看原文>>> https://mp.weixin.qq.com/s/zNmqmmfkFq-I8DFRIKzt6A 【目标】: 1、理解物种分布模型的基本原理:理解物种分布模型(SDMs)的理论基础,包括模型的种类、用途以及在生态研究和环境管理中的应用。 …

作者头像 李华
网站建设 2026/4/18 6:24:16

pr 批量修改字幕样式的方法,简单又实用

做视频剪辑的人都知道:字幕样式统一,是让作品更专业的关键步骤。 但现实却是——很多新手剪辑师遇到字幕内容多、样式需要统一修改时,总会被 PR 的复杂操作折磨得头痛不已。 作为一直深耕 PR 剪辑的作者,我也遇到过类似问题&#…

作者头像 李华
网站建设 2026/4/18 6:25:09

基于非下采样轮廓波变换的图像融合

1. 概述 非下采样轮廓波变换(Non-Subsampled Contourlet Transform, NSCT)是一种多尺度、多方向的图像表示方法,能够有效地捕捉图像中的几何结构信息。基于NSCT的图像融合方法因其优秀的性能在医学成像、遥感图像处理等领域得到了广泛应用。 2. NSCT基本原理 2.1…

作者头像 李华