1869|7

6477

帖子

8

TA的资源

管理员

楼主
 

阅读打卡第六站: 内存管理之实战案例分析 ——《奔跑吧Linux内核(第2版)卷1》 [复制链接]

>>点此进入阅读打卡总站,查看所有打卡题目

 

阅读小伙伴们,第六站打卡 题目开启:@paope    、@费炜@lemonboard@chejia12@maskmoo@硬核王同学@小默叔叔@yin_wu_qing@meiyao

预计阅读完《奔跑吧Linux内核(第2版)卷1:基础架构》第六章可解答。

作者笨叔给了的本章打卡题目:

1.Linux内核的内存管理模块都对哪些页面进行了统计?
2.请解释/proc/meminfo节点中每一项的含义。
3.为什么/proc/meminfo节点中的MemTotal不等于QEMU虚拟机中分配的内存大小?

 

加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身

最新回复

1. Linux内核的内存管理模块都对哪些页面进行了统计? | 统计项  | 描述(实现)  | | ------------ | ------------ | | NR_FREE_PAGES         | 空闲页面数量 | | NR_ZONE_LRU_BASE         | 用于LRU_BASE的统计。LRU链表是从LRU_BASE开始标记的 | | NR_ZONE_INACTIVE_ANON         | 不活跃匿名页面数量 | | NR_ZONE_ACTIVE_ANON         | 活跃匿名页面数量 | | NR_ZONE_INACTIVE_FILE         | 不活跃文件映射页面数量 | | NR_ZONE_ACTIVE_FILE         | 活跃文件映射页面数量 | | NR_ZONE_UNEVICTABLE         | 不可回收的页面数量 | | NR_ZONE_WRITE_PENDING         | 脏页、正在回写以及不稳定的页面数量 | | NR_MLOCK         | 使用mlock()锁住的页面数量 | | NR_PAGETABLE         | 用于页表的页面数量 | | NR_KERNEL_STACK_KB         | 用于内核栈的页面数量 | | NR_BOUNCE         | 跳跃页面的数量 | | NR_ZSPAGES         | 用于zsmalloc机制的页面数量 | | NR_FREE_CMA_PAGES         | CMA中的空闲页面数量 | | NR_VM_ZONE_STAT_ITEMS        ZONE | 中vm_stat计数值的项数 | vm_numa stat 计数值的统计项 | 统计项  | 描述  | | ------------ | ------------ | | NUMA HIT         | 表示在预设的内存节点中分配的物理页面的数量 | | NUMA MISS         | 表示在预设的内存节点中无法分配的物理页面的数量 | | NUMA _FOREIGN         | 理想状况下在预设的内存节点中分配内存,但也可以在其他节点分配内存 | | NUMA_INTERLEAVE_HIT        | 表示在所有的内存节点中交织地分配内存,但首先在这个内存管理区中分配物理页面 | | NUMA LOCAL         | 表示在本地内存节点分配的物理页面的数量 | | NUMA OTHER         | 表示在本地内存节点以外的节点中分配的物理页面的数量 | | NR VM NUMA STAT ITEMS        | 表示 vm numa stat 数值中的统计项数 | 2.请解释/proc/meminfo节点中每一项的含义 | 统计项  | 描述  | | ------------ | ------------ | | MemTotal         | 系统当前可用物理内存总量,通过读取全局变量_totalram_pages来获得 | | MemFree         | 系统当前剩余空闲物理内存,通过读取全局变量vm_zone_stat[]数组中的NR_FREE_PAGES来获得 | | MemAvailable         |  系统中可使用页面的数量,有si_mem_available()函数来计算。公式为Available=memfree+pagecache+reclaimable-totalreserve_pages。这里包括了空闲页面(memfree)、文件映射页面(pagecache)、可回收的页面(reclaimable),最后减去系统保留的页面 | | Buffers         | 用于块层的缓存,有nr_blockdev_pages()函数来计算 | | Cached         | 用于页面高速缓存的页面。计算公式为Cached=NR_FILE_PAGES-swap_cache-Buffers | | SwapCached         | 这里统计交换缓存的数量,交换缓存类似与内容缓存,只不过它对应的是交换分区,而内容缓存对应的是文件。这里表示匿名页面曾经被交换出去,现在又被交换回来,但是页面内容还在交换缓存中。 | Active         | 活跃的匿名页面(LRU_ACTIVE_ANON)和活跃的文件映射页面(LRU_ACTIVE_FILE) | | Inactive         | 不活跃的匿名页面(LRU_INACTIVE_ANON)和不活跃的文件映射页面(LRU_INACTIVE_FILE) | | Active | (anon)        活跃的匿名页面(LRU_ACTIVE_ANON) | | Inactive | (anon)        不活跃的匿名页面(LRU_INACTIVE_ANON) | | Active | (file)        活跃的文件映射页面(LRU_ACTIVE_FILE) | | Inactive | (file)        不活跃的文件映射页面(LRU_INACTIVE_FILE) | | Unevictable         | 不能回收的页面(LRU_UNEVICTABLE) | | Mlocked         | 不会被交换到交换分区的页面,由全局的vm_zone_stat[]中的NR_MLOCK来统计 | | SwapTotal         | 交换分区的大小 | | SwapFree         | 交换分区的空闲空间大小 | | Dirty         | 脏页的数量,由全局的vm_node_stat[]中的NR_FILE_DIRTY来统计 | | Writeback         | 正在回写的页面数量,由全局的vm_node_stat[]中的NR_WRITEBACK来统计 | | AnonPages         | 统计有反向映射(RMAP)的页面,通常这些页面都是匿名页面并且都映射到了用户空间,但是并不是所有匿名页面都配置了反向映射,如部分的shmen和tmpfs页面就没有设置反向映射。这个计数由全局的vm_node_stat[]中的NR_ANON_MAPPED来统计 | Mapped         | 统计所有映射到用户地址空间的内容缓存页面,由全局的vm_node_stat[]中的NR_FILE_MAPPED来统计 | | Shmem         | 共享内存(基于tmpfs实现的shmem、devtmfs等)页面的数量,由全局的vm_node_stat[]中的NR_SHMEM来统计 | | KReclaimable         | 内核可回收的内存,包括可回收的slab页面(NR_SLAB_RECLAIMABLE)和其他的可回收的内核页面(NR_KERNEL_MISC_RECL |AIMABLE) | Slab         | 所有slab页面,包括可回收的slab页面(NR_SLAB_RECLAIMABLE)和不可回收的slab页面(NR_SLAB_UNRECLAIMABLE) | | SReclaimable         | 可回收的slab页面(NR_SLAB_RECLAIMABLE) | | SUnreclaim         | 不可回收的slab页面(NR_SLAB_UNRECLAIMABLE) | | KernelStack         | 所有进程内核栈的总大小,由全局的vm_zone_stat[]中的NR_KERNEL_STACK_KB来统计 | | PageTables         | 所有用于页表的页面数量,由全局的vm_zone_stat[]中的NR_PAGETABLE来统计 | | NFS_Unstable         | 在NFS中,发送到服务器端但是还没有写入磁盘的页面(NR_UNSTABLE_NFS) | | WritebackTmp         | 回写过程中使用的临时缓存(NR_WRITEBACK_TEMP) | | VmallocTotal         | vmalloc区域的总大小 | | VmallocUsed         | 已经使用的vmalloc区域总大小 | | Percpu         | percpu机制使用的页面,由pcpu_nr_pages()函数来统计 | | AnonHugePages         | 统计透明巨页的数量 | | ShmemHugePages         | 统计在shmem或者tmpfs中使用的透明巨页的数量 | | ShmemPmdMapped         | 使用透明巨页并且映射到用户空间的shmem或者tmpfs的页面数量 | | CmaTotal         | CMA机制使用的内存 | | CmaFree         | CMA机制中空闲的内存 | | HugePages_Total         | 普通巨页的数量,普通巨页的页面是预分配的 | | HugePages_Free         | 空闲的普通巨页的数量 | | Hugepagesize         | 普通巨页的大小,通常是2MB或者1GB | | Hugetlb         | 普通巨页的总大小,单位是KB | 3.为什么/proc/meminfo节点中的MemTotal不等于QEMU虚拟机中分配的内存大小? Kernel 静态使用的内存(如内核代码等)在启动阶段需要用到,其没有计入MemTotal统计项中,而是统计到reserved选项中。  详情 回复 发表于 2024-1-15 19:10
点赞 关注
个人签名微信搜索公众号“EEWORLDBBS”快去添加关注吧!

