一、进程查看及其管理工具 ps命令:报告当前进程的快照信息 ps - report a snapshot of the current processes. 选项: -A:显示所有进程与-e相同的效果 -a:不与终端相关的所有进程 -u:与用户相关的进程 -x:通常和a,u结合使用,显示出来比较全面的信息 -f:做一个更为完整的输出 常用的组合: ps -ef以完整的信息显示所有进程信息 ps -efH显示进程层次结构 ps -aux显示所有不与终端和与终端相关的进程完整信息 ps -axo pid,command,psr,pri,ni自定义显示其进程号、进程命令、优先级、nice值 命令演示: UID/PID/PPID:表示发起者、进程号、父进程号 C:代表CPU,单位为百分比 STIME:表示进程启动时间 TTY:登录者的终端位置 TIME:cpu的运行时间 CMD:处罚进程命令 命令演示: USER:进程的发起者 PID:进程号 %CPU:cpu的占用率 %MEM:内存的占用率VSZ:虚拟内存集 RSS:物理内存集 TTY:终端位置 STAT:进程状态信息 START:被触发的时间 TIME:cpu的使用时间 COMMAND:触发进程命令 ……………………………………………………………………………………………………………………… 注:STAT的常见状态: R:running,运行状态 S:interruptible sleeping,可终端休眠 D:uninterruptible sleeping,不可终端休眠 T:stop,停止状态 top命令: top - display Linux tasks:动态显示linux进程信息 top -17:24:30up2 days, 9:45, 3 users, load average: 0.00, 0.01, 0.05 top 当前系统时间系统启动到现在时间总长用户数平均负载 Tasks:364 total, 2 running,361 sleeping, 1 stopped, 0 zombie 显示进程总量与个别程序处在什么样的状态:运行可中断不可中断僵持状态、僵死状态 %Cpu(s): 0.3 us, 0.7 sy, 0.0 ni, 99.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st ……………………………………………………………………………………………………………………… 显示CPU的整体负载,具体如下: us:user space用于使用空间 sy:system space内核占用cpu百分比 ni:nice用户进程空间所改变过优先级的进程占用cpu的百分比 id:idle空闲cpu百分比 wa:waiti/0 等待i/o花费时间 hi:hardware interrupt si:software interrupt st:stolen,被虚拟内存偷走的百分比 KiB Mem: 1001332 total, 139212 free, 207732 used, 654388 buff/cache 物理内存占用使用情况 KiB Swap: 2098172 total, 2097620 free, 552 used. 531424 avail Mem 交换分区的使用情况 上面一行通常为空,只要在输入命令时才显示,在这可输入的命令有如下: P:以占据的cpu的百分比大小进程排序 M:以占据的memory大小进行排序 T:以cpu的运行时长进行排序 l:显示系统负载行 t:是否显示系统进程摘要信息及其cpu的负载状态 1:平均或单独显示cpu的负载状态 m:是否显示内存相关的状态信息 q:退出命令 s:修改延长刷新时间 k:终止指定进程 ……………………………………………………………………………………………………………………… top字段详解: PID:进程号 USER:进程发起者 PR:进程的优先级,越小越优先 NI:nice值,与priortity有关,越小越早被运行 VIRT:虚拟内存集 进程占虚拟内存空间 RES:物理内存集 进程占实际内存空间 SHR:进程与其他进程共享的内存大小 S:进程的状态信息 %CPU:cpu的使用百分比 %MEM:内存的使用百分比 TIME :cpu的使用时间的总时长 COMMAND:进程相关命令 htop命令:内部进程查看器 htop - interactive process viewer u:显示指定用户的进程 l:显示光标所在进程所打开的文件列表 s:显示光标所在进程执行的系统调用 a:绑定进程到指定的cpu #:快速定位光标之pid为#号的进程上 htop支持的选项: -d:延长时长 -u USERNAME:仅显示指定用户的进程 -s COLUMN:根据指定的字段进行排序 二、Linux进程及作业管理 1、进程管理 所谓的进程管理就是向进程发送一些控制信号,来完成对进程的管理控制,可通过kill命令来显示当前系统可用的信号,以及向进程发送信号指定。 kill -l:显示当前系统可用的信号 kill命令: 用于向进程发送信号,以实现对进程的管理 kill - terminate a process 每个信号的标识方式有三种: 1)信号的数字标识 2)信号的完整名称 3)信号的简写名称 向进程发信号: kill [-s signal|-p] [--] pid... kill -l [signal] 常见的信号有: 1)SIGHUB#无需关闭进程让其重读配置文件 kill -1 pid 2)SIGINT#终止正在运行的指令 相当于ctrl c kill -2 pid 9)SIGKILL#**的杀死正在运行的进程 kill -9 pid 15)SIGNTERM#安全终止运行中的进程 kill -15 pid 19)SIGSTOP #停止进程 killall命令:killall命令后面接进程名 killall - kill processes by name 2、作业管理 在每个用户登录系统之后每个工作进程都是当前bash的子进程,此时我们需要对那些进行管理,即将一部分作业放入后台运行,,同时在前台编辑一个配置文件,在编辑完配置文件后再将后台的作业任务调回前台运行。 如何将作业运行在后台: 1)ctrl z 2)command |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|