Linux 进程

查看进程指令

  1. ps 查看某个时间点的进程
指令 意思
ps -l 查看自己的进程
ps -aux 查看系统所有的进程
ps -aux | grep threadx 查看特定的进程
  1. netstat 查看占用端口的进程
  • netstat -anp | grep port
  • kill -9 port 关闭指定端口
  1. top 实时显示进程信息
  • top -d time 进程信息刷新时间
  • top指令详情页,属性含义
名称 含义
up 开机后系统使用时间
zombie 僵尸进程
PID 进程号
PPI 父进程号
user 进程所有者的用户名
PR 优先级
NI nice值,正值表示高优先级
VIRT 进程使用的虚拟内存总量,单位KB VIRT=swap+RES
RES 进程使用的未被换出的物理内存大小单位kbRES=CODE+DATA
CODE 可执行代码占用的物理内存,单位kb
DATA 可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
SHR 共享内存大小
%CPU 上次更新时间到现在的CPU时间占用比
%MEM 进程使用的物理内存百分比
  1. 进程状态
状态 说明
R running or runnable (on run queue)正在执行或者可执行,此时进程位于执行队列中
D uninterruptible sleep (usually I/O)不可中断阻塞,通常为 IO 阻塞。
S interruptible sleep (waiting for an event to complete)可中断阻塞,此时进程正在等待某个事件完成。
Z zombie (terminated but not reaped by its parent)僵死,进程已经终止但是尚未被其父进程获取信息
T stopped (either by a job control signal or because it is being traced)结束,进程既可以被作业控制信号结束,也可能是正在被追踪。
  1. 孤儿进程
  • 当一个父进程退出,而它的一个或多个子进程还在运行,那么这些子进程将成为孤儿进程。孤儿进程将被 init 进程(进程号为 1)所收养,并由 init 进程对它们完成状态收集工作。由于孤儿进程会被 init 进程收养,所以孤儿进程不会对系统造成危害。
  1. 僵尸进程
  • 一个子进程的进程描述符在子进程退出时不会释放,只有当父进程通过 wait() 或 waitpid() 获取了子进程信息后才会释放。如果子进程退出,而父进程并没有调用 wait() 或 waitpid(),那么子进程的进程描述符仍然保存在系统中,这种进程称之为僵尸进程
  • 系统所能使用的进程号是有限的,如果产生大量僵尸进程,将因为没有可用的进程号而导致系统不能产生新的进程。
  • 要消灭系统中大量的僵尸进程,只需要将其父进程杀死,此时僵尸进程就会变成孤儿进程,从而被 init 进程所收养,这样 init 进程就会释放所有的僵尸进程所占有的资源,从而结束僵尸进程。
原文地址:https://www.cnblogs.com/luckyCoder/p/12732763.html