2.KMD-8.LinuxKMS-1-《计算机知识》

admin 2025-11-02 22:34:18 系统网络 来源:ZONE.CI 全球网 0 阅读模式
  • 内核和参考
    • 内容
    • 参考
  • 什么是Atomic
    • 为什么叫“Atomic Commit”?
    • Atomic的优点
    • Atomic的历史 (重点)

    内核和参考

    内容

    考虑几个问题:

    • 在使用modetest时,-a参数代表atomic,这个是什么?
    • 在学习 DRM应用程序进阶Property-何小龙 的模块时, 提到的Atomic原子操作是什么?
    • 前边DRM和GEM学习时,未涉及到显示模块的几要素(framebuffer,plane,crtc,encoder,connector),这个又是怎么用的?
    • kms中的property又是啥?提到的helper又是什么?
    • kms中的各个层在驱动是如何表示的?

    学习KMS只要要先明白这几个问题, 需要先熟悉下 何小龙 翻译的: Atomic mode setting design overview, 这个是学习后边章节的基础部分,需要先了解了 修改原因, 设计框架, 才会知道 为什么要这样做;

    参考

    • Atomic mode setting design overview, part 1 和 2 翻译版本 // 必须先看这两部分
    • 何小龙-DRM 驱动程序开发(VKMS) 和 DRM应用程序进阶Property、atomic-crtc、atomic-plane

    什么是Atomic

    在学习 DRM应用程序进阶Property-何小龙 时, 我们可以看到,现在使用的都是 Atomic 原子操作接口 来对DPU的 显示模块5要素(framebuffer,plane,crtc,encoder,connector)进行初始化和配置的。

    为什么叫“Atomic Commit”?

    本次commit操作,要么成功,要么保持原来的状态不变。 即如果中途操作失败了,那些已经生效的配置需要恢复成之前的状态,就像没发生过commit操作似的,这就是Atomic的含义。

    Atomic的优点

    减少上层应用接口的维护工作量。当开发者有新的功能需要添加时,无需增加新的函数名和IOCTL,只需在底层驱动中新增一个property,然后在自己的应用程序中获取/操作该property的值即可。 增强了参数设置的灵活性。一次IOCTL可以同时设置多个property,减少了user space与kernel space切换的次数,同时最大限度的满足了不同硬件对于参数设置的要求,提高了软件效率。 维护属性的原子操作配置。一次操作 要么成功, 要么失败。 符合 wayload每一帧都是完美的(every frame is perfect)口号。

    Atomic的历史 (重点)

    Atomic mode setting design overview, part 1 和 2 翻译版本

    01-shell脚本介绍-《shell脚本》 系统网络

    01-shell脚本介绍-《shell脚本》

    一、shell脚本是什么二、为什么要学shell,而不是其他计算机语言三、学习这门课程的优势四、学了能干什么五、学习什么内容六、学习的技巧七、成长路径八、学习环
    评论:0   参与:  0