实验四、内存监视(Linux)

TOP命令

Linux top命令用于实时显示 process 的动态。
使用权限:所有使用者。
在这里插入图片描述

下面解释这些都代表什么

第一行、概述

HH:mm:ss:当前的系统时间。
up xxx days, HH:mm:从本次开机到现在经过的时间。
x user:当前有几个用户登录到该机器。
load average:系统1分钟、5分钟、15分钟内的平均负载值。

第二行、进程计数

total:进程总数。
running:正在运行的进程数,对应状态TASK_RUNNING。
sleeping:睡眠的进程数,对应状态TASK_INTERRUPTIBLE和TASK_UNINTERRUPTIBLE。
stopped:停止的进程数,对应状态TASK_STOPPED。
zombie:僵尸进程数,对应状态TASK_ZOMBIE。

第三行、CPU使用率

us:进程在用户空间(user)消耗的CPU时间占比,不包含调整过优先级的进程。
sy:进程在内核空间(system)消耗的CPU时间占比。
ni:调整过用户态优先级的(niced)进程的CPU时间占比。
id:空闲的(idle)CPU时间占比。
wa:等待(wait)I/O完成的CPU时间占比。
hi:处理硬中断(hardware interrupt)的CPU时间占比。
si:处理软中断(software interrupt)的CPU时间占比。
st:当Linux系统是在虚拟机中运行时,等待CPU资源的时间(steal time)占比。

第四、五行、物理内存和交换空间

以物理内存为例。free命令也会打印出类似的信息。
total:内存总量。
free:空闲内存量。
used:使用中的内存量。
buff/cache:缓存和page cache占用的内存量。

以下所有行,显示进程详细信息

这里显示的数据列是可以改的,默认会显示如图中的12列。其含义分别如下:

PID:进程ID。
USER:进程所有者的用户名。
PR:从系统内核角度看的进程调度优先级。
NI:进程的nice值,即从用户空间角度看的进程优先级。值越低,优先级越高。
VIRT:进程申请使用的虚拟内存量。
RES:进程使用的驻留内存(即未被swap out的内存)量。
SHR:进程使用的共享内存量。
S:进程状态。R=running,S=interruptible sleeping,D=uninterruptible sleeping,T=stopped,Z=zombie。
%CPU:进程在一个更新周期内占用的CPU时间比例。
%MEM:进程占用的物理内存比例。
TIME+:进程创建后至今占用的CPU时间长度。
COMMAND:运行进程使用的命令。

在top命令的界面中,可以输入一些指令实现交互性的操作,下面列出一些比较常用的交互性操作。

CTRL+L:刷新整个屏幕,重新开始显示。
h:显示帮助。
q:退出top程序。
空格:立即刷新信息。
k:杀掉进程。输入k之后,会提示用户输入PID及要发送哪种信号。
r:重新设置进程优先级,即renice。输入r之后,会提示用户输入PID及新的nice值。
s:改变刷新周期。输入s之后,会提示用户输入新的刷新周期,单位为秒。
n:改变进程列表中的显示数量。
f:添加或删除进程列表中的列。输入f之后会显示字母与列的映射表,再输入对应字母就可以开关相应的列。
c:在COMMAND列中切换显示命令名和完整的命令行。
u:指定在进程列表中只显示对应用户的进程。
l:切换显示界面中第一行信息(时间和平均负载)。
t:切换显示界面中第二、三行信息(进程和CPU统计)。
m:切换显示界面中第四、五行信息(内存和交换空间)。
1:切换展开CPU统计信息。展开后,会分别显示CPU每个逻辑核心的占用。
N:按PID对进程排序。
M:按%MEM对进程排序。
P:按%CPU对进程排序。
T:按TIME+对进程排序。
H:切换在进程列表中显示所有线程信息。
——————————————————————————————————————————

top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]

d : 改变显示的更新速度,或是在交谈式指令列( interactive command)按 s
q : 没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行
c : 切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称
S : 累积模式,会将己完成或消失的子行程 ( dead child process ) 的 CPU time 累积起来
s : 安全模式,将交谈式指令取消, 避免潜在的危机
i : 不显示任何闲置 (idle) 或无用 (zombie) 的行程
n : 更新的次数,完成后将会退出 top
b : 批次档模式,搭配 “n” 参数一起使用,可以用来将 top 的结果输出到档案内
###实例
显示进程信息

 # top

显示完整命令

 # top -c

以批处理模式显示程序信息

 # top -b

以累积模式显示程序信息

 # top -S

设置信息更新次数

# top -n 2

//表示更新两次后终止更

新显示设置信息更新时间

# top -d 3

//表示更新周期为3秒显示

指定的进程信息

# top -p 139
//显示进程号为139的进程信息,CPU、内存占用率等

显示更新十次后退出

# top -n 10

使用者将不能利用交谈式指令来对行程下命令

# top -s

PS命令

概述

Linux中的ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用top命令。

使用

用法:ps [ 参数 ]

参数说明:

  • -A 显示所有进程(等价于-e)(utility)
  • -a 显示一个终端的所有进程,除了会话引线
  • -p pid 进程使用cpu的时间

示例

ps -aux
//最常用的方法是ps -aux,然后再利用一个管道符号导向到grep去查找特定的进程,
//然后再对特定的进程进行操作。
ps -ef
ps -l

pmap

名称:

pmap - report memory map of a process(查看进程的内存映像信息)

用法

pmap [ -x | -d ] [ -q ] pids…
pmap -V

选项含义

   -x   extended       Show the extended format. 显示扩展格式
   -d   device         Show the device format.   显示设备格式
   -q   quiet          Do not display some header/footer lines. 不显示头尾行
   -V   show version   Displays version of program. 显示版本

扩展格式和设备格式域:

    Address:  start address of map  映像起始地址
    Kbytes:  size of map in kilobytes  映像大小
    RSS:  resident set size in kilobytes  驻留集大小
    Dirty:  dirty pages (both shared and private) in kilobytes  脏页大小
    Mode:  permissions on map 映像权限: r=read, w=write, x=execute, s=shared, p=private (copy on write)  
    Mapping:  file backing the map , or '[ anon ]' for allocated memory, or '[ stack ]' for the program stack.  映像支持文件,[anon]为已分配内存 [stack]为程序堆栈
    Offset:  offset into the file  文件偏移
    Device:  device name (major:minor)  设备名
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值