【问题标题】:Locking the frame buffer device锁定帧缓冲设备
【发布时间】:2020-08-27 05:28:59
【问题描述】:

我正在为基于 linux 的嵌入式系统开发一个应用程序,它直接在 Linux 内核的帧缓冲设备上进行写入。写作效果很好。但是,当需要显示的其他事件发生时(例如插入闪存驱动器或内核消息),就会出现问题。每次发生这种情况时,屏幕都会中断,屏幕上会出现不需要的东西,从重叠部分擦除之前的图形(其他东西保持不变)。

我怎样才能摆脱这个问题?

【问题讨论】:

  • "但是当其他需要显示的事件发生时会出现问题(例如插入闪存驱动器或内核消息)" 这是什么意思?你能详细说明吗?某种意义上的展示需求?
  • 尝试对您的 LCD 进行双缓冲
  • 你使用的是什么 GUI 库?

标签: c linux linux-device-driver framebuffer


【解决方案1】:

console=0 添加到内核命令行。它禁用内核向控制台输出任何内容以及控制台登录。 (出于开发目的,我建议使用单独的启动选项,以便您可以启动到控制台。)

或者,让您的应用程序为帧缓冲区创建一个新的虚拟终端,就像 X 一样。这样可以避免内核(实际上是内核控制台)在整个帧缓冲区中乱涂乱画。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多