Xorgがどのように機能するかを理解しようとしています。
理解を示すために次の画像を作成しました(この画像は、Ctrl + Alt + F7を押した後のコンポーネントの状態を示しています)。
画像の説明は次のとおりです。
/dev/tty7
はXorgの制御端末です。私の理解は正しいですか?
あなたの説明はあなたの図と完全には一致せず、あなたの図よりも正確です。
Xサーバーは、入力または出力のいずれにもttyドライバーを使用しません。さまざまな入力デバイスのドライバーから直接入力を読み取り、グラフィックカードドライバーに直接出力を送信します。
入力デバイスをxinput
で一覧表示してから、_xinput list-props
_で詳細情報を取得できます。例えば:
_$ xinput | tail -n 1
↳ USB Keyboard id=10 [slave keyboard (3)]
$ xinput list-props 10 | tail -n 1
Device Node (263): "/dev/input/event2"
_
_/dev/input/event2
_から読み取ると、XサーバーがUSBキーボードから入力を取得していることがわかります。
出力については、同様のユーザーレベルのツールがあるかどうかはわかりません。 _xrandr --listproviders
_は、使用中または使用可能なグラフィックスドライバーを一覧表示しますが、_/dev
_エントリは一覧表示しません。 Xサーバーが開いているグラフィックデバイスをlsof -p$(pgrep Xorg)
または_less /var/log/Xorg.0.log
_で確認できます。
端末の制御の概念は、テキストモードセッション用に設計されました。 Xサーバーには、起動方法に応じて制御端末がある場合とない場合があります。 GUIメニューから開始されたXプログラムには、ウィンドウマネージャーに制御端末がないため、通常は制御端末がありません。端末で実行されているシェルから開始されたXプログラムには、その端末が制御端末としてあります。