回复
举报

6977

帖子

11

TA的资源

版主

沙发
 

管管同学也太负责了吧,组织这么好的问题,下次我也来参与一下。

 
 

回复

19

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(中级)

4
 

1.Linux内核的内存管理模块都对哪些页面进行了统计?

答:

Linux内核的内存管理模块通常对以下页面进行统计:

  1. 常规页面(Normal pages):这包括常规的用户空间和内核空间页面。
  2. 匿名页面(Anonymous pages):这是在用户空间中动态分配的页面,如堆分配、栈分配等。
  3. 文件页面(File pages):这是从文件中映射到用户空间的页面,包括代码、数据、共享内存、mmap映射等。
  4. 页缓存页面(Page cache pages):这是已从文件系统读取到内核页缓存中的文件页面。
  5. Swap页面(Swap pages):这是被交换到磁盘交换空间中的页面。
  6. 内存映射IO页面(IO-mapped pages):这是通过I/O映射的设备地址空间访问的页面。
  7. 内存管理元数据页面(Metadata pages):这是用于保存内存管理数据结构的页面,如页面描述符、页表等。

2.请解释/proc/meminfo节点中每一项的含义。

答:

/proc/meminfo是一个虚拟文件系统节点,它提供了有关系统内存使用的详细统计信息。以下是每个字段的解释:

  1. MemTotal:系统总内存量(单位为KB)。
  2. MemFree:未被分配的空闲内存量(单位为KB)。
  3. MemAvailable:对非特权进程可用的估计内存量(单位为KB)。主要考虑了内核页缓存的占用情况,该字段在内核版本4.14之后引入。
  4. Buffers:用于块设备I/O缓冲的内存量(单位为KB)。
  5. Cached:用于文件缓存的内存量(单位为KB)。
  6. SwapCached:交换空间中的缓存页面量(单位为KB)。
  7. Active:活跃内存量,表示最近使用的内存(单位为KB)。
  8. Inactive:非活跃内存量,表示最近未使用的内存(单位为KB)。
  9. Active(anon):活跃的匿名内存量,包括用户空间堆栈等(单位为KB)。
  10. Inactive(anon):非活跃的匿名内存量,包括用户空间堆栈等(单位为KB)。
  11. Active(file):活跃的文件页面内存量(单位为KB)。
  12. Inactive(file):非活跃的文件页面内存量(单位为KB)。
  13. Unevictable:无法驱逐的内存量,通常是被锁定的内存(单位为KB)。
  14. Mlocked:被mlock系统调用锁定的内存量(单位为KB)。
  15. SwapTotal:交换空间总量(单位为KB)。
  16. SwapFree:未被分配的空闲交换空间量(单位为KB)。
  17. Dirty:等待写回到磁盘的脏页量(单位为KB)。
  18. Writeback:被持久化到磁盘的脏页量(单位为KB)。
  19. AnonPages:用于系统堆栈和堆分配的匿名内存量(单位为KB)。
  20. Mapped:被文件映射的页的内存量(单位为KB)。
  21. Shmem:共享内存的内存量(单位为KB)。
  22. KReclaimable:可回收的内核对象大小(单位为KB)。
  23. Slab:内核SLAB分配器使用的页面容量(单位为KB)。
  24. SReclaimable:可回收的内核SLAB对象大小(单位为KB)。
  25. SUnreclaim:不可回收的内核SLAB对象大小(单位为KB)。
  26. KernelStack:内核栈的内存量(单位为KB)。
  27. PageTables:页表所占的内存量(单位为KB)。
  28. NumaHit:距离编号的NUMA节点映射到的内存量(单位为KB)。
  29. NumaMiss:距离编号的NUMA节点映射未能找到的内存量(单位为KB)。
  30. NumaForeign:从其他NUMA节点获取的内存量(单位为KB)。
  31. NumaInterleave:在多个NUMA节点间交错使用的内存量(单位为KB)。
  32. NumaLocal:本地NUMA节点上的内存量(单位为KB)。
  33. NumaOther:其他NUMA节点上的内存量(单位为KB)。
  34. HugePages_Total:系统中的大页总数。
  35. HugePages_Free:系统中的空闲大页数。
  36. Hugepagesize:大页的大小(单位为KB)。

