Android显示用户空间-内核空间交互

Android显示用户空间-内核空间交互,android,linux,framebuffer,Android,Linux,Framebuffer,Android显示用户空间-内核空间交互 我目前的理解是,有一个用于帧缓冲区的内核驱动程序,它通过调用mdss\u mdp\u alloc\u fb\u mem()来分配内存。这将在离子切割区域(我的案例-0x7ee00000)的地址分配一些内存(在我的案例中大小为800000) Android以某种方式写入该区域,显示驱动程序读取并显示该区域。我的理解可能有误。如果是这样,请你纠正我 我很想知道Android代码(Surface Flinger或Open GL或任何其他库)写入分配的帧缓冲区(

Android显示用户空间-内核空间交互

我目前的理解是,有一个用于帧缓冲区的内核驱动程序,它通过调用
mdss\u mdp\u alloc\u fb\u mem()
来分配内存。这将在离子切割区域(我的案例-0x7ee00000)的地址分配一些内存(在我的案例中大小为800000)

Android以某种方式写入该区域,显示驱动程序读取并显示该区域。我的理解可能有误。如果是这样,请你纠正我

我很想知道Android代码(Surface Flinger或Open GL或任何其他库)写入分配的帧缓冲区(fb)的确切位置。我想要代码。我的平台面临截屏问题。这是在正常情况下发生的,但在崩溃期间(由于恐慌等原因),屏幕截图是从上述地址(映射的虚拟地址)捕获的,我只看到一个空白屏幕

所以我的问题是,android是如何向fb写入的,是android向/dev/graphics/fb0写入的吗

如果是,我如何在代码中确认


代码不是那么简单,我不是C++程序员。如果有人能帮助我,那将是一个很大的帮助。

我需要得到完整的场景。这不是一般的屏幕截图。我需要捕捉屏幕时,恐慌或看门狗发生和系统复位。在这些情况下,在配置地址和大小的地方有一些安全代码。在重新引导时,在初始引导加载程序中,它会检查这是否是一个崩溃,然后转储相应的区域。所以我得到了一张空白图片。嗨,曼蒂,你找到你的方法了吗?嗯。我的代码使用IOMMU地址空间。它不是写入/dev/graphics/fb0,而是特定于供应商的实现。