进程管理
进程的概念
-
进程是什么
进程是已启动的可执行程序的运行实例,进程有以下组成部分:
• 已分配内存的地址空间;
• 安全属性,包括所有权凭据和特权;
• 程序代码的一个或多个执行线程;
• 进程状态。
程序: 二进制文件,静态 /usr/bin/passwd ,/usr/sbin/useradd
进程: 是程序运行的过程, 动态,有生命周期及运行状态。 -
进程的生命周期
父进程复制自己的地址空间(fork)创建一个新的(子)进程结构。
每个新进程分配一个,唯一的进程 ID (PID),满足跟踪安全性之需。
任何进程都可以创建子进程。
所有进程都是第一个系统进程的后代:
Centos5/6系统进程: init
Centos7系统进程: systemd -
进程状态产生的原因
在多任务处理操作系统中,每个CPU(或核心)
在一个时间点上只能处理一个进程。
在进程运行时,它对CPU 时间和资源分配的要求会不断变化,
从而为进程分配一个状态,它随着环境要求而改变。 -
进程的状态
进程的管理
1.进程管理的目标
- PID,PPID
- 当前的进程状态
- 内存的分配情况
- CPU和已花费的实际时间
- 用户UID,它决定进程的特权
- 进程名称
- 静态查看进程
- PS:precess status 进程 状态
[root@localhost ~]# ps aux |head -2
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 1.7 0.2 193772 2624 ? Ss 18:22 0:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
user:运行程序的用户账户名
PID:进程的序号,id,身份证号
%CPU:进程的cpu消耗百分比
%MEM:进程的内存消耗百分比
VSZ:虚拟内存占用大小
RSS:实际占用内存大小
TTY:进程开启的终端
STAT:当前进程的状态
START:进程开始的时间
TIME:进程CPU使用时间
COMMAND:执行命令的名字,进程文件 进程名
- 进程的排序
语法:ps aux --sort-%cpu
以CPU占比降序排列(减号是降序)
[root@localhost ~]# ps aux --sort -%cpu
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 2123 1.7 18.6 3035224 185356 ? Sl 18:23 0:24 /usr/bin/gnome-shell
root 1322 0.6 5.2 341880 52004 tty1 Ssl+ 18:22 0:09 /usr/bin/X :0 -background none -noreset -audit 4 -verbose -auth /r
root 2577 0.3 2.2 697884 22488 ? Sl 18:23 0:04 /usr/libexec/gnome-terminal-server
root 726 0.2 0.1 324680 1868 ? Ssl 18:22 0:02 /usr/bin/vmtoolsd
root 2388 0.2 0.9 640756 9760 ?