3.为什么/proc/meminfo节点中的MemTotal不等于QEMU虚拟机中分配的内存大小?

答:这是因为内核静态使用的内存(如内核代码等)在启动阶段需要用到,他没有计入MemTotal统计项中,而是统计到reserved中。

 
 
 

回复

226

帖子

0

TA的资源

一粒金砂(高级)

5
 
  1. Linux内核的内存管理模块都对哪些页面进行了统计?
    内存管理模块定义了3个全局的vm_stat计数值,其中vm_zone_stat是内存管理区相关的计数值,vm_numa_stat是与NUMA相关的计数值,vm_node_stat是与内存节点相关的计数值。
    vm_zone_stat计数值的统计项
    统计项 描述
    NR_FREE_PAGES 空闲页面数量
    NR_ZONE_LRU_BASE 用于LRU_BASE的统计。LRU链表是从LRU_BASE开始标记的
    NR_ZONE_INACTIVE_ANON 不活跃匿名页面数量
    NR_ZONE_ACTIVE_ANON 活跃匿名页面数量
    NR_ZONE_INACTIVE_FILE 不活跃文件映射页面数量
    NR_ZONE_ACTIVE_FILE 活跃文件映射页面数量
    NR_ZONE_UNEVICTABLE 不可回收的页面数量
    NR_ZONE_WRITE_PENDING 脏页、正在回写以及不稳定的页面数量
    NR_MLOCK 使用mlock()锁住的页面数量
    NR_PAGETABLE 用于页表的页面数量
    NR_KERNEL_STACK_KB 用于内核栈的页面数量
    NR_BOUNCE 跳跃页面的数量
    NR_ZSPAGES 用于zsmalloc机制的页面数量
    NR_FREE_CMA_PAGES CMA中的空闲页面数量
    NR_VM_ZONE_STAT_ITEMS ZONE中vm_stat计数值的项数
  2. 请解释/proc/meminfo节点中每一项的含义。
    meminfo节点实现在meminfo_proc_show()函数中,该函数实现在fs/proc/meminfo.c。
    meminfo节点显示的内容
    统计项 描述(实现)
    MemTotal 系统当前可用物理内存总量,通过读取全局变量_totalram_pages来获得
    MemFree 系统当前剩余空闲物理内存,通过读取全局变量vm_zone_stat[]数组中的NR_FREE_PAGES来获得
    MemAvailable 系统中可使用页面的数量,有si_mem_available()函数来计算。公式为Available=memfree+pagecache+reclaimable-totalreserve_pages。这里包括了空闲页面(memfree)、文件映射页面(pagecache)、可回收的页面(reclaimable),最后减去系统保留的页面
    Buffers 用于块层的缓存,有nr_blockdev_pages()函数来计算
    Cached 用于页面高速缓存的页面。计算公式为Cached=NR_FILE_PAGES-swap_cache-Buffers
    SwapCached 这里统计交换缓存的数量,交换缓存类似与内容缓存,只不过它对应的是交换分区,而内容缓存对应的是文件。这里表示匿名页面曾经被交换出去,现在又被交换回来,但是页面内容还在交换缓存中。
    Active 活跃的匿名页面(LRU_ACTIVE_ANON)和活跃的文件映射页面(LRU_ACTIVE_FILE)
    Inactive 不活跃的匿名页面(LRU_INACTIVE_ANON)和不活跃的文件映射页面(LRU_INACTIVE_FILE)
    Active(anon) 活跃的匿名页面(LRU_ACTIVE_ANON)
    Inactive(anon) 不活跃的匿名页面(LRU_INACTIVE_ANON)
    Active(file) 活跃的文件映射页面(LRU_ACTIVE_FILE)
    Inactive(file) 不活跃的文件映射页面(LRU_INACTIVE_FILE)
    Unevictable 不能回收的页面(LRU_UNEVICTABLE)
    Mlocked 不会被交换到交换分区的页面,由全局的vm_zone_stat[]中的NR_MLOCK来统计
    SwapTotal 交换分区的大小
    SwapFree 交换分区的空闲空间大小
    Dirty 脏页的数量,由全局的vm_node_stat[]中的NR_FILE_DIRTY来统计
    Writeback 正在回写的页面数量,由全局的vm_node_stat[]中的NR_WRITEBACK来统计
    AnonPages 统计有反向映射(RMAP)的页面,通常这些页面都是匿名页面并且都映射到了用户空间,但是并不是所有匿名页面都配置了反向映射,如部分的shmen和tmpfs页面就没有设置反向映射。这个计数由全局的vm_node_stat[]中的NR_ANON_MAPPED来统计
    Mapped 统计所有映射到用户地址空间的内容缓存页面,由全局的vm_node_stat[]中的NR_FILE_MAPPED来统计
    Shmem 共享内存(基于tmpfs实现的shmem、devtmfs等)页面的数量,由全局的vm_node_stat[]中的NR_SHMEM来统计
    KReclaimable 内核可回收的内存,包括可回收的slab页面(NR_SLAB_RECLAIMABLE)和其他的可回收的内核页面(NR_KERNEL_MISC_RECLAIMABLE)
    Slab 所有slab页面,包括可回收的slab页面(NR_SLAB_RECLAIMABLE)和不可回收的slab页面(NR_SLAB_UNRECLAIMABLE)
    SReclaimable 可回收的slab页面(NR_SLAB_RECLAIMABLE)
    SUnreclaim 不可回收的slab页面(NR_SLAB_UNRECLAIMABLE)
    KernelStack 所有进程内核栈的总大小,由全局的vm_zone_stat[]中的NR_KERNEL_STACK_KB来统计
    PageTables 所有用于页表的页面数量,由全局的vm_zone_stat[]中的NR_PAGETABLE来统计
    NFS_Unstable 在NFS中,发送到服务器端但是还没有写入磁盘的页面(NR_UNSTABLE_NFS)
    WritebackTmp 回写过程中使用的临时缓存(NR_WRITEBACK_TEMP)
    VmallocTotal vmalloc区域的总大小
    VmallocUsed 已经使用的vmalloc区域总大小
    Percpu percpu机制使用的页面,由pcpu_nr_pages()函数来统计
    AnonHugePages 统计透明巨页的数量
    ShmemHugePages 统计在shmem或者tmpfs中使用的透明巨页的数量
    ShmemPmdMapped 使用透明巨页并且映射到用户空间的shmem或者tmpfs的页面数量
    CmaTotal CMA机制使用的内存
    CmaFree CMA机制中空闲的内存
    HugePages_Total 普通巨页的数量,普通巨页的页面是预分配的
    HugePages_Free 空闲的普通巨页的数量
    Hugepagesize 普通巨页的大小,通常是2MB或者1GB
    Hugetlb 普通巨页的总大小,单位是KB
  3. 为什么/proc/meminfo节点中的MemTotal不等于QEMU虚拟机中分配的内存大小?
读者可能会发现MemTotal显示的总内存大小并不等于物理系统中真实的内存大小或者QEMU虚拟中分配的内存大小,如在QEMU虚拟机启动参数中指定内存大小为1GB,但是进入QEMU虚拟机后发现MemTotal为“999784KB”。这是因为内核静态使用的内存(如内核代码等)在启动阶段需要用到,它没有计入MemTotal统计项中,而是统计到reserved中。从计算机内核启动日志信息来看,得出在内核初始化完成之后,init段的内存会被释放,因此被保留的内存大小为53400KB – 4608KB = 48792KB,加上MemTotal正好是1GB内存。
阅读打卡第六站.docx (22.22 KB, 下载次数: 0)
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(高级)

6
 

1.Linux内核的内存管理模块都对哪些页面进行了统计?

内存管理模块定义了3个全局的vm_stat计数值,其中vm_zone_stat是内存管理区相关的计数值,vm_numa_stat是与NUMA相关的计数值,vm_node_stat是与内存节点相关的计数值。
其中vm_zone_stat计数值的统计项包括空闲页面数量,用于LRUBASE的统计。LRU链表是从LRUBASE开始标记的,不活跃匿名页面数量,活跃匿名页面数量,不活跃文件映射页面数量,活跃文件映射页面数量,不可回收的页面数量,脏页、正在回写以及不稳定的页面数量,使用mlock()锁住的页面数量,用于页表的页面数量,用于内核栈的页面数量,跳跃页面的数量,用于zsmalloc机制的页面数量,CMA中的空闲页面数量,ZONE中vmstat计数值的项数。


