(57)【要約】本発明のシステム及び方法は、コンピューターシステムの運営システムが直接関与しない独立されたビデオ出力チャンネルを用いてディスプレーに仮想インターフェース画面を出力する。仮想インターフェースを具現するための一つの実施例はオーバレイ機能を用いるものであって、もう一つはミニポート機能を用いるものである。オーバレイ機能を用いる場合は、ビデオメモリのオーバレイ領域を仮想インターフェース画面を表示するための独立されたビデオ出力チャンネルとして使用する。ミニポート機能を用いる場合は、ビデオメモリの一般領域を共通で使用するが、その一部を仮想インターフェースを表示するための独立されたビデオ出力チャンネルとして使用する。本発明の仮想インターフェースは、ビデオメモリの一般領域を使用した典型的な使用者インターフェースと異なって、運営システムが直接関与しないオーバレイ機能やミニポート機能を用いて仮想インターフェース画面を出力することにより、運営システムから画面リソースを割り当てられることなく、ディスプレー画面に仮想インターフェース画面を提供する。【選択図】図４
2010532514.tif 000002
【特許請求の範囲】
【請求項１】
ディスプレーの画面表示のためのビデオインターフェースを備えたコンピューターシステムの使用者インターフェースを提供するためのシステムにおいて、
運営システムと独立された画面出力のためのビデオ出力チャンネルを通して仮想インターフェースを提供する仮想インターフェース処理モジュールを含む 仮想インターフェースを提供するためのシステム。
【請求項２】
前記ビデオ出力チャンネルは、ビデオインターフェースに備えられたビデオメモリのオーバレイ領域を含むことを特徴とする請求項1に記載の仮想インターフェースを提供するためのシステム。
【請求項３】
前記仮想インターフェース処理モジュールは、
オーバレイドライバーを用いてオーバレイ領域を通して仮想インターフェース画面を表示するための仮想インターフェース画面表示モジュールと、
コンピューターシステムの運営システムに全域フッキングを設定してイベント発生によるメッセージを最優先で受け付け、仮想インターフェース関連メッセージである場合をフィルタリングし、仮想インターフェース画面表示モジュールにフィルタリング結果値を提供するメッセージ処理モジュールとを含むことを特徴とする請求項2に記載の仮想インターフェースを提供するためのシステム。
【請求項４】
前記ビデオ出力チャンネルは、ビデオインターフェースに備えられたビデオメモリの一般領域を含むことを特徴とする請求項1に記載の仮想インターフェースを提供するためのシステム。
【請求項５】
前記仮想インターフェース処理モジュールは、
ミニポートドライバーを用いてビデオメモリの一般領域を通して仮想インターフェース画面を表示するための仮想インターフェース画面表示モジュールと、
コンピューターシステムの運営システムに全域フッキングを設定してイベント発生によるメッセージを最優先で受け付け、仮想インターフェース関連メッセージである場合をフィルタリングし、仮想インターフェース画面表示モジュールにフィルタリング結果値を提供するメッシュ処理モジュールとを含むことを特徴とする請求項4に記載の仮想インターフェースを提供するためのシステム。
【請求項６】
前記仮想インターフェース処理モジュールによって仮想インターフェースを使用する仮想インターフェース応用プログラムは、非活性状態で動作することを特徴とするビデオオーバレイを用いた請求項1に記載の仮想インターフェース提供システム。
【請求項７】
ディスプレーの画面表示のためのビデオインターフェースを備えたコンピューターシステムの使用者インターフェースを提供するための方法において、
運営システムと独立された画面出力のためのビデオ出力チャンネルを通して仮想インターフェース画面を出力するために、運営システムの全域フッキングを設定する初期化段階と、
イベント発生によるメッセージを最優先で受け付け、仮想インターフェース関連メッセージである場合をフィルタリングする段階と、
フィルタリングされた仮想インターフェース関連メッセージを処理する段階とを含むことを特徴とする仮想インターフェースを提供するための方法。    
【請求項８】
前記初期化段階はオーバレイを生成する段階を含み、仮想インターフェース画面はビデオメモリのオーバレイ領域を通してディスプレー装置に表示されることを特徴とする請求項7に記載の仮想インターフェースを提供する方法。
【請求項９】
前記初期化段階はミニポートを生成する段階を含み、仮想インターフェース画面はビデオメモリの一般領域を通してディスプレー装置に表示されることを特徴とする請求項7に記載の仮想インターフェースを提供する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピューターシステムの使用者インターフェースに関するものであって、具体的には運営システムと独立された使用者インターフェースを提供するための新しい形態の仮想インターフェースを提供するシステム及び方法に関するものである。
【背景技術】
【０００２】
最近、コンピューターのハードウェア及びソフトウェアの急速な発展は、社会各分野でコンピューターを用いた多様な応用を可能としている。例えば、一般事務、オンラインバンキング、マルチメディア再生、オンラインゲーム、データ通信などに多様に応用されている。コンピューターの処理速度は中央処理装置の絶えずに続く動作周波数の向上によって更に早くなっている。しかし、中央処理装置によって早いデータ処理が行われたとしても、その周辺装置の応答速度及び処理速度はそれに合わせて速く行われることができず、コンピューターシステムの高速動作を難しくする。このような問題を解決するために、グラフィック処理分野では絶え間なく技術発展がなされており、最近は、高品質の2次元、3次元グラフィックイメージだけでなく、早い動画イメージを高速で具現することができるようになっている。しかし、より一層、コンピューター使用環境は更に大量のグラフィックデータを処理するように要求しつつあり、更に高速でグラフィックデータを処理できるようにするための技術開発がなされている。
【０００３】
コンピューターシステムの使用者インターフェースは運営システム技術と応用プログラム技術の発展とともに更に便利に進歩されてきた。コンピューターシステムの運営システムは、初期のテキスト基盤の使用者インターフェース環境から、現在の一般化されたグラフィック基盤のグラフィックユーザーインターフェース(GUI:Graphic User Interface)に発展されてきた。マイクロソフト社のウィンドウズ（登録商標）運営システムがその一例である。グラフィックユーザーインターフェース環境はウィンドウズ運営システムのようなマルチタスク環境で更に効果的に使用されている。マルチタスク環境で動作する様々な応用プログラムは、一つのディスプレー画面を通してウィンドウのような多数の応用プログラム画面と、それによる使用者インタフェースを表示することができるためである。
【０００４】
一方、マルチタスク環境で動作する一部応用プログラムは、画面リソースを全て独占する独占モードで動作する場合がある。大量のグラフィックデータを高速で処理しなければならないゲーム用応用プログラムの場合、高速画面表示のために殆どが独占モードで動作するように設計されている。ところで、マルチタスク環境を提供する運営システムにおいて、一つの応用プログラムが画面リソースを全て独占して使用すると、他の応用プログラムは既に独占された画面リソースが割り当てられないため、独占された一つのディスプレー画面を通して使用者とインターフェースをする方法がない。もちろん、独占モードで動作する当該応用プログラムを非活性化させて独占モードを取り消し、他の応用プログラムを活性化することもできるが、独占モードで動作する間には、一つのディスプレー画面を通して使用者インターフェースを同時に提供することはできない。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、コンピューターシステムにおいて運営システムから画面リソースを割り当てられることなく、運営システムと独立された使用者インターフェースを提供する仮想インターフェースを提供するためのシステム及び方法を提供することにある。
【０００６】
本発明の他の目的は、コンピューターシステムにおいて運営システムから画面リソースを独占して動作する応用プログラムを非活性化させなくても、ディスプレー画面を通して使用者インターフェースを出力することができる仮想インターフェースを提供するためのシステム及び方法を提供することにある。
【課題を解決するための手段】
【０００７】
上記した技術的課題を達成するための本発明の一面は、ディスプレーの画面表示のためのビデオインターフェースを備えたコンピューターシステムの使用者インターフェースを提供するためのシステムに関するものである。本発明の仮想インターフェースを提供するためのシステムは、運営システムと独立された画面出力のためのビデオ出力チャンネルを通して仮想インターフェースを提供する仮想インターフェース処理モジュールを含む。
【０００８】
一実施例において、前記ビデオ出力チャンネルは、ビデオインターフェースに備えられたビデオメモリのオーバレイ領域を含む。ここで、前記仮想インターフェース処理モジュールは、オーバレイドライバーを用いてオーバレイ領域を通して仮想インターフェース画面を表示するための仮想インターフェース画面表示モジュールと、コンピューターシステムの運営システムに全域フッキングを設定してイベント発生によるメッセージを最優先で受け付け、仮想インターフェース関連メッセージである場合をフィルタリングし、仮想インターフェース画面表示モジュールにフィルタリング結果値を提供するメッセージ処理モジュールとを含む。
【０００９】
他の実施例において、前記ビデオ出力チャンネルは、ビデオインターフェースに備えられたビデオメモリの一般領域を含む。ここで、前記仮想インターフェース処理モジュールは、ミニポートドライバーを用いてビデオメモリの一般領域を通して仮想インターフェース画面を表示するための仮想インターフェース画面表示モジュールと、コンピューターシステムの運営システムに全域フッキングを設定してイベント発生によるメッセージを最優先で受け付け、仮想インターフェース関連メッセージである場合をフィルタリングし、仮想インターフェース画面表示モジュールにフィルタリング結果値を提供するメッシュ処理モジュールとを含む。
【００１０】
本発明の他の一面は、ディスプレーの画面表示のためのビデオインターフェースを備えたコンピューターシステムの使用者インターフェースを提供するための方法に関するものである。本発明の仮想インターフェースを提供するための方法は、運営システムと独立された画面出力のためのビデオ出力チャンネルを通して仮想インターフェース画面を出力するために、運営システムの全域フッキングを設定する初期化段階と、イベント発生によるメッセージを最優先で受け付け、仮想インターフェース関連メッセージである場合をフィルタリングする段階と、    フィルタリングされた仮想インターフェース関連メッセージを処理する段階とを含む。
【００１１】
一実施例において、前記初期化段階はオーバレイを生成する段階を含み、仮想インターフェース画面はビデオメモリのオーバレイ領域を通してディスプレー装置に表示される。
【００１２】
他の実施例において、前記初期化段階はミニポートを生成する段階を含み、仮想インターフェース画面はビデオメモリの一般領域を通してディスプレー装置に表示される。
【図面の簡単な説明】
【００１３】
【図１】本発明の好ましい実施例による仮想インターフェースが提供されるコンピューターシステムの例示的なブロック図である。
【図２】オーバレイ機能を用いた仮想インターフェースが提供されるディスプレー画面の例示図である。
【図３】オーバレイ機能を用いた仮想インターフェース処理モジュールの動作を説明するためのブロック図である。
【図４】オーバレイ機能を用いた仮想インターフェース処理モジュールの動作手順を示すフロー図である。
【図５】ミニポート機能を用いた仮想インターフェースが提供されるディスプレー画面の例示図である。
【図６】ミニポート機能を用いた仮想インターフェース処理モジュールの動作を説明するためのブロック図である。
【図７】ミニポート機能を用いた仮想インターフェース処理モジュールの動作手順を示すフロー図である。
【発明を実施するための形態】
【００１４】
本発明と本発明の動作上の利点及び本発明の実施例によって達成される目的を充分に理解するためには、本発明の好ましい実施例を例示する添付図面及び添付図面に記載された内容を参照すべきである。本発明の実施例は様々な形態に変形されるので、本発明の範囲が下記に述べる実施例によって限定されると解釈されてはいけない。本実施例は当業界で平均的な知識を有する者に本発明を更に完全に説明するために提供されるものである。そして、本発明の要旨を不必要にぼかす可能性があると判断される公知機能及び構成に対する詳細な記述は省略される。以下、添付された図面を用いて本発明の好ましい実施例による仮想インターフェースを提供するためのシステム及び方法を詳細に説明する。
【００１５】
図1は、本発明の好ましい実施例による仮想インターフェースが提供されるコンピューターシステムの例示的なブロック図である。
【００１６】
図1において、例示的なコンピューターシステムは、プロセッシングユニット100、ビデオインターフェース200、システムバス300、システムメモリ400及び、多種類のインターフェース500〜540と周辺装置を含む。多種類のインターフェース500〜540は、例えば、ハードディスク装置510のような除去が不可能な不揮発性メモリのためのインターフェース500、磁気ディスク514や光ディスク518のような除去が可能な不揮発性メモリのためのインターフェース510、キーボード522やポインティング装置524のような使用者入力のためのインターフェース520、スピーカー532やプリンター534のような周辺機器出力のためのインターフェース530、近距離通信網546や遠距離通信網544のためのモデム542及びネットワークインターフェース540を含む。
【００１７】
しばしばグラフィックカードと呼ばれるビデオインターフェース200は、グラフィック処理ユニット210、ビデオメモリ220及びディスプレー600に連結された出力ポート230を含めて構成される。グラフィック処理ユニット210はビデオインターフェース200の動作の制御とグラフィックデータの演算処理を担当する。
【００１８】
ハードディスク510には運営システム421、一般応用システム422、仮想インターフェース応用プログラム424、及び仮想インターフェース処理モジュール426が貯蔵されている。仮想インターフェース応用プログラム424は仮想インターフェース処理モジュール426を通して仮想インターフェースを提供する応用プログラムであって、仮想インターフェース処理モジュール426は仮想インターフェースを提供するための処理モジュール426であり、運営システムから画面リソースを割り当てられることなく、ディスプレー画面を通して仮想インターフェースを出力する。
【００１９】
システムメモリ400は大きく、不揮発性メモリであるROM410と、揮発性メモリであるRAM420とで構成される。ROM410には基本入出力システム（BIOS；412）が搭載され、コンピューターシステムがブーティングされるとともにハードディスク510からRAM512に運営システム421がローディングされて起動される。運営システム421は、例えば、マイクロソフト社から提供されるウィンドウズ運営システムであって、マルチタスクが可能な運営システムである。一般応用プログラム422やオーバレイ応用プログラム424などの一つ以上の応用プログラムは、実行過程においてRAM420にローディングされて動作される。
【００２０】
本発明のシステム及び方法は、コンピューターシステムの運営システム421が直接関与しない独立されたビデオ出力チャンネルを用いてディスプレー600に仮想インターフェース画面を出力する。仮想インターフェースを具現するための一つの実施例はオーバレイ機能を用いることであって、もう一つはミニポート機能を用いることである。オーバレイ機能を用いる場合は、図2及び図3に示したようにビデオメモリ220のオーバレイ領域226を仮想インターフェース画面を表示するための独立されたビデオ出力チャンネルとして使用する。ミニポート機能を使用する場合には、図5及び図6に示したようにビデオメモリ220の一般領域222を共通に使用するが、その一部を仮想インターフェースを表示するための独立されたビデオチャンネルとして使用する。
【００２１】
図2はオーバレイ機能を用いた仮想インターフェースが提供されるディスプレー画面の例示図である。
【００２２】
図2において、本発明の仮想インターフェースを具現するための一つの実施例はオーバレイ機能を用いることである。ビデオメモリ220は一般領域222とオーバレイ領域226とを含む。一般領域222は運営システム421や一般応用プログラム422の画面表示のために割り当てられた領域であって、一般ビデオデータ224が貯蔵される。本発明においてオーバレイ領域226は仮想インターフェース画面616を表示するための領域として割り当てられて使用され、仮想インターフェース画面を出力するためのオーバレイビデオデータ228が貯蔵される。
【００２３】
ビデオインタフェース200はオーバレイ機能が非活性化された場合、一般領域222に貯蔵された一般ビデオデータ224のみディスプレー600に提供して背景画面612と一般応用プログラム画面614を出力する。仮想インターフェースを使用するためにオーアレイ機能が活性化された場合には、ビデオインターフェース200は一般領域222に貯蔵されたビデオデータの一部をオーバレイ領域226に貯蔵されたオーバレイビデオデータ228に置換してディスプレー600に提供することにより、背景画面612と一般応用プログラム画面614上にオーバレイされた仮想インターフェース画面616を出力する。この際に、仮想インターフェース画面616はディスプレーされる全ての画面より最上段に表示される。
【００２４】
仮想インターフェースはビデオメモリ220のオーバレイ領域226を用いて運営システム421とは独立的に仮想インターフェース画面616を提供する。即ち、仮想インターフェースは、運営システム421に提供される背景画面612や一般応用プログラム画面614とは独立的に仮想インターフェース画面616を表示する。仮想インターフェース画面616は仮想インターフェース背景イメージ616a、データ入力のための入力ボックス616b、画面制御のためのコントロールボックス616cなどのような一つ以上の画面構成モジュールを含む。
【００２５】
図3は、オーバレイ機能を用いた仮想インターフェース処理モジュールの動作を説明するためのブロック図である。
【００２６】
図3において、オーバレイ機能を用いて仮想インターフェースを提供するために、仮想インターフェース処理モジュール426が提供される。仮想インターフェース処理モジュール426は仮想インターフェース応用プログラム424とともにコンピューターシステムで実行される。仮想インターフェース応用プログラム424は多様な形態の応用プログラムである。特に、仮想インターフェース応用プログラム424と仮想インターフェース処理モジュール426は、運営システム421の立場から見ると、非活性状態で動作する。一般応用プログラム422はビデオメモリ220の一般領域224を制御するビデオドライバー427を通してディスプレー600に一般応用プログラム画面614が出力されるようにする。その反面、仮想インターフェース応用プログラム424はビデオメモリ220のオーバレイ領域226を制御するオーバレイドライバー428を通して仮想インターフェース画面616がディスプレー600に出力されるようにする。
【００２７】
仮想インターフェース処理モジュール426は、仮想インターフェース画面616がディスプレー600に出力されるようにする一連の処理過程を担当する。仮想インターフェース処理モジュール426は仮想インターフェース表示モジュール426aとメッセージ処理モジュール426bとで構成される。仮想インターフェース表示モジュール426aは、メッセージ処理モジュール426bの処理結果と仮想インターフェース応用プログラム424の動作により、ビデオメモリ200のオーバレイ領域226に仮想インターフェース画面616の表示のために必要なビデオデータ228を貯蔵する。メッセージ処理モジュール426bは、使用者入力インターフェース520、又はその他のインターフェース装置からの入力によるイベント発生から生成されるメッセージを受け付け、仮想インターフェース関連メッセージである場合、該当される処理が行われるようにメッセージをフィルタリングするモジュールである。
【００２８】
図4は、オーバレイ機能を用いた仮想インターフェース処理モジュールの動作手順を示すフロー図である。
【００２９】
図4において、段階S100で仮想インターフェース表示モジュール426が動作を開示すると、段階S110でシステムに搭載されたビデオインターフェース200がオーバレイを支援するのか、オーバレイが支援される場合、使用可能なオーバレイリソースが残っているのかを判断する。オーバレイの生成が可能であれば、段階S120でオーバレイを生成する。オーバレイの生成には例えば、DirectXの DirectDrawやDirectShow、OpenGLなどの支援ライブラリーを利用することができる。
【００３０】
もし、ビデオインターフェース200がオーバレイ機能を支援しないか、支援するとしても、オーバレイリソースが残っていない場合は、段階S130に進行してオーバレイ誤謬メッセージを出力し、段階S140で仮想インターフェース処理モジュール426の動作は終了される。
【００３１】
オーバレイの生成以後、仮想インターフェース処理モジュール426は段階S150で運営システム421の全域フッキングを設定する。例えば、ウィンドウズ運営システムの場合は、APIを用いて全域フッキングの設定が可能である。全域フッキングが設定されると、システムで発生する全てのイベントに対するメッセージは、仮想インターフェース処理モジュール426によって最優先で受け付けられる。以上のようなオーバレイを用いた仮想インターフェースのための初期化課程が完了すると、段階S160でオーバレイ機能を用いて仮想インターフェース画面616を表示する。
【００３２】
次いで、段階S170でメッセージ処理モジュール426bはイベント発生によるメッセージが発生されるのかを判断する。メッセージが受け付けられると、段階S180に進行して現在受け付けられたメッセージが仮想インターフェース関連メッセージであるのかを判断するフィルタリング過程を行う。仮想インターフェース関連メッセージであると判断されると、段階S190に進行して仮想インターフェース関連メッセージ処理を行う。しかし、仮想インターフェース関連メッセージでない場合は、段階S200に進行して活性化された一般応用プログラム422にメッセージを伝送する。
【００３３】
段階S190の仮想インターフェース関連メッセージ処理段階において、メッセージ処理モジュール426bは、フィルタリングされた結果値で入力されたメッセージ属性値を仮想インターフェース表示モジュール426aに提供する。仮想インターフェース表示モジュール426aはメッセージ処理モジュール426bから提供されるメッセージ属性値の伝達を受け、仮想インターフェース画面616に適切な画面表示が行われるようにする。メッセージ属性値は仮想インターフェース応用プログラム424にも伝達され、仮想インターフェース応用プログラム424の本来のプログラム機能が行われるようにする。また、仮想インターフェース表示モジュール426aは仮想インターフェース応用プログラム424から仮想インターフェース画面616に表示される値を提供され、仮想インターフェース画面616に適切な画面表示が行われるようにする。
【００３４】
例えば、仮想インターフェース画面616領域内でポインティング装置524の入力が発生すると、これと関連したイベントによるメッセージが発生され、メッセージ処理モジュール426bに受け付けられる。図2に示したように、仮想インターフェース画面616に表示された入力ボックス616bを選択するためのポインティング装置524の入力があった場合、メッセージ処理モジュール426bはこれをオーバレイ画面表示モジュール426aに通知する。そうすると、オーバレイ画面表示モジュール426aは入力ボックス616bの内部該当位置にテキスト入力のためのカーソルを仮想で表示する。この状態で、また使用者がキーボード522で文字キーを入力すると、メッセージ処理モジュール426bは仮想インターフェース関連メッセージであると判断し、入力されたキーボード値を仮想インターフェース表示モジュール426aに伝達する。仮想インターフェース表示モジュール426aは、入力されたキーボード値による文字イメージが入力ボックス616bに表示されるように、オーバレイ領域226に、該当領域に文字イメージを表示するためのビデオデータを記入する。この際に、オーバレイ領域に貯蔵されるビデオデータは、全てのグラフィックカードで支援するYUVフォーマットに変換して貯蔵するのが望ましい。
【００３５】
図5は、ミニポート機能を用いた仮想インターフェースが提供されるディスプレー画面の例示図である。
【００３６】
図5において、本発明の仮想インターフェースを具現するための他の実施例は、ディスプレー600の画面出力のための二つのビデオ出力チャンネルを利用する。二つのビデオ出力チャンネルは例えば、一般ビデオポートとビデオミニポートで構成される。このような二つのビデオ出力チャンネルを用いた方式では、仮想インターフェース画面616を表示するためにビデオメモリ200の一般領域222を使用する。
【００３７】
図6は、ミニポート機能を用いた仮想インターフェース処理モジュールの動作を説明するためのブロック図である。
【００３８】
図6において、ミニポート機能を用いて仮想インターフェースを提供する仮想インターフェース表示モジュール426は、上述した実施例のように仮想インターフェース表示モジュール426aとメッセージ処理モジュール426bとで構成される。仮想インターフェース処理モジュール426は、仮想インターフェース応用プログラム424とともにコンピュータシステムで実行される。仮想インターフェース応用プログラム424は多様な形態の応用プログラムである。この実施例においても、上述した例のように、仮想インターフェース応用プログラム424と仮想インターフェース処理モジュール426は、運営システム421の立場から見ると、非活性状態で動作する。一般応用プログラム422はビデオメモリ220の一般領域224を制御するビデオドライバー427を通してディスプレー600に一般応用プログラム画面614を出力する。その反面、仮想インターフェース応用プログラム424はミニポートを駆動するミニポートドライバー429を通して仮想インターフェース画面616がディスプレー600に出力されるようにする。
【００３９】
仮想インターフェース処理モジュール426は、仮想インターフェース画面616がディスプレー600に出力されるようにする一連の処理過程を担当する。仮想インターフェース表示モジュール426aは、メッセージ処理モジュール426bの処理結果と仮想インターフェース応用プログラム424の動作によって、ビデオメモリ200の一般領域222に仮想インターフェース表示のために必要なビデオデータ228を貯蔵して仮想インターフェース画面616を更新する。メッセージ処理モジュール426bは、上述した例と同様に、使用者入力インターフェース520、又はその他のインターフェース装置からの入力によるイベント発生と、それによるメッセージを受け付け、仮想インターフェース関連メッセージである場合、該当する処理が行われるようにメッセージをフィルタリングする。
【００４０】
図7は、ミニポート機能を用いた仮想インターフェース処理モジュールの動作手順を示すフロー図である。
【００４１】
図7において、ミニポート機能を用いた仮想インターフェース処理モジュール426の動作は、上述したオーバレイ機能を用いた場合とほぼ同一な動作手順を有する。但し、仮想インターフェースのための初期化課程において段階が少し相違している。
【００４２】
図7において、段階S100で仮想インターフェース処理モジュール426が動作を開示すると、段階S110’でシステムに搭載されたビデオインターフェース200がミニポートを支援するのか、ミニポートが支援される場合、使用可能なリソースが残っているのかを判断する。ミニポートの生成が可能であれば、段階S120’でミニポートを生成する。ミニポートの生成には例えば、ウィンドウドライバー開発キットのような開発ツールを用いて製作して使用することができる。
【００４３】
もし、ビデオインターフェース200がミニポート機能を支援しないか、支援するとしても、ミニポートを使用するためのリソースが残っていない場合は、段階S130’に進行してミニポート誤謬メッセージを出力し、段階S140で仮想インターフェース処理モジュール426の動作は終了される。
【００４４】
ミニポートの生成以後、仮想インターフェース処理モジュール426は段階S150で運営システム421の全域フッキングを設定する。例えば、ウィンドウズ運営システムの場合には、APIを用いて全域フッキングの設定が可能である。全域フッキングが設定されると、システムで発生する全てのイベントに対するメッセージは仮想インターフェース処理モジュール426によって最優先で受け付けられる。以上のようなミニポートを用いた仮想インターフェースのための初期化課程が完了すると、段階S160でミニポート機能を用いて仮想インターフェース画面616を表示する。そして、その後のメッセージ発生による処理過程は、上述したオーバレイ機能を用いた実施例と同一である。
【００４５】
以上のような本発明の仮想インターフェースは、マルチタスク環境の運営システムにおいて一つの応用プログラムが活性化された状態でも、その活性化された応用プログラムを非活性化させることなく、他の非活性化された応用プログラムの使用者インターフェースをディスプレー画面に提供することができる。特に、独店モードで動作する応用プログラムとともに、更に他の応用プログラムを非活性化状態で実行させようとする際に非常に有用である。
【００４６】
例えば、一つのオンラインゲームプログラムが活性化されている時、画面リソースはそのプログラムによって独占される。よって、他の応用プログラムを活性化させるためには、独占モードで動作するオンラインゲームプログラムを非活性化させるか、終了させなければならない。このような場合、本発明の仮想インターフェースを活用すれば、独占モードで動作する応用プログラムを非活性化させるか、終了させることなく、必要な応用プログラムを非活性化状態で実行させ、 仮想インターフェースを通して非活性化状態の応用プログラムと使用者との間にインターフェースを提供することができる。
【００４７】
以上で説明した本発明のビデオオーバレイを用いた仮想インターフェース及び方法の実施例は例示的なものに過ぎなく、本発明の属する技術分野の通常の知識を有する者なら、多様な変形及び均等な他の実施例が可能であるという点がよく分かるだろう。従って、本発明は上記の詳細な説明で言及される特別な形態に限定されないものとして理解すべきである。従って、本発明の本当の技術的保護範囲は添付された特許請求範囲の技術的思想によって定めされければならなく、本発明は添付した請求範囲によって定義される本発明の精神と範囲内にある全ての変形物と均等物及び代替物を含むものとして理解すべきである。
【産業上の利用可能性】
【００４８】
上述したような本発明の仮想インターフェースは、ビデオメモリの一般領域を使用し、運営システムの直接的な関与を受ける典型的な使用者インターフェースと異なって、オーバレイ機能やミニポート機能を用いて運営システムと独立的に仮想インターフェース画面を出力することによって、運営システムから画面リソースを割り当てられることなくディスプレー画面に仮想インターフェース画面を提供する。特に、独占モードで動作する応用プログラムを非活性化させることなく、独占モードで動作する応用プログラムの画面上に仮想インターフェース画面を提供することができる。また、オーバレイを用いた仮想インターフェースを提供する場合には、仮想インターフェース画面を外部でモニタリングすることができないため、パスワードやアイディー入力などのような重要な情報を取り扱う、保安が極めて必要とされる応用プログラムの場合、非常に有用に使用される。
【図１】
2010532514.tif 000003
【図２】
2010532514.tif 000004
【図３】
2010532514.tif 000005
【図４】
2010532514.tif 000006
【図５】
2010532514.tif 000007
【図６】
2010532514.tif 000008
【図７】
2010532514.tif 000009
【国際調査報告】
2010532514.tif 000010
2010532514.tif 000011