进 程

1.进程:进行中的程序。

微观串行,宏观并行。

程序的一次执行过程

进程是程序的一个实例

一个程序可以对应一个或多个进程。

2.为什么需要进程?
3.进程的组成部分:

进程 = pcb 块 + 栈|堆|bss|data|text

其中:

家族:操作系统

PID 进程ID号

PR 进程优先级

S 进程的状态:进程的生命周期

4.进程的状态:

操作系统理论:三态模型

5.观察进程:

1.top -- 类似于windows下的任务管理器

2.ps

ps aux | grep a.out //某个pid号及状态信息

ps -elf |grep a.out //查看父子进程id

ppid(parent process id) //父进程pid号

Linux系统中,进程间关系是一种父子关系。

3.pstree -sp【pid号】 //查看父子进程间的关系、树状图

4.kill -【】 -9 给进程发信号 killall 可以指定进程名称。

6.进程的生命周期:

1.创建进程

fork() 通过复制调用进程复制的子进程(复制进程实体|数据代码)

返回值:成功:父进程返回子进程的PID号、子进程返回0

失败返回-1并没有子进程被创建

注:1.pid号是一个非负整数。

2.父子进程的空间:在32位系统中,每个进程拥有4g运行空间(虚拟的)。

3.每个进程运行在独立的4G内存空间中

4.父子进程中,数据相互独立,不受影响。

5.父子进程运行的顺序不确定。取决于操作系统先调度谁。

6.孤儿进程会被收养自动变成后台进程。

7.子进程结束,父进程没有收,是僵尸态

8.孤儿进程,子进程在,父进程不在。32位系统被init收养,64位系统被systemd收养。资源被回收。

相关推荐
ChinaRainbowSea40 分钟前
1. Linux下 MySQL 的详细安装与使用
linux·数据库·sql·mysql·adb
网络安全(华哥)1 小时前
网络安全服务实施流程管理 网络安全服务体系
运维·服务器·网络
致奋斗的我们1 小时前
Nginx反向代理及负载均衡
linux·运维·mysql·nginx·负载均衡·shell·openeluer
百锦再1 小时前
在Linux上创建一个Docker容器并在其中执行Python脚本
linux·python·docker
Ares-Wang1 小时前
负载均衡 方式
运维·负载均衡
钗头风2 小时前
3.Docker常用命令
运维·docker·容器
忧虑的乌龟蛋2 小时前
嵌入式 Linux:使用设备树驱动GPIO全流程
linux·服务器·嵌入式·imx6ull·gpio·点灯·pinctrl
朝九晚五ฺ2 小时前
【Linux探索学习】第三十弹——线程互斥与同步(上):深入理解线程保证安全的机制
linux·运维·学习
小林熬夜学编程2 小时前
【MySQL】第八弹---全面解析数据库表的增删改查操作:从创建到检索、排序与分页
linux·开发语言·数据库·mysql·算法
六六六六六66662 小时前
企业组网IP规划与先关协议分析
服务器·网络·tcp/ip