Mogul:位置透過型分散ツール キットライブラリ 中澤 仁 慶応大学政策・メディア研究科 研究目的 当初の研究目的 – 昨年の秋からスタート – 情報共有システム、CSCWアプリケーション構築 へのアプリケーションモビリティの応用 • 回覧板アプリケーション • ○○予約システム 現在の研究目的 – モバイルアプリケーションの設計・実装における 問題点を明らかにしその解決策を提示すること 設計目標 モバイルアプリケーション構築の簡略化 – 可変粒度のモビリティ – ホスト位置透過性 – 柔軟なプログラマビリティ 他のシステムや言語と比較して – モバイルアプリケーション構築が容易 – モビリティサポートに関するコード追加は不必要 – モビリティサポートに起因するバグを減少 機能概要 GUIのホスト間移動が可能なJavaライブラリの実現 – 全てのウィジェットはコード変更を伴わずに移動可能 – java.awt.Componentのサブクラス1個から移動可能 – Panel、Frame等を用いて大粒度の移動も可能 ウィジェットに対する以下の操作が可能 – move,copy – create,delete – save,restore ネットワーク接続ホスト間での移動、複製 遠隔ホスト上でのインスタンス作成、消去 ディスクを介した永続化 詳細については... 中澤他、“Mogul:位置透過型分散共有ツールキットライブラリ”、情報 処理学会OS研究会、沖縄、1998年5月 実現手法 ソフトウエア構成 – java.awt.Componentの代替クラス – ウィジェットのホスト間移動機構他を持つサーバプログラム – ユーザによるウィジェット操作手段としてのコマンド群 Component 技術的課題 ホスト間での計算機環境差・性能差への適応 – CPU、メモリ、ディスク、ディスプレイなどの物理的側面 – スケジューリングポリシ、ファイルシステムなどの環境的側面 – タイムゾーン、時刻や金額の表示形式などの論理的側面 ホスト位置に依存する資源・データへの継続アクセス – ファイルディスクリプタ、ソケットディスクリプタ 移動不可能なオブジェクトの取り扱い – java.awt.Image、java.lang.Thread、java.io.* スケジュール 今年度スケジュール – モバイルコード技術に関する基礎調査と問題認 識 – 技術的課題解決へ向けたフレームワークの確定 – 基礎部分の実装 来年度スケジュール – フレームワークに基づいた全体システムの構築 – SMAFプロジェクトとしてAgentSpaceとの共存? 現在の進捗状況 DONE – 基礎部分の実装(JDK1.1.6ベース) • 移動ウィジェット • サーバ • コマンド(move、copy、list) GOING – モバイルコードに関する基礎調査と問題認識 – フレームワーク デモの内容 サンプルコードをコンパイル クラスパスを変更し、実行 表示されたウィンドウを遠隔ホストに移動 もう一度もとのホストに移動 サンプルコード import java.awt.*; public class Kairan extends Frame{ private TextArea ta; public Kairan(){ Label l = new Label("\u56de\u89a7\u677f"); ta = new TextArea(5, 30); add("North", l); add("Center", ta); } public void setMessage(String msg){ ta.setText(""); ta.setText(msg); } public static void main(String argv[]){ Kairan k = new Kairan(); k.setMessage(“\u3053\u3093\u306b\u3061\u306f\u3002\n\u56de\u89a7\u677f....以下省略 "); k.pack(); k.show(); } } まとめ モバイルアプリケーション記述ライブラリ Mogulを開発している – 既存アプリケーションコードの変更が不必要 – 自由な粒度でアプリケーションを移動可能 技術的課題 – 移動に伴う計算機環境の変化 – ホスト位置依存データ デモ
© Copyright 2025 ExpyDoc