ashmem の割り当てと使用はうまく機能します。
ashmemFD = open("/dev/ashmem", O_RDWR);
int ret = ioctl(ashmemFD, ASHMEM_SET_NAME, "vf");
ioctl(ashmemFD, ASHMEM_SET_SIZE, size);
ashmap = mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_SHARED, ashmemFD, 0);
しかし、問題は、使用後にマップを解除するだけで十分なのか、それともメモリを再度解放するためにさらに何かをする必要があるのかということです。
munmap((void*) ashmap,size);