Linux
我從哪裡開始了解顯示控制器管理?
我想了解 Linux 如何檢測哪些顯示設備可用(影片輸出)以及它如何決定在每個設備上顯示什麼。
例如:如果我有一個帶有串列線和 HDMI 埠的嵌入式設備,如何使控制台出現在 HDMI 顯示器上而不是串列控制台上?
另外,如果我想使用與影片驅動程序連結的簡單 OpenGL 應用程序,OpenGL 將使用什麼介面在 HDMI 埠上繪圖?
指向正確文件的指針會很棒。
對於大多數係統,處理輸出到哪個螢幕設備取決於 GPU 或其他一些影片顯示控制器。與系統上的影片設備的所有介面都由直接渲染管理器 (DRM) 和密切相關的核心模式設置 (KMS) 核心子系統處理。
從關於該主題的維基百科頁面:
在計算中,Linux 核心的子系統 Direct Rendering Manager (DRM) 與現代顯卡的 GPU 介面。DRM 公開了一個 API,使用者空間程序可以使用該 API 向 GPU 發送命令和數據,並執行諸如配置顯示器模式設置等操作。DRM 最初是作為 X Server 直接渲染基礎架構的核心空間組件開發的,但從那時起,它就被其他圖形堆棧替代方案(例如 Wayland)使用。
使用者空間程序可以使用 DRM API 命令 GPU 進行硬體加速 3D 渲染和影片解碼以及 GPGPU 計算。
官方 Linux 文件可以在原始碼庫中找到
Documentation/gpu
。這是github連結,為您提供方便。此外,維基百科的文章似乎相當廣泛。根據您的目標,僅此資源可能就足夠了,而且它肯定比官方文件更容易閱讀且技術性更少。