Linux命令系列之top——里面藏着很多鲜为人知的宝藏知识简介top命令是我们经常用来查看系统信息的一个指令,它提供了一个动态的而且是实时的借口帮助我们去查看系统执行时的进程、线程和系统参数的信息 。
top命令输出内容详细剖析首先我们先看一下top命令的输出结果:
![Linux命令系列之top——里面藏着很多鲜为人知的宝藏知识](http://img.zhejianglong.com/231018/01335H526-0.png)
文章插图
我们现在一一分析这些字段的含义:
第一行
12:53:04
表示当前时间 , 也就是当前真实的时间 。
up 157 days 13:35
,表示这个系统从启动到现在的时间,上图显示的含义就是这个系统从157天13个小时35分钟以前就启动了 。
5 users
表示当前在使用这个机器的用户数量 。
load average: 0.00, 0.00, 0.00
,这个值表示系统过去1分钟 , 5分钟,15分钟的系统负载 。现在有一个问题就是,什么是这里谈到的系统负载 。所谓系统负载,我们拿一分钟来举例子,我们将一分钟一个CPU时间定义为t , 在这一分钟之内总共消耗的CPU时间为c , 那么在这一分钟之内的负载为\(\frac{c}{t}\) , 需要注意的是这个消耗的CPU时间c是可以大于t的 , 因为一个程序可能使用了多个CPU(并发程序,也可能是多个进程同时在使用不同的CPU) 。
文章插图
第二行
- 第二行主要表示当前系统当中任务的相关情况,所谓任务就是当前系统当中一共有多少个进程 。
652 totoal
, 这个表示当前系统当中一共有652个进程 。
1 runnung
, 表示有一个进程正在执行 。
651 sleeping
, 表示有651个进程处于睡眠状态,也就是不需要使用CPU的状态 。
0 stoped
,表示有0个进程处于stopped
状态 , 这个状态就是被停下来的进程 , 比如说通过ctrl+z让一个进程停下来,你可以通过给这个进程发送一个信号SIGCONT让这个进程恢复执行 , linux当中进程的状态变换如下所示:
文章插图
0 zombie
,这个就表示僵尸进程的个数,这里是0个僵尸进程,所谓僵尸进程就是一个进程执行完成了,对于C程序来说你可以理解为你的main
函数执行完成了(这个不够准确,其实main
函数执行完成之后还会有其他函数需要执行,但是这里你可以大致这么理解),如果这个时候(函数执行完成),这个进程的父进程却没有接受子进程发送给他的信号(子进程在执行完成之后会给父进程发送信号 , 父进程需要通过wait等系统调用去接受这个信号) , 那么子进程就处于zombie状态 , 处于这个状态的进程就需要父进程接受它发送的信号 , 然后子进程的系统资源就可以被回收了,然后子进程会彻底消亡 。
Ready
, 当进程被创建完成之后他就处于Ready
状态,在这个状态下的进程只差CPU了 , 也就是说,他现在只需要被操作系统调度获取CPU然后他就可以执行了 。
Running
, 当进程从Ready
状态获取CPU的执行权的时候 , 进程就处于Running状态,这个状态表示进程正在执行 。
traced
,这个状态主要是一个进程处于调试状态,这个状态需要调试的进程给这个被调试的进程发送信号,然后和这个进程才可以继续执行 。
Zombie
, 当进程执行完成之后 , 父进程接受子进程发送的信号之前,进程就处于这个状态 。
Suspended
,这个状态表示进程被挂起 , 当进程请求IO的时候,需要阻塞等待IO请求完成,这个时候的进程状态就是推荐阅读
- Linux命令全解
- 小米MIX4最新消息_小米MIX4配置曝光
- centos7系统资源限制整理
- 大数据常用的Linux命令
- 整理一些Windows桌面运维常用的命令,并且整合成脚本
- csv2ECharts,**一行命令查看数据趋势图 工具分享**
- 工作7年收集到的git命令
- cmd常用命令介绍
- 学习ASP.NET Core Blazor编程系列五——列表页面
- 苹果13系列电池百分比怎么调_电池百分比设置方法