Linux 中 /proc/meminfo 的含义
做嵌入式开发对内存泄露很敏感,而对泄露的位置更加关注。本文记录一下从网上搜集的/proc/meminfo各参数的含义。还不完整,待补完。
本文地址:https://segmentfault.com/a/1190000007114036
Reference
关于/proc/meminfo的理解
linux/Documentation/filesystems/proc.txt
说明
以下项目并不是每一个 Linux 系统上都有的,根据你的 Linux 设计和版本,可能多出或者少了某些项。
参考资料中的第二项是最新的 Linux 文档
| 项目名 | 说明 |
|---|---|
| MemTotal | 所有可用的 RAM 大小,物理内存减去预留位和内核使用 |
| MemFree | LowFree + HighFree |
| Buffers | 用来给块设备做缓存的大小(文件系统的 metadata, tracking in-flight pages) |
| Cached | 文件的缓冲区大小 |
| SwapCached | 已经被交换出来的内存。与 I/O 相关 |
| Active | 经常(最近)被使用的内存 |
| Inactive | 最近不常使用的内存。这很容易被系统移做他用 |
| Active(anon) | ? |
| Inactive(anon) | ? |
| Unevictable | ? |
| Mlocked | ? |
| HighTotal | 所有在 860MB(0x35C00000)以上的空间。主要是用户空间程序或缓存页 |
| LowTotal | 860MB 以下的空间。如果该空间用完了,系统可能会异常 |
| HighFree | 860MB 以上空间的可用空间 |
| LowFree | 860MB 以下空间的可用空间 |
| SwapTotal | 交换空间总和 |
| SwapFree | RAM 暂存在 Swap 中的大小 |
| Dirty | 等待写回的数据大小 |
| WriteBack | 正在写回的数据大小 |
| Mapped | 映射文件大小 |
| AnonPages | 映射到用户空间的非文件页表大小 |
| Shmem | ? |
| Slab | 内核数据结构缓存 |
| SReclaimable | Slab 的一部分。当内存压力大时,可以 reclaim |
| SUnreclaim | 不可以 reclaim 的 Slab |
| KernelStack | ? |
| PageTables | 最底层的页表的内存空间 |
| NFS_Unstable | 已经发给 NFS 服务器、但是尚未被确认(committed)写入到稳定存储的页表 |
| Bonce | ? |
| WritebackTmp | Memory used by FUSE for temporary writeback buffers |
| CommitLimit | CommitLimit = ('vm.overcommit_ratio' * Physical RAM) |
| Committed_AS | The amount of memory presently allocated on the system.(系统中目前分配了的内存?) |
| VmallocTotal | vmalloc 内存大小 |
| VmallocUsed | 已被使用的虚拟内存大小 |
| VmallocChunk | 在 vmalloc 区域中可用的最大的连续内存块的大小 |
Linux 中 /proc/meminfo 的含义的更多相关文章
- linux 中/proc 详解
proc 文件系统 在Linux中有额外的机制可以为内核和内核模块将信息发送给进程-- /proc 文件系统.最初设计的目的是允许更方便的对进程信息进行访问(因此得名),现在它被每一个有有趣的东西报告 ...
- Linux中/proc目录下文件详解
转载于:http://blog.chinaunix.net/uid-10449864-id-2956854.html Linux中/proc目录下文件详解(一)/proc文件系统下的多种文件提供的系统 ...
- Linux中/proc目录下文件详解(转贴)
转载:http://www.sudu.cn/info/index.php?op=article&id=302529 Linux中/proc目录下文件详解(一) 声明:可以自由转载本文, ...
- Android中proc/meminfo的详解(原)
今天在写到获取手机可用内存空间的总大小的时候,通过下面的方法去获取的时候,发现该方法最低支持的版本是16,这显然是不可取的. public static long getTotalSpace(Cont ...
- Linux cat /proc/meminfo 输出分析
$cat /proc/meminfoMemTotal: 2052440 kB //总内存MemFree: 50004 kB //空闲内存Buffers: ...
- Linux中 /proc/[pid] 目录各文件简析
Linux 内核提供了一种通过 proc 文件系统,在运行时访问内核内部数据结构.改变内核设置的机制.proc 文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间.它以文件系统的方式为访问系 ...
- linux中proc文件系统 -- ldd3读书笔记
1./proc 文件系统概述 /proc 文件系统是由软件创建,被内核用来向外界报告信息的一个文件系统./proc 下面的每一个文件都和一个内核函数相关联,当文件的被读取时,与之对应的内核函数用于产生 ...
- Linux中/proc/[pid]/status详细说明
[root@localhost ~]# cat /proc/self/status Name: cat State: R (running) SleepAVG: 88% Tgid: 5783 Pid: ...
- Linux 中 /proc/kcore为啥如此之大
What Is /proc/kcore?None of the files in /proc are really there--they're all, "pretend," f ...
随机推荐
- HDU 4635 (完全图 和 有向图缩点)
题目链接:HDU 4635 题目大意: 给你一个有向图,加有向边,使得这个图是简单有向图.问你最多加多少条有向边. 简单有向图: 1.不存在有向重边. 2.不存在图循环.(注意是不存在 “图” 循环 ...
- CodeForces 15D Map
洛谷题目页面传送门 & CodeForces题目页面传送门 题意见洛谷里的翻译.(注意翻译里有错误,应该是优先选上面的矩阵,在同一行的优先选左边的矩阵) 这题一看就会做啊 (以下设大矩阵是\( ...
- 洛谷 P1196 [NOI2002]银河英雄传说
题意简述 有30000列,每列都有一艘战舰,编号1~30000 有2种操作: 1.将一列的战舰运到另一列 2.询问两个战舰是否在同一列,如果是,求出它们之间的距离 题解思路 并查集, 维护每个点x离自 ...
- 洛谷 P3870 [TJOI2009]开关
题意简述 有n盏灯,默认为关,有两个操作: 1.改变l~r的灯的状态(把开着的灯关上,关着的灯打开) 2.查询l~r开着的灯的数量 题解思路 维护一个线段树,支持区间修改,区间查询 懒标记每次^1 代 ...
- (十五)c#Winform自定义控件-键盘(二)
前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. 开源地址:https://gitee.com/kwwwvagaa/net_winform_custom_control ...
- 聊一聊 SpringBoot 自动配置的原理
解析思路 我们建立好一个SpringBoot的工程后,我们将从启动类,SpringBootApplication开始进行探究. 开始解析 首先我们建立一个 Springboot的工程.找到启动类,我们 ...
- 《统计学习方法》极简笔记P2:感知机数学推导
感知机模型 输入空间是$\chi\subseteq\mathbb{R}^n$,输出空间是$y={+1,-1}$ 感知机定义为:$f(x)=sign(wx+b)$ 感知机学习策略 输入空间任一点$x_0 ...
- 前端小知识-html5
一.伪类与伪元素 为什么css要引入伪元素和伪类:是为了格式化文档树以外的信息,也就是说,伪类和伪元素是用来修饰不在文档树中的部分 伪类用于当已有元素处于的某个状态时,为其添加对应的样式,这个状态是根 ...
- 后端开发实践系列之三——事件驱动架构(EDA)编码实践
在本系列的前两篇文章中,笔者分别讲到了后端项目的代码模板和DDD编码实践,在本文中,我将继续以编码实践的方式分享如何落地事件驱动架构. 单纯地讲事件驱动架构(Event Driven Architec ...
- 编程题及解题思路(1,String)
题目描述 请实现一个算法,确定一个字符串的所有字符是否全都不同.这里我们要求不允许使用额外的存储结构. 给定一个string iniString,请返回一个bool值,True代表所有字符全都不同,F ...