Linux进程管理

进程命令:ps

选项

        -A:显示所有程序。与-e具有同样的效果

        -a: 显示所有终端机下执行的程序,除了阶段作业领导者之外。(跟终端无关的程序)a: 显示现行终端机下的所有程序,包括其他用户的程序。

        -u: -u<用户识别码>:此选项的效果和指定"-U"选项相同。

        u:以用户为主的格式来显示程序状况。

        x:显示所有程序,不以终端机来区分,通常与a这个参数一起使用。

        -l或l(小写L):采用详细的格式来显示程序状况。

        -j或j:采用工作控制的格式显示程序状况。(jobs format)

        -f:显示UID,PPIP,C与STIME栏位。

常用组合

        ps aux <-------> 观察系统所有程序数据

        ps -lA <-------> 也能够观察所有系统的数据

        ps axjf <-------> 连同部分程序树状态

        ps -ef

工作任务管理

将指令丢到背景中执行

        tar -zcpf /tmp/etc.tar.gz /etc/ &

将目前的工作丢到背景中暂停

        tar -zcpf /tmp/etc.tar.gz /etc/

        ctrl+z

查看后台的工作状态

        jobs

        -l:显示进程号;

        -p:仅任务对应的显示进程号;

        -n:显示任务状态的变化;

        -r:仅输出运行状态(running)的任务;

        -s:仅输出停止状态(stoped)的任务。

将后台任务拿到前台处理

        fg 或者 jobs -l 先查看进程号   任何fg 后面加号

将前台任务拿到后台处理

        bg

管理后台的工具:kill

选项

        -a:当处理当前进程时,不限制命令名和进程号的对应关系;

        -l <信息编号>:若不加<信息编号>选项,则-l参数会列出全部的信息名称;

        -p:指定kill 命令只打印相关进程的进程号,而不发送任何信号;

        -s <信息名称或编号>:指定要送出的信息;

        -u:指定用户。

        -2:代表由键盘输入 [ctrl]+z 同样的动作;

        -9: 立即强制删除一个工作;

        -15:以正常的程序方式种植意向工作。与-9是不一样的。

离线管理:nohup

        nohup [选项与参数] --->在终端前台工作

        nohup [选项与参数] & --->在终端后台工作

动态实时观察:top

选项

        -b:以批处理模式操作;         -c:显示完整的治命令;         -d:屏幕刷新间隔时间;

        -I:忽略失效过程;          -s:保密模式;          -S:累积模式;

        -i<时间>:设置间隔时间;        -u<用户名>:指定用户名;        -p<进程号>:指定进程;

        -n<次数>:循环显示的次数。

交互命令

        h:显示帮助画面,给出一些简短的命令总结说明;        k:终止一个进程;

        i:忽略闲置和僵死进程,这是一个开关式命令;        q:退出程序;

        r:重新安排一个进程的优先级别;        S:切换到累计模式;

        s:改变两次刷新之间的延迟时间(单位为s),如果有小数,就换算成ms。输入0值则系统将不断刷新,默认值是5s;

        f或者F:从当前显示中添加或者删除项目;        o或者O:改变显示项目的顺序;

        l:切换显示平均负载和启动时间信息;        m:切换显示内存信息;

        t:切换显示进程和CPU状态信息;        c:切换显示命令名称和完整命令行;

        M:根据驻留内存大小进行排序;        P:根据CPU使用百分比大小进行排序;

        T:根据时间/累计时间进行排序;        w:将当前设置写入~/.toprc文件中。

查看详情

第一行( top... ):这一行显示的信息分别为:

目前的时间,亦即是 21:52:17 那个项目;

开机到目前为止所经过的时间,亦即是 up 9:43, 那个项目;

已经登陆系统的使用者人数,亦即是 2 users, 项目;

系统在 1, 5, 15 分钟的平均工作负载。代表的是1, 5, 15 分钟,系统平均要负责运行几个程序(工作)的意思。 越小代表系统越闲置,若高于 1 得要注意你的系统程序是否太过繁复了!

第二行( Tasks... ):显示的是目前程序的总量与个别程序在什么状态( running, sleeping, stopped, zombie )。 比较需要注意的是最后的 zombie 那个数值,如果不是 0 !好好看看到底是那个 process 变成僵尸了吧?

第三行( %Cpus... ):显示的是 CPU 的整体负载,每个项目可使用 ? 需要特别注意的是 wa 项目,那个项目代表的是I/O wait , 通常你的系统会变慢都是 I/O 产生的问题比较大!因此这里得要注意这个项目耗用 CPU 的资源喔! 另外,如果是多核心的设备,可以按下数字键 “1” 来切换成不同 CPU 的负载率。

        6.7% us — 用户空间占用CPU的百分比。

        0.4% sy — 内核空间占用CPU的百分比。

        0.0% ni — 改变过优先级的进程占用CPU的百分比

        92.9% id — 空闲CPU百分比

        0.0% wa — IO等待占用CPU的百分比

        0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比

        0.0% si — 软中断(Software Interrupts)占用CPU的百分比

        0.0% st ---虚拟cpu等待实际cpu的时间百分比

第四行:内存状态

        1863252 total — 物理内存总量(1.8GB)

        130344 used — 使用中的内存总量(127M)

        1236164 free — 空闲内存总量(1.2G)

        496744 buff/cache— 缓冲/缓存的内存量 (485M)

第五行:swap交换分区

        2097148 total — 交换区总量(2GB)

        0 used — 使用的交换区总量(0M)

        2097148 free — 空闲交换区总量(2GB)

        1496028 avail Mem— 可用内存总量(1.4GB)

第六行:这个是当在 top 程序当中输入指令时,显示状态的地方

        PID :每个 process 的 ID 啦!

        USER :该 process 所属的使用者;

        PR : Priority 的简写,程序的优先执行顺序,越小越早被执行;

        NI : Nice 的简写,与 Priority 有关,也是越小越早被执行;

        VIRT:进程使用的虚拟内存总量。VIRT=SWAP+RES

        RES:进程使用的、未被换出的物理内存大小。RES=CODE+DATA

        CODE  可执行代码占用的物理内存大小,单位kb

        DATA  可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb

        S:进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)

        %CPU : CPU 的使用率;

        %MEM :内存的使用率;

        TIME+ : CPU 使用时间的累加;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

自然醒o./

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值