#include <sys/ioctl.h>
#include <linux/android_pmem.h>
int32_t phy_addr;
ssize_t offset = 0;size_t size = 0;
sp<IMemoryHeap> heap = frame->getMemory(&offset, &size);
int fd = heap->getHeapID();
struct pmem_region region;
::ioctl(fd,PMEM_GET_PHYS,®ion);
phy_addr = region.offset+offset;
本文介绍了一种通过 ioctl 系统调用结合 Android PMEM 接口来获取内存区域的物理地址的方法。具体步骤包括:从帧中获取内存堆对象及其偏移量与大小;利用内存堆对象获取文件描述符;使用 ioctl 调用 PMEM_GET_PHYS 获取物理内存区域信息。
1262

被折叠的 条评论
为什么被折叠?



