读深入理解Linux内核 (第8章 内存管理, 第三部分 --- 虚拟内存分配)

来源:互联网 发布:阿里巴巴软件开发 编辑:程序博客网 时间:2024/05/21 21:45

前面两部分,包括页面的申请或kmalloc(),都是物理上连续的内存。物理上连续的内存能更好的使用Cache,并且访问时间一致。

然而有时,我们需要连续内存,但是物理上的页面并不连续,此时,调用vmalloc()。


vmalloc从地址空间(通常3G~4G之间)获得一段地址,然后通过alloc_page(),申请页面,填入内核的页表。这样这段地址映射到一些不连续的页面上,这种内存通常用于不频繁访问的数据存放。


0 0
原创粉丝点击