從這篇文章中,它表示android有不同的內存分配(例如,pmem,cmem ..)並將切換到ion。需要幫助瞭解android內存分配器
http://lwn.net/Articles/480055/
而且我一直在尋找的Android框架代碼,我覺得框架內存分配是通過MemoryHeapBase類完成: http://androidxref.com/4.4.2_r1/xref/frameworks/native/libs/binder/MemoryHeapBase.cpp#43
但是,從那個班,我看不出它如何分配內存使用差異內存分配方案。
我只看到它創建一個共享區域:
int fd = ashmem_create_region(name == NULL ? "MemoryHeapBase" : name, size);
ALOGE_IF(fd<0, "error creating ashmem region: %s", strerror(errno));
能否請你告訴我在哪裏,在其使用PMEM實際分配內存的框架? CMEM?或離子?
謝謝。
作爲我的理解,Google地圖Android版CMEM,可用內存請求的過程中PMEM ashmem地區,並連接一個文件描述符用映射區域來訪問內存。見[this](http://androidxref.com/4.1.2/xref/system/core/libcutils/ashmem-dev.c#42) – nmxprime