2.请解释/proc/meminfo节点中每一项的含义。

/proc/meminfo中包含了当前时刻系统的所有物理页面的信息

其中MemTotal:系统总内存量(单位为KB)。 MemFree:未被分配的空闲内存量(单位为KB)。 MemAvailable:对非特权进程可用的估计内存量(单位为KB)。主要考虑了内核页缓存的占用情况,该 字段在内核版本4.14之后引入。 Buffers:用于块设备l/O缓冲的内存量(单位为KB)。 Cached:用于文件缓存的内存量(单位为KB)。 SwapCached:交换空间中的缓存页面量(单位为KB)。 Active:活跃内存量,表示最近使用的内存(单位为KB)。 Inactive:非活跃内存量,表示最近未使用的内存(单位为KB)。 Active(anon):活跃的匿名内存量,包括用户空间堆栈等(单位为KB)。 Inactive(anon):非活跃的匿名内存量,包括用户空间堆栈等(单位为KB)。 Active(file):活跃的文件页面内存量(单位为KB)。 Inactive(file):非活跃的文件页面内存量(单位为KB)。 Unevictable:无法驱逐的内存量,通常是被锁定的内存(单位立为KB)。 Mlocked:被mlock系统调用锁定的内存量(单位为KB)。 SwapTotal:交换空间总量(单位为KB)。 SwapFree:未被分配的空闲交换空间量(单位为KB)。 Dirty:等待写回到磁盘的脏页量(单位为KB)。 Writeback:被持久化到磁盘的脏页量(单位为KB)。 AnonPages:用于系统堆栈和堆分配的匿名内存量(单位为KB)。 Mapped:被文件映射的页的内存量(单位为KB)。 Shmem:共享内存的内存量(单位为KB)。 KReclaimable:可回收的内核对象大小(单位为KB)。 Slab:内核SLAB分配器使用的页面容量(单位为KB)。 SReclaimable:可回收的内核SLAB对象大小(单位为KB)。 SUnreclaim:不可回收的内核SLAB对象大小(单位为KB)。 KernelStack:内核栈的内存量(单位为KB)。 PageTables:页表所占的内存量(单位为KB)。 NumaHit:距离编号的NUMA节点映射到的内存量(单位为KB)。 NumaMiss:距离编号的NUMA节点映射未能找到的内存量(单位为KB)。 NumaForeign:从其他NUMA节点获取的内存量(单位为KB)。 Numalnterleave:在多个NUMA节点间交错使用的内存量(单位为KE3). NumaLocal:本地NUMA节点上的内存量(单位为KB)。 NumaOther:其他NUMA节点上的内存量(单位为KB)。 HugePages Total:系统中的大页总数。 HugePages Free:系统中的空闲大页数。 Hugepagesize:大页的大小(单位为KB)。 
3.为什么/proc/meminfo节点中的MemTotal不等于QEMU虚拟机中分配的内存大小?

