| 何らかのウィンドウシステム下で開発した GUI をそのままにネットワーク公開しようとした場合,現状では,適切な規模や簡便さと安全性とを兼ね備えたフレームワークが存在しない.そこで本プロジェクトでは,ネットワークマルチウィンドウアプリケーションを簡単かつ安全に,リソース消費をできるだけ抑えて公開するためのフレームワークの開発を目的とする.
ここでは Ruby/Tk (オブジェクト指向スクリプト言語 Ruby の GUI 拡張のひとつ) と VNC (Virtual
Network Computing) とを用いる.ただし通常の VNC 利用とは異なり,ウィンドウマネージャは動かさない.Ruby/Tk
特有の機能を使ってウィンドウマネージャ機能と安全な (高いセキュリティレベルの) インタープリタとをひとつの Ruby/Tk プロセス上で動かす.安全なインタープリタ上で通常の
Ruby/Tk スクリプトをほぼそのまま動かせるようにすることで GUI プログラミングがネットワークに関してシームレスになり,特別な技術なしに低コストで高いインタラクティブ性を持ったネットワークアプリケーションの開発と公開とが可能になる.
本フレームワークでは,1接続当り VNC サーバと Ruby/Tk との2プロセスしか必要とせず,リソース消費を抑えることができる上,セキュリティリスクの低減のためにウィンドウマネージャ操作を含めたスクリプトの実行全体を監視下に置くことも可能となる.将来,VNC
が用いている RFB プロトコルを Tk の描画処理部で直接に扱うようにできれば VNC サーバすら不要となり,単一の Ruby/Tk
プロセスだけでの公開も可能になるであろう.
|