2

下午好,

我正在尝试确定由视频为 linux 的 IO_METHOD_MMAP 分配的缓冲区的物理内存位置

通过 mmap 函数查看,

    mmap(NULL /* start anywhere */,
                            buf.length,
                            PROT_READ | PROT_WRITE /* required */,
                            MAP_SHARED /* recommended */,
                            fd, //FileDescriptor
                            buf.m.offset);

我看到 buf.m.offset 为 0,然后将每个平面的 buf.length 值递增。

我正在寻找的是 /dev/video0 设备创建的文件描述符 (fd) 在内存中的物理地址。

这是在 Im6 上。

这样做的目的是将该物理地址传递给 GPU,

谢谢,

4

1 回答 1

3

成功后,mmap您可以open(例如使用fopen),然后依次读取(例如使用fgets)文本(类似管道的)/proc/self/maps 文件(或也/proc/self/smaps)。

请参阅proc(5)这个答案

于 2015-01-09T20:41:28.423 回答