HarmonyOS鸿蒙Next中请教符号MMU_16K是在哪里定义的

HarmonyOS鸿蒙Next中请教符号MMU_16K是在哪里定义的 在文件mmu_config.h定义了

#define MMU_SET_PAGE_TABLE_PLACE \
__attribute__((aligned(MMU_16K))) __attribute__((section(".bss.prebss.translation_table"))) UINT8 first_page_table[MMU_16K]; \
__attribute__((aligned(MMU_1K))) UINT8 second_page_table_os[MMU_16K]; \
__attribute__((aligned(MMU_1K))) UINT8 second_page_table_app[MMZ_MEM_LEN / MMU_1K];

没搜到MMU_16K, MMU_1K, MMZ_MEM_LEN的定义,也没发现谁使用这个宏,求解在哪里查看这些符号的定义?还是由开发者自行定义?


更多关于HarmonyOS鸿蒙Next中请教符号MMU_16K是在哪里定义的的实战教程也可以访问 https://www.itying.com/category-93-b0.html

5 回复

更多关于HarmonyOS鸿蒙Next中请教符号MMU_16K是在哪里定义的的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


开发者你好,文件mmu_config.h没有使用,可以提交一个patch去掉。

亲爱滴开发者 ,这个问题已经在处理中啦,稍后答复你哟 ,么么哒

在HarmonyOS鸿蒙Next中,符号MMU_16K通常与内存管理单元(MMU)的配置相关,特别是在处理内存页大小或内存映射时。MMU_16K可能用于定义16KB大小的内存页或相关内存管理参数。

具体定义位置可能位于鸿蒙内核源码的mmu.hmmu.c文件中,这些文件通常位于内核模块的kernel/liteos_a/arch/armkernel/liteos_a/mm目录下。MMU_16K可能是一个宏或常量,用于配置MMU的页表项或内存映射策略。

例如,在mmu.h中,MMU_16K可能被定义为:

#define MMU_16K 0x4000

或者在mmu.c中,MMU_16K可能用于初始化MMU的页表:

mmu_init_page_table(MMU_16K);

具体定义和用法需结合鸿蒙Next的源码进行确认。

在HarmonyOS鸿蒙Next中,符号MMU_16K通常与内存管理单元(MMU)的配置相关,可能用于定义内存页大小或相关参数。具体定义位置可能位于内核源码的mmu.hmmu.c文件中,通常在kernel/liteos_a/arch/arm或类似路径下。建议在源码中搜索MMU_16K以定位其定义和使用场景。

回到顶部