1
我需要编写linux内核模块,它将在屏幕上的所有其他窗口中显示消息框。我需要在内核中绘制图像,不需要从用户空间应用程序访问此图片。我不明白如何做到这一点。我应该使用什么框架 - framebuffers或v4l?我认为显示控制器的直接编程不是一个好主意,因为内核中有其他的驱动程序已经这样做了。所以,问题是:如何在内核驱动程序之间进行交互,以及如何指定我的图片应该位于最前面?屏幕显示驱动程序
我将不胜感激任何帮助。
但是,为什么我不能在内核模块中实现用于用户空间应用程序的假write()处理程序,并在内核框架调用适当的回调函数时绘制真实图像?我只想在屏幕上显示所有其他东西的准备.bmp图像(如徽标)。 – alien
首先,拦截一个写另一个驱动程序不应该发生,所以没有干净的方式。其次,当framebuffer是'mmap()'时可能没有写入。第三,最普遍的UI渲染可能不是基于像简单帧缓冲那样微不足道的东西。做这样的事情是一个大规模的黑客行为,需要很长时间才能实现,并可能会破坏下一个内核版本。这是不实际的。 –
我需要做的就是在内核中分配我自己的缓冲区,用图像填充它,然后让显示驱动程序绘制它。与普通帧缓冲驱动程序所做的一样,不包括与用户空间应用程序的交互。我不需要任何用户空间的GUI子系统,因为我的照片应该放在屏幕的顶部。我真的不能使用内核framebuffer API来做到这一点? – alien