X11:X.Orgサーバーは、GUI環境を実装するためにどのシステムコールを使用しますか?

X11:X.Orgサーバーは、GUI環境を実装するためにどのシステムコールを使用しますか?

最近のXlibの研究中に、X.OrgサーバーがGUI環境を実装するためにどのシステムコール(API)を使用するかについて質問があります。

出力側でシステムコールを使用すると、画面にウィンドウ(色付きの四角形など)を描画できます。入力側では、任意のシステムコールを介してキーボードとマウスから入力情報を取得できます。

X.Orgサーバーの助けを借りずにウィンドウを描画できますか?もちろん、これは実用的ではありません。しかし、それが可能かどうかを知りたいです。

ベストアンサー1

X.OrgサーバーがGUI環境を実装するために使用するシステムコール(API)は何ですか?

XサーバーとXクライアント間の通信に使用されるネットワーク/ドメインソケット。

ハードウェアドライバがハードウェアを制御するために必要なものは何でも:初期のLinuxでは、これは主にメモリマップされたI / Oとポートでしたが、ほとんどは独自のAPIを持つカーネルドライバです。

ウィンドウを描画できるシステムコール

これに対するシステムコールはありません。

入力側では、任意のシステムコールを介してキーボードとマウスから入力情報を取得できます。

Xにはまだ低レベルのドライバがありますが、今日のデフォルトではすべてがevdevドライバを使用しています。カーネル入力レイヤー

X.Orgサーバーの助けを借りずにウィンドウを描画できますか?

うん、フレームバッファドライバ。基本的には、フレームバッファを表すために使用できる/dev/fb0同様のデバイスとビデオモードなどを選択できるデバイスがあります。mmapioctl

もちろん、これは実用的ではありません。

これは非常に実用的で、多くの組み込みLinuxシステムで使用されています。

おすすめ記事