cat /proc/meminfo 显示系统内存使用概况,包括总内存、空闲内存、缓存等。
cat /proc/buddyinfo 显示Buddy系统的内存碎片情况,按order(2^n页)显示可用内存块数量。
cat /proc/iomem 显示物理内存地址空间的分布情况
pmap -x <pid> 显示指定进程的内存映射详情,包括地址范围、权限、映射文件等。
cat /proc/<pid>/maps 显示指定进程的内存映射信息。
cat /proc/slabinfo 显示SLAB分配器的使用情况,包括各种缓存的对象数量。
slabtop 动态显示SLAB缓存使用情况(类似top命令)。
msh > list_mem 显示系统内存堆的使用情况,包括总大小、已使用、最大空闲块等。
msh > list_memp 显示内存池(mempool)的使用情况。
void rt_system_memheap_info(struct rt_memheap_item* info);
获取内存堆的详细信息。
如果启用了FinSH组件,可以使用以下命令:
free 显示内存使用概况。
memtrace 显示内存分配跟踪信息(需开启相关配置)。
功能 | Linux | RT-Thread |
---|---|---|
查看物理内存分布 | /proc/meminfo, /proc/buddyinfo | list_mem |
查看进程内存映射 | pmap, /proc//maps | 不支持(无进程概念) |
查看SLAB分配 | /proc/slabinfo, slabtop | 不支持(通常不使用SLAB) |
实时监控 | vmstat, slabtop | list_mem, memtrace |
内存池信息 | 无直接对应 | list_memp |
RT-Thread的内存查看功能相对简单,主要针对嵌入式系统的需求设计,而Linux提供了更全面的内存信息查看工具。
加油