- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Linux物理内存描述-LinuxKernelExploration.PDF
Linux物理内存描述
Linux物理内存描述
Linux物理内存描述
目 录
1 概述3
2 物理内存相关概念3
2.1 NUMA (Non Uniform Memory Access )3
2.2 页面和虚拟内存(Paging and Virtual Memory )5
2.2.1 PAE (Physical Address Extensions )6
2.2.2 PSE (Page Size Extensions )6
2.3 TLB (Translation Lookaside Buffers )7
3 Linux 内核对物理内存描述7
3.1 节点(Node ) 8
3.2 区域(Zone )10
3.2.1 区域类型10
3.2.2 struct zone结构体 13
3.3 页面(Page )15
3.3.1 struct page结构体 15
3.3.2 页面标志17
4 Linux物理内存描述信息查看 19
4.1 /proc/zoneinfo 19
4.2 /proc/pagetypeinfo 19
4.3 /sys/devices/system/node/node*/meminfo 19
4.4 echo m /proc/sysrq-trigger20
Linux物理内存描述
1 概述
Linux内核采用页式存储管理,进程的地址空间被划分成固定大小的“页面”;物理内
存同样被分为与页面大小相同的“页帧”,由MMU在运行时将虚拟地址“映射”成某个物
理内存页面上的地址。
本文以linux-2.6.32-220.el6版本内核源码为基础,介绍Linux内核中有关物理内存的概
念,和如何描述物理内存。注意:本文中涉及到的仅是和物理内存有关的概念、数据结构。
和地址如何映射、线性地址、物理地址;内存如何分配/ 回收等概念无关。
2 物理内存相关概念
2.1 NUMA (Non Uniform Memory Access )
在现代计算机中,CPU访问内存的速度与两者之间的距离有关,导致访问不同内存区域
的时间可能不同。如下图,是系统中有2个CPU (可以超过2个CPU )时,NUMA内存访问
模型。
图1 NUMA内存访问模型
图2是Intel Nehalem (Xeon E5xxx系列)架构中NUMA内存访问模型。每个CPU下面
都有物理内存,两个CPU之间通过QPI总线通信。黑色箭头表示访问本地CPU下面的物理内
存,绿色箭头为访问另外CPU下的物理内存。本地CPU访问其他CPU下面内存时,数据要
通过QPI总线传输。显然访问本地内存速度最快,访问其他CPU下面的内存速度较慢。这就
是NUMA的由来
Linux物理内存描述
Nehalem Neh
原创力文档


文档评论(0)