05 物理页面的迁移类型:migratetype

migratetype的作用:

由于内存在申请的时候有些是movable,有些是unmovable,为了让伙伴系统可以更高效的工作,在伙伴系统中将不同类型的migratetype放在不同的链表中

伙伴系统内存管理.jpg

使用 cat /proc/pagetypeinfo

05 物理页面的迁移类型:migratetype-每日运维
夜神模拟器migratetype信息

05 物理页面的迁移类型:migratetype-每日运维
ubuntu migratetype信息

MigrateType类型

图片.png

mmzone.h(include/linux)

类型 含义 使用场景
MIGRATE_UNMOVABLE 不可移动的物理内存 内核镜像区域的物理内存
MIGRATE_MOVABLE 可迁移的物理内存 用户空间的物理内存
MIGRATE_RECLAIMABLE 不清楚 不清楚
MIGRATE_PCPTYPES 不清楚 不清楚
MIGRATE_HIGHATOMIC 不清楚 不清楚
MIGRATE_CMA CMA内存 大块内存管理空间,其内存管理有单独管理模块,在空闲的时候可以让伙伴系统管理标记为MIGRATE_CMA的内存只能被MIGRATE_MOVABLE的内存申请,在CMA需要的情况下会将使用的内存从该内存中置换出去,以优先满足特定的大块内存的申请
MIGRATE_ISOLATE CMA内存 被标记为MIGRATE_ISOLATE表示该内存区域不再可以通过伙伴系统对内存进行申请,由CMA内存管理系统接管