我想在我写的安全应用程序的最低级别读取视频卡的帧缓冲。
我希望尽可能确定我正在阅读的内容正是最终的结果
把硬件的各个部分点亮屏幕的像素,
并且没有软件层在中间(或者至少我希望中间的层数尽可能少)。
我已经看到使用X在一个精确的时刻抓住屏幕非常容易,但那个电话
仍在通过X服务器。
我想要有更低级别的东西,
即使这意味着搞乱了视频卡的一些ioctl
我已经看到了DRI和DRI2的存在,但它们的记录非常严重,特别是
后者。
我真的不明白他们是如何工作的。
对于良好的研究,您有什么想法,参考或出发点吗?
任何事情都会受到赞赏!
答案 0 :(得分:0)
我不确定帧缓冲对你有多大的帮助(甚至无视他在评论中指出的问题,决定你在那里读到的是你想要的东西可能不是很容易),但是如果您在Linux上执行此操作,则可以映射kernel framebuffer devices,可能使用DirectFB来帮助您。或者,如果您使用的是非Linux PC平台,则可以使用VESA(请查看X.Org中的VESA代码和X.Org VESA driver(实际代码在两者之间分配)。请注意你可能会对多显示器设置等事情有所了解。