Linux——进程管理

1.gcc与g++区别(补充了解)

比如有两个文件:main.c,mainc++.cpp(分别用C语言和C语言写的)如果要用gcc编译呢? gcc -o mainc main.c gcc -o mainc mainc++.cpp -lstdc++ 指明用c++的标准库; 区别一: gcc默认只链接C库,并不会链接C++的库;g++会默认链接c++标准库. 区别二: gcc编译.c文件,则按照C语言的方式编译;gcc如果编译.cpp文件,则按照c++的方式编译; g++不管是c文件还是cpp文件,都是按照c++的方式进行编译;即g++不管文件后缀,直接按照c++的语法规则处理 问题:如果gcc要按照c++方式编译呢?需要指定库,例如: gcc -o test test.cpp -lstdc++ 指定库

为什么是补充了解呢?就是正常使用就是gcc编译c文件,g++编译c++文件;

2.进程管理命令

进程的概念

进程:运行中的程序(过程,动态)

程序:存储在磁盘上的二进制可执行文件;(静态)

操作系统是通过管理进程,让进程运行来完成用户的任务的;

PCB:进程控制块,记录的是进程的相关属性信息;数据结构

PID:是操作系统对进程的标识;唯一的;

简而言之, 程序:指令+数据; 进程:运行中的程序,也就是说,程序是存储在磁盘上的二进制可执行文件,而进程是内存上的,是运行中的程序(过程); 操作系统是通过管理进程,让进程运行来完成用户的任务的; 操作系统对于进程的描述:PCB(进程控制块,进程描述符),记录一个进程执行过程中的相关的属性数据;PID是操作系统对进程的标识,每一个进程的PID都是不同的(唯一性); 为了描述控制进程的运行,系统中存放进程的管理和控制信息的数据结构称为进程控制块(PCB Process Control Block),它是进程实体的一部分,是操作系统中最重要的记录性数据结构。它是进程管理和控制的最重要的数据结构,每一个进程均有一个PCB,在创建进程时,建立PCB,伴随进程运行的全过程,直到进程撤消而撤消。 (操作系统精髓与设计原理43页) 进程的组成; (操作系统精髓与设计原理74页) PCB进程控制块结构;

补充:僵死进程:进程实体释放与PCB的释放有一个时间差(PCB的释放是需要一定条件的),进程实体被释放,但是PCB没有释放.

(1)ps 默认显示与当前终端有关的进程信息;

参数:-e -f -L

-f:显示更多的进程属性信息;

-e:显示系统信息;

-L:显示进程中的线程的ID;

ps -ef |grep ...

(2)pstree

以树状图形显示进程之间的关系;

(3)kill

结束或者挂起一个进程;

语法:

kill PID

-9 强制结束进程;(kill -9 PID);

kill -STOP PID:挂起一个进程

1)前后台

2)如何启动一个进程:

路径+可执行文件名

路径+可执行文件名 &(将进程放到后台去运行)

(4)jobs

显示当前终端的任务,显示后台执行的或者挂起的任务;

显示的结果分别是:

任务号 任务的状态 任务的名称;

jobs -l:显示详细内容;

(5)pkill

结束一组同名的进程,即结束一组CMD相同的进程;

(6)fg bg

将后台运行的或者挂起的进程挪到前台执行:fg %任务号

将挂起的进程唤醒到后台去执行:bg %任务号

(7)top

查看系统使用情况以及进程信息;

同Windows的任务管理器

相关推荐
就叫飞六吧5 分钟前
TOML vs YAML:为什么 Cargo 选择 TOML?
linux·运维·服务器
MiNG MENS5 分钟前
nginx 代理 redis
运维·redis·nginx
IMPYLH19 分钟前
Linux 的 test 命令
linux·运维·服务器·chrome·bash
xrui581 小时前
2026实战:深度解析 Gemini 3.1 镜像站函数调用在自动化运维工单中的应用
linux·服务器·网络
HackTwoHub1 小时前
Linux 内核史诗级本地提权 全网深度复现、原理完整分析( CVE-2026-31431)
linux·运维·安全·web安全·网络安全·代码审计·安全架构
chao1898441 小时前
完整MES系统实现 (C# 客户端服务器)
服务器·windows·c#
她说彩礼65万1 小时前
C语言 文件
linux·服务器·c语言
txg6662 小时前
自动驾驶领域热点简报(2026-04-26 ~ 2026-05-03)
linux·人工智能·自动驾驶
二哈赛车手2 小时前
新人笔记---ES和kibana启动问题以及一些常用的linux的错误排查方法,以及ES,数据库泄密解决方案[超详细]
java·linux·数据库·spring boot·笔记·elasticsearch
嵌入式×边缘AI:打怪升级日志2 小时前
嵌入式Linux开发核心自测题(全系列精华浓缩)
java·linux·运维