因为内核静态使用的内存在启动阶段需要用到,它没有计入MemTotal统计项中,而是统计到reserved中。

 
 
 

回复

219

帖子

1

TA的资源

一粒金砂(高级)

7
 

1.Linux内核的内存管理模块都对哪些页面进行了统计?
Active Pages:正在使用或者最近被使用过的页面。
Inactive Pages:最近没有被使用过的页面,但仍然在内存中,因为系统认为可能会再次被使用。
Free Pages:完全空闲的页面,可以直接分配给新的数据。
Buffer Pages:被用作文件系统缓存的页面。
Cached Pages:被高速缓存子系统用来缓存块设备数据的页面。
Unswappable Pages:不能被交换到磁盘上的页面。
Swappable Pages:可以被交换到磁盘上的页面。

2.请解释/proc/meminfo节点中每一项的含义。

1. MemTotal:系统总内存量。
2. MemFree:未被使用的内存量。
3. MemAvailable:可供程序使用的近似内存量。
4. Buffers:用于块设备的缓冲内存量。
5. Cached:用于页缓存的内存量。
6. SwapCached:交换空间中的缓存内存量。
7. Active:活跃内存量,最近使用过的内存。
8. Inactive:非活跃内存量,最近未使用过的内存。
9. Active(anon):活跃的匿名内存量。
10. Inactive(anon):非活跃的匿名内存量。
11. Active(file):活跃的文件内存量。
12. Inactive(file):非活跃的文件内存量。
13. Unevictable:无法被交换出的内存量。
14. Mlocked:被锁定在内存中的内存量。
15. SwapTotal:交换空间总量。
16. SwapFree:未被使用的交换空间量。
17. Dirty:等待写回到磁盘的脏页内存量。
18. Writeback:正在写回到磁盘的脏页内存量。
19. AnonPages:未映射到文件的匿名内存量。
20. Mapped:设备和文件映射的内存量。
21. Shmem:共享内存总量。
22. Slab:内核数据结构缓存的内存量。
23. SReclaimable:可回收的Slab内存量。
24. SUnreclaim:不可回收的Slab内存量。
25. KernelStack:内核栈的内存量。
26. PageTables:页表的内存量。
27. NFS_Unstable:不稳定的NFS页的内存量。
28. Bounce:用于内存回弹的内存量。
29. WritebackTmp:用于临时写回的内存量。
30. CommitLimit:系统可支持的内存压缩比。
31. Committed_AS:已分配的内存量。
32. VmallocTotal:虚拟内存总量。
33. VmallocUsed:已使用的虚拟内存量。
34. VmallocChunk:最大的单个虚拟内存块大小。
35. HardwareCorrupted:硬件错误导致的内存损坏量。
36. AnonHugePages:大页匿名内存量。
37. ShmemHugePages:大页共享内存量。
38. ShmemPmdMapped:大页共享内存页表映射量。
39. CmaTotal:连续内存分配器总量。
40. CmaFree:未被使用的连续内存分配器量。
42.HugePages_Total:普通巨页的数量。
42.Hugepages_Free:空闲的普通巨页的数量
43.Hugepagesize:普通巨页的大小。
44.Hugetlb:普通巨页的总大小。

3.为什么/proc/meminfo节点中的MemTotal不等于QEMU虚拟机中分配的内存大小?
/proc/meminfo节点中的MemTotal不等于QEMU虚拟机中分配的内存大小是因为QEMU虚拟机中分配的内存大小包括了虚拟机的内存和一些额外的开销,例如用于虚拟化管理的内存、QEMU自身的内存占用等。而/proc/meminfo中的MemTotal是指实际可用于系统和进程的内存大小,不包括虚拟化管理和其他开销。因此,这两个值可能不会完全相等。

 
 
 

回复

135

帖子

0

TA的资源

一粒金砂(中级)

8
 
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表