Linux的进程管理
1.进程定义
程序是静态的代码文件
进程是指程序运行时的形态
进程是程序的一个副本
进程是有生命周期的(准备期,运行期,终止期)
进程&线程的区别
进程是资源调用的最小单位 线程是进程的最小单位
程序执行流是从上到下贯穿运行的
当进程是多任务,cpu是多核心,多任务应该同时被每个核心处理,每个核心处理的任务叫线程
线程资源是共享的
进程状态
R(TAKS_RUNNING) 可执行态(running,ready)
S(TASK_INTRRUPTABLE) 可唤醒休眠
D(TASK_UNINTRRUPTABLE) 不可唤醒休眠
T(TASK_STOP) 暂停状态
Z(EXIT_ZOMBIE) 僵死态
2.进程查看命令
gnome-system-monitor 图形进程查看工具
ps 进程查看
ps 命令的三种执行风格 unix bsd GNU
a 与终端相关的进程(当用户登陆系统后产生的进程 都是带终端的)
x 与终端无关的进程
u 用户信息归类的查看方式
f 进程层级关系
o 显示指定参数 pid,comm,nice,pri,pcpu,ppid,stat,user,group
-e 显示所有进程
-f 显示信息的完整格式
-H 显示进程的层级结构
-o 显示指定参数
--sort= 排序 +正序 -倒序
ps ax显示信息如下:
PID 进程id
TTY 进程用到的终端
STAT 进程状态
TIME 进程占用cpu时长
COMMAND 进程名称
USER 进程所有人
ps aux显示信息如下:
PID 进程id
%CPU 进程使用cpu的用量
%MEM 进程所用到的内存用量
VSZ 进程使用的虚拟内存大小
RSS 进程常驻内存中的数据大小
TTY 进程用到的终端
STAT 进程状态
START 进程运行时