栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

Linux C++通信 - 终端与进程

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Linux C++通信 - 终端与进程

终端与进程

为了以后更好的在Linux上开发,理清进程之间的关系非常重要。

目录
  • 终端与进程
  • 终端与bash进程


终端与bash进程

终端,通常指的是一个命令行窗口

ps -ef | grep bash


由于我是先使用qiye用户后sudo登录至root用户,所以出现了两个独立bash进程,但可以发现的是,两个用户的tty都同为pts/0,说明这两个进程均使用于同个终端。

当我再以相同方式打开一个窗口,一样,ps -ef | grep bash

出现pts/1,即一个新终端下的两个独立进程

得到结论:一个终端下可以有多个进程
这时就有一个新想法了,sudo是怎么产生一个新进程给root用的?

看看进程关系,执行 ps -la

可以发现,sudo到root是有一个中传的,sudo是使用su登录到root,而且仔细观察他们的PID(子进程)、PPID(父进程),他们是一个树形结构的关系,每一次使用命令就是启动一个子进程,只不过一些命令执行完就会被释放,所以我们ps -la看不到他们的身影。

此时,我退出第二个终端的root用户,即exit一下,可以发现第二个终端子进程全部被释放了(对比上一张图)

然后也就多少能理解下面这张进程关系图了


天哪,大四了
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/989845.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号