进程
什么是进程?
是计算机中的程序关于某数据集合上的一次运行活动,
是系统进行资源分配和调度的基本单位,是操作系统结构的基础。
静态方式: ps aux , ps -ef 会显示PPID父进程
动态方式: top htop (负载状态 w uptime)
指标: 判断CPU当前的状态
| STAT基本状态 | 描述 | STAT状态+符号 | 描述 |
|---|---|---|---|
| R | 进程运行 | s | 进程是控制进程, Ss进程的领导者,父进程 |
| S | 可中断睡眠 | < | 进程运行在高优先级上,S<优先级较高的进程 |
| T | 进程被暂停 | N | 进程运行在低优先级上,SN优先级较低的进程 |
| D | 不可中断进程 | + | 当前进程运行在前台,R+该表示进程在前台运行 |
| Z | 僵尸进程 | l | 进程是多线程的,Sl表示进程是以线程方式运行 |
监控进程状态
1.用ps命令查看当前的进程状态(静态)
| 状态 | 描述 |
|---|---|
| USER | 启动进程的用户 |
| PID | 进程运行的ID号 |
| %CPU | 进程占用CPU百分比 |
| %MEM | 进程占用内存百分比 |
| VSZ | 进程占用虚拟内存大小(单位kb) |
| RSS | 进程占用物理内存实际大小(单位kb) |
| TTY | 进程是由哪个终端运行启动的tty1 ,pts/0等 ?表示内核程序与终端无关 |
| STAT | 进程运行过程中的状态man ps (/STATE) |
| START | 进程的启动时间 |
| TIME | 进程占用CPU的总时间,单位秒 |
| COMMAND | 程序的运行指令,[方括号]属于内核态的进程.没有[]的是用户态进程 |
TOP的输出
前面两行信息
| 列名 | 含义 |
|---|---|
| 20:45:03 | 表示系统当前时间 |
| up 11:49 | 表示系统已经运行时间 |
| 5 users | 当前登录的用户数5个 |
| load average: 0.00,0.01,0.05 | 表示内核任务在1分钟、5分钟、15分钟的平均负载 |
| Tasks:159 total | 当前系统的进程总数 |
| 1 running | 当前系统中有4个正在运行的进程 |
| 157 sleeping | 当前系统中有284个休眠的进程 |
| 1 stopped | 停止进程数为1 |
| 0 zombie | 僵死进程数为0 |
进程信息
| 列名 | 含义 |
|---|---|
| PID | 进程id |
| PPID | 父进程id |
| UID | 进程所有者的用户id |
| USER | 进程所有者的用户名 |
| PR | 优先级 |
| NI | 负值表示高优先级,正值表示低优先级 |
| VIRT | 进程使用的虚拟内存总量,单位kb,VIRT=SWAP+RES |
| RES | 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA |
| SHR | 共享内存大小,单位kb |
| S | 进程状态 |
| COMMAND | 命令名/命令行 |
| %CPU | 进程占用CPU百分比 |
| %MEM | 进程占用内存百分比 |
| TIME+ | 进程使用的CPU时间总计,单位1/100秒 |
| CODE | 可执行代码占用的物理内存大小,单位kb |
| nDRT | 最后一次写入到现在,被修改过的页面数 |
| nFLT | 页面错误次数 |
| WCHAN | 若该进程在睡眠,则显示睡眠中的系统函数名 |
| Flags | 任务标志 |