09-01 00:00:03.596 F/patchoat( 391): art/runtime/gc/heap.cc:286] Check failed: non_moving_space_mem_map != nullptr Failed to mmap at expected address, mapped at 0x6c00 0000 instead of 0x73955000 : Requested region 0x73955000-0x77955000 overlaps with existing map 0x75fd8000-0x75fd9000 (/system/framework/arm/boot.oat)
内存段冲突
kernel/arch/arm/configs/s5p4418_project??_defconfig 中如下定义
CONFIG_PAGE_OFFSET=0x80000000
memory.h 中
#define PAGE_OFFSET UL(CONFIG_PAGE_OFFSET)
#define TASK_SIZE (UL(CONFIG_PAGE_OFFSET) - UL(0x01000000))
在 build/core/dex_preopt_libart.mk
LIBART_IMG_TARGET_BASE_ADDRESS := 0x70000000
TASK_SIZE (task占用的内存) 和 LIBART_IMG_TARGET_BASE_ADDRESS 刚好在同一地址段
//---
改法:LIBART_IMG_TARGET_BASE_ADDRESS := 0x30000000
//---
在调试android5.1平台时因为这个问题会引发一系列问题,
1.存储空间不足
2.F/dex2oat ( 431): art/runtime/runtime.cc:836] Check failed: options->boot_class_path_ != nullptr
3.每次开机进launcher前都会重新装载组件
4.apk无法install
等等
参考: