赞
踩
目录
程序:是一串没有运行的代码。程序是保存在硬盘、光盘等介质中的可执行代码和数据,是文件中级静态保存的代码。
进程:是一个运行中代码。每个程序可以创建一个或多个进程。 父进程先启动--->然后再启动子进程--->分配资源:父进程给子进程分配资源,结束运行性:子进程先结束--->父进程收回子进程的资源之后,父进程才会终止。
线程(thread):就是程序的副本,就是把进程复制了一份,只复制了进程的部分代码。真正执行的是线程而不是进程。相当于是进程的打工仔。
a:显示终端上的所有进程,包括其它用户的进程。
u:表示列出进程的用户。
x:显示所有终端的进程。
各列的解释:
USER:进程的用户。
PID:进程的ID。
%CPU:进程占用的CPU资源的百分比,数值越大,表明占用的资源越多。
%MEM:占用物理内存的百分比。
VSZ:该进程使用的虚拟内存量 (KB)。
虚拟内存简单来说就是把外存当作内存来使用,便于缓解物理内存压力的不足。
RSS:该进程占用的物理内存量 (KB)。
TTY:启动进程的终端名。不是从终端启动的进程则显示为"?"
STAT:该进程的状态(
START:该进程被触发启动时间。
TIME:该进程实际使用CPU运行的时间。
COMMAND:进程的启动命令。
查看静态的进程统计信息:ps -elf
F 进程标志,说明进程的权限,常见的标志有两个: 1:进程可以被复制,但是不能被执行; 4:进程使用超级用户权限;
S 进程状态。具体的状态和"psaux"命令中的 STAT 状态一致;
UID 运行此进程的用户的 ID;
PID 进程的 ID;
PPID 父进程的 ID;
C 该进程的 CPU 使用率,单位是百分比;
PRI 进程的优先级,数值越小,该进程的优先级越高,越早被 CPU 执行;系统定义不可以人为修改
NI 进程的优先级,数值越小,该进程越早被执行;可以人为修改
ADDR 该进程在内存的哪个位置;
SZ 该进程占用多大内存;
WCHAN 该进程占用多大内存;
TTY 该进程由哪个终端产生;
TIME 该进程占用 CPU 的运算时间,注意不是系统时间;
CMD 产生此进程的命令名;
11:06:48 系统时间
up 1:22 系统已运行时长
1 user 当前登录用户数
load average: 0.02,0.02,0.05
系统负载,即单位时间内系统处理的任务数,后面三个数值分别为1分钟、5分钟、15分钟前到现在的平均值
Tasks 总进程数
running 正在运行的进程数
sleeping 休眠的进程数
stopped 中止的进程数
zombie 僵死的进程数
us:用户占用
sy:内核占用
ni:优先级调度占用
id:空闲CPU,要了解空闲的CPU百分比,主要看%id部分
wa:磁盘读写性能 iostat——查看读写性能
hi:1分钟的CPU使用率
si:5分钟的CPU使用率
st:15分钟的CPU使用率
total 总内存空间
free 空闲内存
used 已用内存
butt/cache 物理内存和交换内存的缓冲区总和
total 总交换空间
free 空闲交换空间
used 已用交换空间
avail Mem 可用物理空间
PID 进程id
USER 进程所有者的用户名
PR 优先级——系统优先级
NI 谦让度值。负值表示高优先级,正值表示低优先级——认为设置的优先级
VIRT 进程使用的虚拟内存总量,单位kb
RES 进程使用的物理内存大小,单位kb
SHR 共享内存大小,单位kb
S 进程状态
%CPU 上次更新到现在的CPU时间占用百分比
%MEM 进程使用的物理内存百分比
TIME 进程使用的CPU时间总价,单位1/100秒
COMMAND 命令名/命令行
c键:根据CPU使用百分比大小进行排序
q键:退出top系统
数字1键:显示CPU个数和状态
CentOS系统,tty1表示图形界面,tty2-tty6表示文字界面
pts说明是用远程工具连接的,比如xshell,后面的数字代表登录的时间顺序,越小证明登录的越早
服务名可能会重复,慎用!一般都是用PID来删除执行的过程,因为PID是唯一的。
我们经常会用到kill命令去杀死一个进程,但是有事会出现kill不成功的现象,这就是要用到kill -9。之所以这两个命令会有区别是因为所发送的信号(Siqnal)是不同的。默认情况下kill命令的参数为-15。
kill -15代表的信号为SIGKTERM,这是告诉进程你需要被关闭,请自行停止运行并退出;
kill -9代表的信号是SIGKILL,表示进程被终止,需要立即退出;
因此kill -9表示强制杀死该进程,这个信号不能被捕获也不能被忽略。
一个进程结束了,但是如果该进程的父进程已经先结束了,那么该进程就不会变成僵尸进程,因为每个进程结束的时候,系统都会扫描当先系统中运行的所有进程,看看没有哪个进程是刚刚结束的这个进程的子进程,如果是的话,就由Init来接管它,成为它的父进程,子进程退出后init会回收其占用的相关资源。
但是当子进程比父进程先结束,而父进程又没有回收子进程,释放了进程占用的资源,此时子进程将成为一个僵尸进程。
crontab 命令用于维护 crontab 文件或 cron 表。cron 表包含要在系统上定期运行的命令列表。每个用户都可以有一个 crontab,我们可以在其中创建和修改任务。但是,Cron只能用于一分钟的最小间隔,即如果要间隔10秒运行一次命令,则需要创建60s/10s =6 个cron条目,如果是每隔20秒则创建3个cron条目,每隔30秒则创建2个cron条目。
代表意义 分钟 小时 天 月份 周 命令
数字范围 0~59 0~23 1~31 1~12 0~7 需要执行的命令
#周的数字为0或7时,都代表"星期天"的意思。
crontab
每隔一天:
* * */2 * * 命令
crontab命令示例:
- */2 * * * * cat /etc/passwd > /opt/abc.txt
- #每两分钟就将/etc/passwd覆盖写入/opt/abc.txt中
crontab -e 编写定时任务
* * * * * 分 时 日 月 周 执行的命令
crontab -l 查看本机设置的所有的定时任务
crontab -r 删除定时任务,如果有多个定时任务,crontab -e进入定时任务,按照vim的操作方式删除对应的定时任务。
crontab其他使用方法可以参考这篇文章:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。