Linux内存管理(78):kcompactd详解

源码基于:Linux6.12

约定:

  • 芯片架构:ARM64
  • 内存架构:UMA
  • CONFIG_ARM64_VA_BITS39
  • CONFIG_PAGE_SHIFT12
  • CONFIG_PGTABLE_LEVELS :3

0. 前言

我们了解了内存规整的4种方式:

  • 手动规整;
  • kcompactd 内核线程规整;
  • 主动规整
  • 直接内存规整;

手动内存规整在博文 Linux 内核参数:compaction一文已经剖析过,本文将继续剖析第二种规整方式——kcompactd 规整。