Nano-X (Microwindows)
詳細情報
- 作成者
- Greg Haerr
- 公開
- 1999年
- 種類
- ウィンドウシステム
- ライセンス
- MPL / GPL
- ソース
- github.com/ghaerr/microwindows
組み込みLinux向けの極小ウィンドウシステム。フレームバッファに直接描画し、Win32風とXlib風の2種類のAPIを同時に提供する。Microsoftから連絡があったため、Microwindowsから改名された。
Greg Haerrは1999年、X11が収まらない携帯端末や家電にグラフィックスを載せるためにMicrowindowsを始めた。サーバー、ドライバ、フォントまで含めて数百キロバイトで、Linuxのフレームバッファ上で動き、RTEMSやeCosでも、開発者向けにはX画面内のウィンドウでも動いた。変わっていたのは二面性だ。MicrowindowsのAPIはHWNDやGetDCを備えたWin32の模倣で、単純なWindowsプログラムなら再コンパイルで動かせた。Nano-X APIはDavid Bellが1991年に作ったmini-Xを土台とし、GrNewWindowのような関数を持つ軽量版Xlibの姿をしていて、ソケット越しの独自のクライアント・サーバー構成と、小さなウィンドウマネージャnanowmを備えた。
2001年に初のLinux携帯端末となったAgenda VR3は、FLTKを改造してMicrowindowsの上に載せていた。また中国や日本の機器にも数多く採用された。2005年に、「Windows」はMicrosoftのものだという指摘を受け、プロジェクトはNano-X Window Systemに改称した。その後、Qtの組み込み版や、KDriveの形で縮小されたX.Orgとの競争で市場の大半を失ったが、コードは今も保守されており、ウィンドウシステムが実際にどう組み上がっているかを示す最も読みやすい実例の一つだ。