
┈┈【理解Linux内存管理】
CHENG Jian
天将降大任于是人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身,行拂乱其所为,所以动心忍性,曾益其所不能。
展开
-
Linux分页机制之分页机制的演变--Linux内存管理(七)
日期 内核版本 架构 作者 GitHub CSDN 2016-09-01 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理1 前景回顾前面我们讲解了操作系统段式存储管理的主要内容.32位,在保护方式下,其能够访问的线性地址空间可达4GB,而且允许几乎不受存储空间限制的虚拟存储器程序。虚拟存原创 2016-09-01 20:01:31 · 8611 阅读 · 0 评论 -
伙伴系统之伙伴系统概述--Linux内存管理(十五)
日期 内核版本 架构 作者 GitHub CSDN 2016-09-02 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理1 前景回顾1.1 Linux内存管理的层次结构Linux把物理内存划分为三个层次来管理 层次 描述 存储节点(Node) CPU被划分为多个节点(no原创 2016-09-03 00:13:15 · 22070 阅读 · 3 评论 -
伙伴系统之避免碎片--Linux内存管理(十六)
日期 内核版本 架构 作者 GitHub CSDN 2016-09-28 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理1 前景提要1.1 碎片化问题分页与分段页是信息的物理单位, 分页是为了实现非连续分配, 以便解决内存碎片问题, 或者说分页是由于系统管理的需要. 段是信息的逻辑单位原创 2016-09-28 21:57:25 · 11121 阅读 · 1 评论 -
alloc_page分配内存空间--Linux内存管理(十七)
日期 内核版本 架构 作者 GitHub CSDN 2016-09-29 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理1 前景回顾在内核初始化完成之后, 内存管理的责任就由伙伴系统来承担. 伙伴系统基于一种相对简单然而令人吃惊的强大算法.Linux内核使用二进制伙伴算法来管理和分配物理内原创 2016-09-29 20:27:40 · 21602 阅读 · 6 评论 -
kmalloc分配物理内存与高端内存映射--Linux内存管理(十八)
日期 内核版本 架构 作者 GitHub CSDN 2016-09-29 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理1 前景回顾1.1 内核映射区尽管vmalloc函数族可用于从高端内存域向内核映射页帧(这些在内核空间中通常是无法直接看到的), 但这并不是这些函数的实际用途.重要原创 2016-09-29 21:08:23 · 9705 阅读 · 2 评论 -
高端内存映射之kmap持久内核映射--Linux内存管理(二十)
日期 内核版本 架构 作者 GitHub CSDN 2016-09-29 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理在内核初始化完成之后, 内存管理的责任就由伙伴系统来承担. 伙伴系统基于一种相对简单然而令人吃惊的强大算法.Linux内核使用二进制伙伴算法来管理和分配物理内存页面, 该算原创 2016-09-29 21:21:01 · 9825 阅读 · 0 评论 -
高端内存映射之vmalloc分配内存中不连续的页--Linux内存管理(十九)
日期 内核版本 架构 作者 GitHub CSDN 2016-09-29 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理在内核初始化完成之后, 内存管理的责任就由伙伴系统来承担. 伙伴系统基于一种相对简单然而令人吃惊的强大算法.Linux内核使用二进制伙伴算法来管理和分配物理内存页面, 该算原创 2016-09-29 21:17:23 · 6148 阅读 · 0 评论 -
高端内存映射之kmap_atomic固定映射--Linux内存管理(二十一)
日期 内核版本 架构 作者 GitHub CSDN 2016-09-29 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理在内核初始化完成之后, 内存管理的责任就由伙伴系统来承担. 伙伴系统基于一种相对简单然而令人吃惊的强大算法.Linux内核使用二进制伙伴算法来管理和分配物理内存页面, 该算原创 2016-09-29 21:26:10 · 6001 阅读 · 1 评论 -
深入理解Linux内存管理-之-目录导航
日期 内核版本 架构 作者 GitHub CSDN 2016-08-31 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理1 内存描述 CSDN GitHub Linux内存描述之概述–Linux内存管理(一) 01-description/01-memory Linux内原创 2016-08-31 14:45:11 · 26168 阅读 · 11 评论 -
slab分配器--Linux内存管理(二十二)
日期 内核版本 架构 作者 GitHub CSDN 2016-09-29 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理2 slab分配器2.1 slab分配器每个C程序员都熟悉malloc, 及其在C标准库中的相关函数. 大多数程序分配若干字节内存时. 经常会调用这些函数.内核也必须原创 2016-09-29 22:26:48 · 7355 阅读 · 0 评论 -
启动期间的内存管理之build_zonelists初始化备用内存域列表zonelists--Linux内存管理(十三)
日期 内核版本 架构 作者 GitHub CSDN 2016-06-14 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理在内存管理的上下文中, 初始化(initialization)可以有多种含义. 在许多CPU上, 必须显式设置适用于Linux内核的内存模型. 例如在x86_32上需要切换原创 2016-09-01 22:31:50 · 5089 阅读 · 0 评论 -
启动期间的内存管理之pagging_init初始化分页机制--Linux内存管理(十四)
日期 内核版本 架构 作者 GitHub CSDN 2016-06-14 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理在内存管理的上下文中, 初始化(initialization)可以有多种含义. 在许多CPU上, 必须显式设置适用于Linux内核的内存模型. 例如在x86_32上需要切换到原创 2016-09-01 21:00:20 · 4411 阅读 · 1 评论 -
启动期间的内存管理之bootmem_init初始化内存管理--Linux内存管理(十二)
日期 内核版本 架构 作者 GitHub CSDN 2016-09-01 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理在内存管理的上下文中, 初始化(initialization)可以有多种含义. 在许多CPU上, 必须显式设置适用于Linux内核的内存模型. 例如在x86_32上需要切换到原创 2016-09-01 22:23:18 · 8042 阅读 · 0 评论 -
Linux分页机制之分页机制的实现详解--Linux内存管理(八)
日期 内核版本 架构 作者 GitHub CSDN 2016-09-01 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理 [注意] 如果您当前使用的系统并不是linux,或者您的系统中只有一份linux源码,而您又期待能够查看或者检索不同版本的linux源码 可以使用 h原创 2016-09-01 20:08:51 · 20082 阅读 · 4 评论 -
Linux分页机制之概述--Linux内存管理(六)
日期 内核版本 架构 作者 GitHub CSDN 2016-09-01 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理1 分页机制在虚拟内存中,页表是个映射表的概念, 即从进程能理解的线性地址(linear address)映射到存储器上的物理地址(phisical address).原创 2016-09-01 19:46:08 · 12557 阅读 · 2 评论 -
Linux内存描述之概述--Linux内存管理(一)
日期 内核版本 架构 作者 GitHub CSDN 2016-08-31 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理参照 链接 内存管理(一)内存模型之Node Linux 内存管理 重要结构体 Bootmem机制 Linux-2.6.32 NUMA架构之内存和调度原创 2016-08-31 13:29:34 · 17617 阅读 · 0 评论 -
Linux内存描述之内存节点node--Linux内存管理(二)
日期 内核版本 架构 作者 GitHub CSDN 2016-08-31 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理1 前景回顾前面我们讲到服务器体系(SMP, NUMA, MPP)与共享存储器架构(UMA和NUMA)1.1 UMA和NUMA两种模型共享存储型多处理机有两种模型原创 2016-08-31 13:32:24 · 15313 阅读 · 0 评论 -
Linux内存描述之内存页面page--Linux内存管理(四)
日期 内核版本 架构 作者 GitHub CSDN 2016-08-31 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理1 前景回顾1.1 UMA和NUMA两种模型共享存储型多处理机有两种模型均匀存储器存取(Uniform-Memory-Access,简称UMA)模型非均匀存储器原创 2016-08-31 14:18:44 · 25093 阅读 · 2 评论 -
Linux内存描述之高端内存--Linux内存管理(五)
日期 内核版本 架构 作者 GitHub CSDN 2016-08-31 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理http://blog.csdn.net/vanbreaker/article/details/75799411 前景回顾前面我们讲到服务器体系(SMP, NUMA, M原创 2016-08-31 14:33:52 · 15165 阅读 · 2 评论 -
启动期间的内存管理之memblock分配器--Linux内存管理(十一)
日期 内核版本 架构 作者 GitHub CSDN 2016-06-14 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理在内存管理的上下文中, 初始化(initialization)可以有多种含义. 在许多CPU上, 必须显式设置适用于Linux内核的内存模型. 例如在x86_32上需要切换到原创 2016-09-01 20:42:43 · 9504 阅读 · 0 评论 -
启动期间的内存管理之初始化过程概述----Linux内存管理(九)
日期 内核版本 架构 作者 GitHub CSDN 2016-06-14 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理在内存管理的上下文中, 初始化(initialization)可以有多种含义. 在许多CPU上, 必须显式设置适用于Linux内核的内存模型. 例如在x86_32上需要切换原创 2016-09-01 20:27:53 · 14727 阅读 · 5 评论 -
启动期间的内存管理之引导分配器bootmem--Linux内存管理(十)
日期 内核版本 架构 作者 GitHub CSDN 2016-09-01 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理在内存管理的上下文中, 初始化(initialization)可以有多种含义. 在许多CPU上, 必须显式设置适用于Linux内核的内存模型. 例如在x86_32上需要切换原创 2016-09-01 20:33:02 · 6384 阅读 · 7 评论 -
Linux内存描述之内存区域zone--Linux内存管理(三)
日期 内核版本 架构 作者 GitHub CSDN 2016-08-31 Linux-4.7 X86 & arm gatieme LinuxDeviceDrivers Linux内存管理1 前景回顾前面我们讲到服务器体系(SMP, NUMA, MPP)与共享存储器架构(UMA和NUMA)1.1 UMA和NUMA两种模型共享存储型多处理机有两种模型原创 2016-08-31 14:11:07 · 22573 阅读 · 5 评论