各位开发者,大家好,今天主要给大家分享一下,如何使用linux系统中的内存管理。
前面我们学习了很多Linux内存方面的知识,比如:虚拟地址空间,进程空间,内存映射,页表机制等,我们学了这么多知识,似乎对Linux内存似懂非懂,为什么会出现这样的问题?原因在于我们缺乏对物理内存的了解,由于缺乏物理内存管理相关的知识,我们对于内存管理没有形成体系,所以才会似懂非懂。
本文我们抛弃八股文的学习方式,以一种创新的方式来学习Linux内存管理,我们基于物理地址来学习Linux内存管理。
1.UMA和NUMA架构
UMA(Uniform Memory Access)和NUMA(Non-Uniform Memory Access)是两种不同的内存访问架构。
1.1 UMA架构
UMA是一种对称多处理(SMP)系统的内存访问架构,它指的是所有处理器对内存的访问具有相同的延迟。
在UMA