目录
一、进程状态查询命令
1.查看进程 ID 号:ps-ef(静态)
2.查看进程CPU占用率:top(动态)
二、什么是僵尸态
进程结束时,就从运行态变成僵尸态,所谓僵尸态,就是代表这个进程所占用的CPU资源和自身的任务结构体没有被释放,这个状态的进程就是僵尸态进程。
总结:
1)进程在暂停态时,收到继续的信号时,是切换到就绪态,而不是运行态。
2)程序的main函数执行return 0就会导致进程的退出,一定会变成僵尸态。
3)进程不可以没有父进程,也不能同时拥有两个父进程。
4)孤儿进程特征就是失去父进程时,会马上寻找继父,而不是等到孤儿进程变成僵尸态再找。
5)祖先进程一定要帮其他的进程回收资源。
三、进程的接口函数
1、单进程和多进程的区别
(1)单进程程序 -> 只能一行行代码去执行。
(2)多进程程序 -> 同时执行两行代码 -> 产生一个子进程,帮自己处理另外一件事情。
2、进程的创建
#include <sys/types.h>
#include <unistd.h>
//创建进程
pid_t fork(void);
例子:
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
int main(void)
{
//定义变量
pid_t id;
//产生一个子进程
id = fork();
while (1)
{
//这是一个父进程
if(id > 0)
{
//延时 确保子进程先执行,让父进程睡眠3S