程序和进程的关系
程序
保存在硬盘、光盘等介质中的可执行代码和数据
静态保存的代码
进程
在CPU及内存中运行的程序代码
动态执行的代码
父、子进程
每个程序可以创建一个或多个进程
ps命令
查看静态的进程统计信息
查看系统所有的进程
[root@server2 ~]# ps -aux 或 ps -elf //两者不可同时使用
a 显示当前终端下的所有进程信息
u 显示以用户为主的格式显示进程信息(nobody等为匿名的内置用户即程序型用户)
x 显示当前用户在所有终端下的进程信息 tty ps/0
-e 显示系统内的所有进程信息
-l 使用长格式显示进程信息
-f 使用完整格式显示进程信息
ps -aux
此时发现第一条命令不是init,而是其他,原因是:
init的命令在sbin目录下
[root@server2 ~]# cd /sbin/
[root@server2 sbin]# ls -l | grep init //发现init建立了软连接
lrwxrwxrwx. 1 root root 22 8月 11 22:39 init -> ../lib/systemd/systemd
-rwxr-xr-x. 1 root root 126608 8月 2 2017 iprinit
lrwxrwxrwx. 1 root root 16 8月 11 22:39 telinit -> ../bin/systemctl
进程列表详解
USER:表示当前用户所操作的进程
PID:进程号
%CPU:当前进程CPU的占用率
若某一个进程CPU占用达到80%以上,此时便要关注这个进程,判断是否为合法进程还是非法进程
若是合法进程:出现该问题,会有两种情况
1.你的硬件平台不足以支撑当前进程的运行 (资源有限)
2.合法进程被非法进程所捆绑
%MEM:内存占用
VSZ:虚拟内存 RSS:物理内存
TTY:表示终端 ?:表示位置
STAT:当前进程的状态
R:running,运行或可运行状态(在运行队列中)。正在运行或准备运行的进程。
S:interruptable sleeping, 可中断睡眠(等待事件完成)。正在睡眠的进程
D:unonterruptable sleeping, 不可中断的睡眠进程(通常为IO)。
T:stopped,停止或被追踪的进程。由作业控制信号停止。
Z:zombie,失败终止的(“僵死”)进程。
s:session leader,会话层状态。代表的父进程
N:低优先级进程
<: 高优先级进程
+:前台进程。在前台进程组中
l: 多线程进程。
举例:刚刚执行了ps -aux在前台下执行,有+号,即为前台执行的进程
root 3659 0.0 0.0 153148 1848 pts/1 R+ 20:19 0:00 ps -aux
START:启动时间
TIME:该进程占用CPU的总时间
COMMAND:进程的名称
附加:后台进行命令调用来查看,这里查看不到
ps -elf
-e 显示系统内的所有进程信息
-l 使用长格式显示进程信息
-f 使用完整格式显示进程信息
该命令也可以查看当前系统的进程,只不过进程列表发生改变