Xorg 顯示伺服器

最後更新: 2023-09-10 04:30:01 +0800 +0800
原文以英文撰寫。您正在閱讀AI翻譯版本。

Xorg 是 X11 顯示伺服器。GUI 程式使用 GTK 或 Qt 等工具組,以及 libX11 或 libxcb 等用戶端函式庫向它傳送 X11 請求。伺服器管理輸入、輸出和轉譯;GLX 和 XRender 等擴充功能支援加速轉譯。

連線至顯示器 #

DISPLAY 的形式為 [protocol/]host:display[.screen]。對於一般的本機顯示器,:0 會選取 /tmp/.X11-unix/X0。TCP 顯示器使用連接埠 6000 + display,但現代 Xorg 通常會停用 TCP 接聽。建立連線後,用戶端和伺服器會交換設定資料、請求和回應,以及按鍵和 expose 通知等非同步事件。SSH X11 轉送會在保留該協定的同時建立受保護的傳輸通道。

驗證 #

能夠開啟 Unix socket 並不代表已獲得授權。常見的 MIT-MAGIC-COOKIE-1 機制會將每個顯示器對應的隨機權杖儲存在 Xauthority 檔案中,通常是 ~/.Xauthority 或由 XAUTHORITY 指定的檔案。用戶端選取與 DISPLAY 相符的項目,並在設定交握中傳送 Cookie;伺服器會拒絕不相符的權杖。DISPLAY 表示連線位置,而 XAUTHORITY 表示要提供的憑證。xhost 可以修改伺服器端的存取控制,但寬泛的規則不如分享特定 Cookie 安全。

元件 #

X.Org 原始碼專案包括建置 X 和 Xorg 伺服器可執行檔的 xorg/xserver,以及建置 xinit 和 startx 的 xorg/app/xinit。顯示管理器通常會啟動伺服器和工作階段。startx 是以使用者為導向、包裝 xinit 的便利工具;確切的權限和裝置存取配置取決於發行版,以及其與 logind 或 seat 管理的整合方式。

評論

在 GitHub 上閱讀或評論(發表評論需要登入)