赞
踩
一、进程的基本概念
进程的定义
进程与程序的区别
二、进程的作用
进程的主要作用是实现并发,提高系统资源的利用率和系统的处理能力。
三、进程的分类
四、进程的状态
五、进程的调度
内核的主要功能之一是完成进程调度,宏观上并行,微观上串行。
六、Linux 中进程的管理
Linux 中的 PCB(process control block)
task_struct
,包含进程标识符(PID)、父进程 ID 号(PPID)、当前工作路径、umask、进程打开的文件列表、信号相关设置、用户 ID 和组 ID、进程资源的上限等信息。stdin
、stdout
、stderr
。进程的一生
fork
实现,或者有自己的任务(如 shell 执行命令)通过 fork + exec
实现。七、查询进程相关命令
ps aux | grep 进程名
:查看进程相关信息,包括就绪态、运行态(R)、睡眠态、等待态、停止态(T)、僵尸态(Z)、结束态。top
:根据 CPU 占用率查看进程相关信息。kill
和 killall
:发送信号来控制进程,kill PID
发送信号给指定 PID 的进程,默认接收者关闭;kill -9 进程 PID 号
强制关闭进程;kill -l
查看信号列表;killall -9 进程名
发送信号给指定进程名对应的所有进程。pstree -sp [pid 号]
:查看某个进程的父子关系。八、进程相关原语和函数
fork()
函数
getpid
函数
pid_t getpid(void)
:获得调用该函数进程的 PID。getppid
函数
pid_t getppid(void)
:获得调用该函数进程的父进程 PID 号。九、进程的应用场合
fork + exec
实现。十、进程操作文件
设计程序动态生成两个进程分别向相同文件写入不同数据时,需注意父子进程操作同一文件,可通过 open
打开文件,fork
创建进程,在不同的进程分支中通过 sprintf
和 write
写入数据,并使用 getpid
获取进程 ID 及时间来标识。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。