Android Display User space - Kernel space interaction

大憨熊 提交于 2019-12-08 02:05:28

问题


Android Display User space - Kernel space interaction.

My current understanding is that there is a kernel driver for framebuffer which allocates the memory by calling mdss_mdp_alloc_fb_mem() This allocates some memory(in my case size : 800000) at an address in ION carved out region(My case - 0x7ee00000).

Android somehow writes into this area, which the display driver reads and displays it. I might be wrong with my understanding. If so, request you to please correct me.

I am interested to know the place exactly where the Android code (Surface Flinger or Open GL or any other library) writes into the allocated framebuffer(fb). I want it in code. I am facing a screencapture problem in my platform. It is happening in normal scenario but during the crashdump(due to any reason like panic) screen shot is captured from the above address(mapped virtual address), and i only see a blank screen.

So to my question, how eactly android is writing to the fb, Is it that the android is writing to /dev/graphics/fb0?

If so how can i confirm it in code?

The code is not that simple and i am not a c++ programmer. If someone could help me out, it would be a great help.

来源:https://stackoverflow.com/questions/16331775/android-display-user-space-kernel-space-interaction

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!