Linux教程

【性能优化】Linux内存是怎么工作的?

本文主要是介绍【性能优化】Linux内存是怎么工作的?,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

内存主要用来存储系统和应用程序的指令、数据、缓存等。那么,Linux 到底是怎么管理内存的呢?

内存映射

通常所说的内存容量,比方说,笔记本电脑内存 8GB 的,其实指的是物理内存物理内存也称为主存,大多数计算机用的主存都是动态随机访问内存(DRAM)。只有内核才可以直接访问物理内存。那么,进程要访问内存时,该怎么办呢?

Linux 内核给每个进程都提供了一个独立的虚拟地址空间,并且这个地址空间是连续的。这样,进程就可以很方便地访问内存,更确切地说是访问虚拟内存

虚拟地址空间的内部又被分为内核空间用户空间两部分,不同字长(也就是单个 CPU 指令可以处理数据的最大长度)的处理器,地址空间的范围也不同。比如最常见的 32 位和 64 位系统,我画了两张图来分别表示它们的虚拟地址空间,如下所示:

img
进程在用户态时,只能访问用户空间内存;只有进入内核态后,才可以

这篇关于【性能优化】Linux内存是怎么工作的?的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!