(57)【特許請求の範囲】
【請求項１】
複数のバーチャルマシーンをマッピングする方法であって、
当該方法は、
クライアント装置が、Ｎ個の接続されるディスプレイ装置のディスプレイパラメータを個別に取得するステップと、
前記クライアント装置がＭ個のバーチャルマシーンに接続されるとき、前記クライアント装置が、前記Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信するステップと、
前記クライアント装置が、前記Ｎ個のディスプレイ装置のディスプレイパラメータに従って前記Ｎ個のディスプレイ装置から前記Ｍ個のバーチャルマシーンのためのディスプレイ装置を個別に選択するステップと、
前記クライアント装置が、前記バーチャルデスクトップを表示するため、前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置に前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを出力するステップと、
を有し、ＮはＭ以上であり、ＮとＭとの双方は自然数であり、Ｍは２以上であり、
当該方法は更に、
前記クライアント装置が外部装置に接続されるとき、前記Ｍ個のバーチャルマシーンの周辺ポリシーを個別に取得し、前記外部装置のタイプを取得するステップと、
周辺ポリシーが前記外部装置のタイプに一致するＬ個のバーチャルマシーンに前記外部装置をマッピングするステップであって、Ｌは自然数であり、Ｌは１以上かつＭ以下である、マッピングするステップと、
前記外部装置のタイプに従って前記外部装置の使用権を前記Ｌ個のマッピングされたバーチャルマシーンにおける少なくとも１つのバーチャルマシーンに割り当てるステップと、
を有し、
前記外部装置のタイプに従って前記外部装置の使用権を前記Ｌ個のマッピングされたバーチャルマシーンにおける少なくとも１つのバーチャルマシーンに割り当てるステップは、
前記外部装置のタイプがオーディオ装置であるとき、前記オーディオ装置の使用権を前記Ｌ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるステップであって、前記オーディオ装置の使用権を取得する前記バーチャルマシーンは前記クライアント装置を利用することによってユーザにより現在操作されているバーチャルマシーンである、割り当てるステップと、
前記外部装置のタイプがインタフェース装置であるとき、トークンネゴシエーションを利用することによって前記インタフェース装置の使用権を前記Ｌ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるステップであって、前記インタフェース装置の使用権を取得する前記バーチャルマシーンは前記インタフェース装置を要求したバーチャルマシーンであり、前記インタフェース装置はパラレル／シリアルインタフェース装置又はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェース装置である、割り当てるステップと、
を具体的に含む方法。
【請求項２】
前記クライアント装置が、Ｎ個の接続されるディスプレイ装置のディスプレイパラメータを個別に取得するステップは、前記クライアント装置が、ボトムレイヤドライバを呼び出すことによって前記Ｎ個のディスプレイ装置のディスプレイパラメータを個別に取得するステップを具体的に含み、前記ディスプレイパラメータは前記ディスプレイ装置の使用状態パラメータを含み、
前記クライアント装置が、前記バーチャルデスクトップを表示するため、前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置に前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを出力するステップは、前記クライアント装置が、前記ボトムレイヤドライバを呼び出すことによって、前記バーチャルデスクトップを表示するため、前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置に前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを出力するステップを具体的に含む、請求項１記載の方法。
【請求項３】
前記クライアント装置が、前記Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信するステップは、
前記クライアント装置と前記Ｍ個のバーチャルマシーンとの間にデスクトッププロトコルチャネルを確立するステップと、
前記確立されたデスクトッププロトコルチャネルを介し前記Ｍ個のバーチャルマシーンにより送信される前記バーチャルデスクトップを個別に受信するステップと、
を具体的に含む、請求項１又は２記載の方法。
【請求項４】
前記クライアント装置が、前記Ｎ個のディスプレイ装置のディスプレイパラメータに従って前記Ｎ個のディスプレイ装置から前記Ｍ個のバーチャルマシーンのためのディスプレイ装置を個別に選択するステップは、
新たなバーチャルマシーンが接続されるとき、前記クライアント装置が、前記Ｍ個のバーチャルマシーンが接続される順序に従って前記Ｎ個のディスプレイ装置のディスプレイパラメータにおける使用状態パラメータをチェックするステップと、
前記Ｎ個のディスプレイ装置において使用状態パラメータが“未使用”であるディスプレイ装置を前記新たに接続されたバーチャルマシーンに割り当てるステップと、
を具体的に含む、請求項１乃至３何れか一項記載の方法。
【請求項５】
複数のバーチャルマシーンをマッピングするシステムであって、当該システムは、クライアント装置と前記クライアント装置に接続されるＮ個のディスプレイ装置とを有し、
前記クライアント装置は、前記Ｎ個のディスプレイ装置のディスプレイパラメータを個別に取得し、前記クライアント装置がＭ個のバーチャルマシーンに接続されるとき、前記Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信し、前記Ｎ個のディスプレイ装置のディスプレイパラメータに従って前記Ｎ個のディスプレイ装置から前記Ｍ個のバーチャルマシーンのためのディスプレイ装置を個別に選択し、前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置に前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを出力するよう構成され、ＮはＭ以上であり、ＮとＭとの双方は自然数であり、Ｍは２以上であり、
前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置は、前記クライアント装置により出力された前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを表示するよう個別に構成され、
前記クライアント装置は更に、前記クライアント装置が外部装置に接続されるとき、前記Ｍ個のバーチャルマシーンの周辺ポリシーを個別に取得し、前記外部装置のタイプを取得し、周辺ポリシーが前記外部装置のタイプに一致するＬ個のバーチャルマシーンに前記外部装置をマッピングし、ここで、Ｌは自然数であり、Ｌは１以上かつＭ以下であり、前記外部装置のタイプに従って前記Ｌ個のマッピングされたバーチャルマシーンの少なくとも１つに前記外部装置の使用権を割り当てるよう構成され、
前記外部装置のタイプに従って前記外部装置の使用権を前記Ｌ個のマッピングされたバーチャルマシーンにおける少なくとも１つのバーチャルマシーンに割り当てることは、
前記外部装置のタイプがオーディオ装置であるとき、前記オーディオ装置の使用権を前記Ｌ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当て、ここで、前記オーディオ装置の使用権を取得する前記バーチャルマシーンは前記クライアント装置を利用することによってユーザにより現在操作されているバーチャルマシーンであり、
前記外部装置のタイプがインタフェース装置であるとき、トークンネゴシエーションを利用することによって前記インタフェース装置の使用権を前記Ｌ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当て、ここで、前記インタフェース装置の使用権を取得する前記バーチャルマシーンは前記インタフェース装置を要求したバーチャルマシーンであり、前記インタフェース装置はパラレル／シリアルインタフェース装置又はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェース装置である、
ことを具体的に含むシステム。
【請求項６】
クライアント装置であって、
当該クライアント装置は、
Ｎ個の接続されるディスプレイ装置のディスプレイパラメータを個別に取得するよう構成される取得部と、
前記クライアント装置がＭ個のバーチャルマシーンに接続されるとき、前記Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信するよう構成される受信部と、
前記取得部により取得された前記Ｎ個のディスプレイ装置のディスプレイパラメータに従って前記Ｎ個のディスプレイ装置から前記Ｍ個のバーチャルマシーンのためのディスプレイ装置を個別に選択するよう構成される選択部と、
前記バーチャルデスクトップを表示するため、前記Ｍ個のバーチャルマシーンについて前記選択部により個別に選択された前記ディスプレイ装置に前記受信部により受信された前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを出力するよう構成される出力部と、
を有し、ＮはＭ以上であり、ＮとＭとの双方は自然数であり、Ｍは２以上であり、
前記取得部は更に、前記クライアント装置が外部装置に接続されるとき、前記Ｍ個のバーチャルマシーンの周辺ポリシーを個別に取得し、前記外部装置のタイプを取得するよう構成され、
当該クライアント装置は更に、
周辺ポリシーが前記外部装置のタイプに一致するＬ個のバーチャルマシーンに前記外部装置をマッピングするよう構成されるマッピング部であって、Ｌは自然数であり、Ｌは１以上かつＭ以下である、マッピング部と、
前記外部装置のタイプに従って前記外部装置の使用権を前記マッピング部によりマッピングされたＬ個のバーチャルマシーンにおける少なくとも１つのバーチャルマシーンに割り当てるよう構成される割当て部と、
を有し、
前記割当て部は、
前記外部装置のタイプがオーディオ装置であるとき、前記オーディオ装置の使用権を前記Ｌ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるよう構成される第１割当てサブ部であって、前記オーディオ装置の使用権を取得する前記バーチャルマシーンは前記クライアント装置を利用することによってユーザにより現在操作されているバーチャルマシーンである、第１割当てサブ部と、
前記外部装置のタイプがインタフェース装置であるとき、トークンネゴシエーションを利用することによって前記インタフェース装置の使用権を前記Ｌ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるよう構成される第２割当てサブ部であって、前記インタフェース装置の使用権を取得する前記バーチャルマシーンは前記インタフェース装置を要求したバーチャルマシーンであり、前記インタフェース装置はパラレル／シリアルインタフェース装置又はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェース装置である、第２割当てサブ部と、
の少なくとも１つを含むクライアント装置。
【請求項７】
前記取得部は、ボトムレイヤドライバを呼び出すことによって前記Ｎ個のディスプレイ装置のディスプレイパラメータを個別に取得するよう具体的に構成され、前記ディスプレイパラメータは前記ディスプレイ装置の使用状態パラメータを含み、
前記出力部は、前記ボトムレイヤドライバを呼び出すことによって、前記バーチャルデスクトップを表示するため、前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置に前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを出力するよう具体的に構成される、請求項６記載のクライアント装置。
【請求項８】
前記受信部は、
前記クライアント装置と前記Ｍ個のバーチャルマシーンとの間にデスクトッププロトコルチャネルを確立するよう構成されるチャネル確立サブ部と、
前記チャネル確立サブ部により確立されたデスクトッププロトコルチャネルを介し前記Ｍ個のバーチャルマシーンにより送信される前記バーチャルデスクトップを個別に受信するよう構成されるデスクトップ受信サブ部と、
を含む、請求項６又は７記載のクライアント装置。
【請求項９】
前記選択部は、
新たなバーチャルマシーンが接続されるとき、前記Ｍ個のバーチャルマシーンが接続される順序に従って前記Ｎ個のディスプレイ装置のディスプレイパラメータにおける使用状態パラメータをチェックするよう構成される状態チェックサブ部と、
前記状態チェックサブ部によりチェックされた前記ディスプレイ装置の使用状態に従って、前記Ｎ個のディスプレイ装置において使用状態パラメータが“未使用”であるディスプレイ装置を前記新たに接続されたバーチャルマシーンに割り当てるよう構成される装置割当てサブ部と、
を含む、請求項６乃至８何れか一項記載のクライアント装置。
【請求項１０】
クライアント装置であって、当該クライアント装置は、バスと、前記バスを利用することによって接続されるネットワークインタフェースと、周辺インタフェースと、ドライバインタフェースと、プロセッサとを有し、
前記周辺インタフェースは、Ｎ個のディスプレイ装置に接続するよう構成され、
前記ネットワークインタフェースは、Ｍ個のバーチャルマシーンに接続するよう構成され、
前記プロセッサは、前記Ｎ個のディスプレイ装置のディスプレイパラメータを個別に取得し、前記Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信し、前記Ｎ個のディスプレイ装置のディスプレイパラメータに従って前記Ｎ個のディスプレイ装置から前記Ｍ個のバーチャルマシーンのためのディスプレイ装置を個別に選択し、前記バーチャルデスクトップを表示するため、前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置に前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを前記ドライバインタフェースを介し出力するよう構成され、
ＮはＭ以上であり、ＮとＭとの双方は自然数であり、Ｍは２以上であり、
前記周辺インタフェースは更に、外部装置に接続するよう構成され、
前記ドライバインタフェースは更に、前記外部装置の接続イベントを前記プロセッサに報告するよう構成され、
前記プロセッサは更に、前記ドライバインタフェースにより報告される前記接続イベントに従って前記Ｍ個のバーチャルマシーンの周辺ポリシーを個別に取得し、前記周辺インタフェースに接続される前記外部装置のタイプを取得し、周辺ポリシーが前記外部装置のタイプに一致するＬ個のバーチャルマシーンに前記外部装置をマッピングし、ここで、Ｌは自然数であり、Ｌは１以上かつＭ以下であり、前記外部装置のタイプに従って前記外部装置の使用権を前記マッピングされたＬ個のバーチャルマシーンの少なくとも１つのバーチャルマシーンに割り当てるよう構成され、
前記プロセッサは、前記外部装置のタイプがオーディオ装置であるとき、前記オーディオ装置の使用権を前記Ｌ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるよう具体的に構成されるか、ここで、前記オーディオ装置の使用権を取得する前記バーチャルマシーンは前記クライアント装置を利用することによってユーザにより現在操作されているバーチャルマシーンであり、又は、前記外部装置のタイプがインタフェース装置であるとき、トークンネゴシエーションを利用することによって前記インタフェース装置の使用権を前記Ｌ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるよう具体的に構成され、ここで、前記インタフェース装置の使用権を取得する前記バーチャルマシーンは前記インタフェース装置を要求したバーチャルマシーンであり、前記インタフェース装置はパラレル／シリアルインタフェース装置又はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェース装置であるクライアント装置。
【請求項１１】
前記プロセッサは、前記ドライバインタフェースを利用することによってボトムレイヤドライバを呼び出すことによって前記Ｎ個のディスプレイ装置のディスプレイパラメータを個別に取得し、ここで、前記ディスプレイパラメータは前記ディスプレイ装置の使用状態パラメータを含み、前記ドライバインタフェースを利用することによって前記ボトムレイヤドライバを呼び出すことによって、前記バーチャルデスクトップを表示するため、前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置に前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを出力するよう具体的に構成される、請求項１０記載のクライアント装置。
【請求項１２】
前記プロセッサは、前記ネットワークインタフェースを利用することによって前記クライアント装置と前記Ｍ個のバーチャルマシーンとの間にデスクトッププロトコルチャネルを確立し、前記確立されたデスクトッププロトコルチャネルを介し前記Ｍ個のバーチャルマシーンにより送信される前記バーチャルデスクトップを個別に受信するよう具体的に構成される、請求項１０又は１１記載のクライアント装置。
【請求項１３】
前記プロセッサは、新たなバーチャルマシーンが接続されるとき、前記Ｍ個のバーチャルマシーンが接続される順序に従って前記Ｎ個のディスプレイ装置のディスプレイパラメータにおける使用状態パラメータをチェックし、前記Ｎ個のディスプレイ装置において使用状態パラメータが“未使用”であるディスプレイ装置を前記新たに接続されたバーチャルマシーンに割り当てるよう具体的に構成される、請求項１０乃至１２何れか一項記載のクライアント装置。
【請求項１４】
プログラムコードを格納するコンピュータ可読記憶媒体であって、前記プログラムコードに含まれる命令は、請求項１乃至４何れか一項記載の方法を実行するのに利用されるコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クラウドコンピューティング技術の分野に関し、特に複数のバーチャルマシーンをマッピングする方法及びシステム並びクライアント装置に関する。
【背景技術】
【０００２】
クラウドコンピューティング（Ｃｌｏｕｄ  Ｃｏｍｐｕｔｉｎｇ）は、インターネットを利用することによって動的にスケーラブルなバーチャル化されたリソースを提供する技術である。ネットワークは、クラウドコンピューティングにより便利にアクセス可能であり、マスデータの格納及び管理は、多数の記憶装置を配置することによって実現可能である。バーチャルマシーン（Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ，ＶＭ）は、ソフトウェアを利用することによってエミュレートされる完全なコンピュータシステムを表し、完全なハードウェアシステム機能を有し、完全に隔離された環境において動作する。一般に、複数のＶＭが１つの物理的コンピュータ上でエミュレート可能であり、ユーザはクライアントを利用することによってネットワークを介しクラウドサーバ上のユーザのバーチャルマシーンにアクセス可能である。
【０００３】
従来技術では、ユーザはクライアント装置を利用することによってリモートデスクトッププロトコルに基づきあるＶＭにアクセスし、クライアント装置に接続されたディスプレイ画面上でＶＭにマッピングされたバーチャルデスクトップを表示可能である。複数のアプリケーションがアクセスされたＶＭにおいて同時に実行されるとき、異なるアプリケーションはクライアント装置に接続される異なるディスプレイ画面上に表示されるかもしれない。しかしながら、複数のＶＭがユーザに割り当てられているとき、ユーザはクライアント装置を利用することによって１回に１つのＶＭにしかアクセスできない。
【発明の概要】
【０００４】
本発明の実施例は、複数のＶＭが同時にマッピングできず、良好でないユーザアプリケーション体感を導くという従来技術の問題点を解決するため、複数のバーチャルマシーンをマッピングする方法及びシステム並びにクライアント装置を提供する。
【０００５】
上記の技術的問題点を解決するため、本発明の実施例は以下の技術的手段を開示する。
【０００６】
第１の態様は、複数のバーチャルマシーンをマッピングする方法であって、当該方法は、
クライアント装置が、Ｎ個の接続されるディスプレイ装置のディスプレイパラメータを個別に取得するステップと、
前記クライアント装置がＭ個のバーチャルマシーンに接続されるとき、前記クライアント装置が、前記Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信するステップと、
前記クライアント装置が、前記Ｎ個のディスプレイ装置のディスプレイパラメータに従って前記Ｎ個のディスプレイ装置から前記Ｍ個のバーチャルマシーンのためのディスプレイ装置を個別に選択するステップと、
前記クライアント装置が、前記バーチャルデスクトップを表示するため、前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置に前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを出力するステップと、
を有し、ＮはＭ以上であり、ＮとＭとの双方は自然数であり、Ｍは２以上である方法を提供する。
【０００７】
第１の態様を参照して、第１の態様の第１の可能な実現方式では、
前記クライアント装置が、Ｎ個の接続されるディスプレイ装置のディスプレイパラメータを個別に取得するステップは、前記クライアント装置が、ボトムレイヤドライバを呼び出すことによって前記Ｎ個のディスプレイ装置のディスプレイパラメータを個別に取得するステップを具体的に含み、前記ディスプレイパラメータは前記ディスプレイ装置の使用状態パラメータを含み、
前記クライアント装置が、前記バーチャルデスクトップを表示するため、前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置に前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを出力するステップは、前記クライアント装置が、前記ボトムレイヤドライバを呼び出すことによって、前記バーチャルデスクトップを表示するため、前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置に前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを出力するステップを具体的に含む。
【０００８】
第１の態様又は第１の態様の第１の可能な実現方式を参照して、第１の態様の第２の可能な実現方式では、前記クライアント装置が、前記Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信するステップは、
前記クライアント装置と前記Ｍ個のバーチャルマシーンとの間にデスクトッププロトコルチャネルを確立するステップと、
前記確立されたデスクトッププロトコルチャネルを介し前記Ｍ個のバーチャルマシーンにより送信される前記バーチャルデスクトップを個別に受信するステップと、
を具体的に含む。
【０００９】
第１の態様、第１の態様の第１の可能な実現方式又は第１の態様の第２の可能な実現方式を参照して、第１の態様の第３の可能な実現方式では、前記クライアント装置が、前記Ｎ個のディスプレイ装置のディスプレイパラメータに従って前記Ｎ個のディスプレイ装置から前記Ｍ個のバーチャルマシーンのためのディスプレイ装置を個別に選択するステップは、
新たなバーチャルマシーンが接続されるとき、前記クライアント装置が、前記Ｍ個のバーチャルマシーンが接続される順序に従って前記Ｎ個のディスプレイ装置のディスプレイパラメータにおける前記使用状態パラメータをチェックするステップと、
前記Ｎ個のディスプレイ装置において使用状態パラメータが“未使用”であるディスプレイ装置を前記新たに接続されたバーチャルマシーンに割り当てるステップと、
を具体的に含む。
【００１０】
第１の態様、第１の態様の第１の可能な実現方式、第１の態様の第２の可能な実現方式又は第１の態様の第３の可能な実現方式を参照して、第１の態様の第４の可能な実現方式では、当該方法は更に、
前記クライアント装置が外部装置に接続されるとき、前記Ｍ個のバーチャルマシーンの周辺ポリシーを個別に取得し、前記外部装置のタイプを取得するステップと、
周辺ポリシーが前記外部装置のタイプに一致するＬ個のバーチャルマシーンに前記外部装置をマッピングするステップであって、Ｌは自然数であり、Ｌは１以上かつＭ以下である、マッピングするステップと、
前記外部装置のタイプに従って前記外部装置の使用権を前記Ｌ個のマッピングされたバーチャルマシーンにおける少なくとも１つのバーチャルマシーンに割り当てるステップと、
を有する。
【００１１】
第１の態様の第４の可能な実現方式を参照して、第１の態様の第５の可能な実現方式では、前記外部装置のタイプに従って前記外部装置の使用権を前記Ｌ個のマッピングされたバーチャルマシーンにおける少なくとも１つのバーチャルマシーンに割り当てるステップは、
前記外部装置のタイプがオーディオ装置であるとき、前記オーディオ装置の使用権を前記Ｌ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるステップであって、前記オーディオ装置の使用権を取得する前記バーチャルマシーンは前記クライアント装置を利用することによってユーザにより現在操作されているバーチャルマシーンである、割り当てるステップと、
前記外部装置のタイプがインタフェース装置であるとき、トークンネゴシエーションを利用することによって前記インタフェース装置の使用権を前記Ｌ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるステップであって、前記インタフェース装置の使用権を取得する前記バーチャルマシーンは前記インタフェース装置を要求したバーチャルマシーンであり、前記インタフェース装置はパラレル／シリアルインタフェース装置又はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェース装置である、割り当てるステップと、
を具体的に含む。
【００１２】
第２の態様は、複数のバーチャルマシーンをマッピングするシステムであって、当該システムは、クライアント装置と前記クライアント装置に接続されるＮ個のディスプレイ装置とを有し、
前記クライアント装置は、前記Ｎ個のディスプレイ装置のディスプレイパラメータを個別に取得し、前記クライアント装置がＭ個のバーチャルマシーンに接続されるとき、前記Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信し、前記Ｎ個のディスプレイ装置のディスプレイパラメータに従って前記Ｎ個のディスプレイ装置から前記Ｍ個のバーチャルマシーンのためのディスプレイ装置を個別に選択し、前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置に前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを出力するよう構成され、ＮはＭ以上であり、ＮとＭとの双方は自然数であり、Ｍは２以上であり、
前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置は、前記クライアント装置により出力された前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを表示するよう個別に構成されるシステムを提供する。
【００１３】
第２の態様を参照して、第２の態様の第１の可能な実現方式では、
前記クライアント装置は更に、前記クライアント装置が外部装置に接続されるとき、前記Ｍ個のバーチャルマシーンの周辺ポリシーを個別に取得し、前記外部装置のタイプを取得し、周辺ポリシーが前記外部装置のタイプに一致するＬ個のバーチャルマシーンに前記外部装置をマッピングし、ここで、Ｌは自然数であり、Ｌは１以上かつＭ以下であり、前記外部装置のタイプに従って前記Ｌ個のマッピングされたバーチャルマシーンの少なくとも１つに前記外部装置の使用権を割り当てるよう構成される。
【００１４】
第３の態様は、クライアント装置であって、当該クライアント装置は、
Ｎ個の接続されるディスプレイ装置のディスプレイパラメータを個別に取得するよう構成される取得部と、
前記クライアント装置がＭ個のバーチャルマシーンに接続されるとき、前記Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信するよう構成される受信部と、
前記取得部により取得された前記Ｎ個のディスプレイ装置のディスプレイパラメータに従って前記Ｎ個のディスプレイ装置から前記Ｍ個のバーチャルマシーンのためのディスプレイ装置を個別に選択するよう構成される選択部と、
前記バーチャルデスクトップを表示するため、前記Ｍ個のバーチャルマシーンについて前記選択部により個別に選択された前記ディスプレイ装置に前記受信部により受信された前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを出力するよう構成される出力部と、を有し、ＮはＭ以上であり、ＮとＭとの双方は自然数であり、Ｍは２以上であるクライアント装置を提供する。
【００１５】
第３の態様を参照して、第３の態様の第１の可能な実現方式では、
前記取得部は、ボトムレイヤドライバを呼び出すことによって前記Ｎ個のディスプレイ装置のディスプレイパラメータを個別に取得するよう具体的に構成され、前記ディスプレイパラメータは前記ディスプレイ装置の使用状態パラメータを含み、
前記出力部は、前記ボトムレイヤドライバを呼び出すことによって、前記バーチャルデスクトップを表示するため、前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置に前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを出力するよう具体的に構成される。
【００１６】
第３の態様又は第３の態様の第１の可能な実現方式を参照して、第３の態様の第２の可能な実現方式では、前記受信部は、
前記クライアント装置と前記Ｍ個のバーチャルマシーンとの間にデスクトッププロトコルチャネルを確立するよう構成されるチャネル確立サブ部と、
前記チャネル確立サブ部により確立されたデスクトッププロトコルチャネルを介し前記Ｍ個のバーチャルマシーンにより送信される前記バーチャルデスクトップを個別に受信するよう構成されるデスクトップ受信サブ部と、
を含む。
【００１７】
第３の態様、第３の態様の第１の可能な実現方式又は第３の態様の第２の可能な実現方式を参照して、第３の態様の第３の可能な実現方式では、前記選択部は、
新たなバーチャルマシーンが接続されるとき、前記Ｍ個のバーチャルマシーンが接続される順序に従って前記Ｎ個のディスプレイ装置のディスプレイパラメータにおける前記使用状態パラメータをチェックするよう構成される状態チェックサブ部と、
前記状態チェックサブ部によりチェックされた前記ディスプレイ装置の使用状態に従って、前記Ｎ個のディスプレイ装置において使用状態パラメータが“未使用”であるディスプレイ装置を前記新たに接続されたバーチャルマシーンに割り当てるよう構成される装置割当てサブ部と、
を含む。
【００１８】
第３の態様、第３の態様の第１の可能な実現方式、第３の態様の第２の可能な実現方式又は第３の態様の第３の可能な実現方式を参照して、第３の態様の第４の可能な実現方式では、前記取得部は更に、前記クライアント装置が外部装置に接続されるとき、前記Ｍ個のバーチャルマシーンの周辺ポリシーを個別に取得し、前記外部装置のタイプを取得するよう構成され、
当該クライアント装置は更に、
周辺ポリシーが前記外部装置のタイプに一致するＬ個のバーチャルマシーンに前記外部装置をマッピングするよう構成されるマッピング部であって、Ｌは自然数であり、Ｌは１以上かつＭ以下である、マッピング部と、
前記外部装置のタイプに従って前記外部装置の使用権を前記マッピング部によりマッピングされたＬ個のバーチャルマシーンにおける少なくとも１つのバーチャルマシーンに割り当てるよう構成される割当て部と、
を有する。
【００１９】
第３の態様の第４の可能な実現方式を参照して、第３の態様の第５の可能な実現方式では、前記割当て部は、
前記外部装置のタイプがオーディオ装置であるとき、前記オーディオ装置の使用権を前記Ｌ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるよう構成される第１割当てサブ部であって、前記オーディオ装置の使用権を取得する前記バーチャルマシーンは前記クライアント装置を利用することによってユーザにより現在操作されているバーチャルマシーンである、第１割当てサブ部と、
前記外部装置のタイプがインタフェース装置であるとき、トークンネゴシエーションを利用することによって前記インタフェース装置の使用権を前記Ｌ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるよう構成される第２割当てサブ部であって、前記インタフェース装置の使用権を取得する前記バーチャルマシーンは前記インタフェース装置を要求したバーチャルマシーンであり、前記インタフェース装置はパラレル／シリアルインタフェース装置又はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェース装置である、第２割当てサブ部と、
の少なくとも１つを含む。
【００２０】
第４の態様は、クライアント装置であって、当該クライアント装置は、バスと、前記バスを利用することによって接続されるネットワークインタフェースと、周辺インタフェースと、ドライバインタフェースと、プロセッサとを有し、
前記周辺インタフェースは、Ｎ個のディスプレイ装置に接続するよう構成され、
前記ネットワークインタフェースは、Ｍ個のバーチャルマシーンに接続するよう構成され、
前記プロセッサは、前記Ｎ個のディスプレイ装置のディスプレイパラメータを個別に取得し、前記Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信し、前記Ｎ個のディスプレイ装置のディスプレイパラメータに従って前記Ｎ個のディスプレイ装置から前記Ｍ個のバーチャルマシーンのためのディスプレイ装置を個別に選択し、前記バーチャルデスクトップを表示するため、前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置に前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを前記ドライバインタフェースを介し出力するよう構成され、ＮはＭ以上であり、ＮとＭとの双方は自然数であり、Ｍは２以上であるクライアント装置を提供する。
【００２１】
第４の態様を参照して、第４の態様の第１の可能な実現方式では、
前記プロセッサは、前記ドライバインタフェースを利用することによってボトムレイヤドライバを呼び出すことによって前記Ｎ個のディスプレイ装置のディスプレイパラメータを個別に取得し、ここで、前記ディスプレイパラメータは前記ディスプレイ装置の使用状態パラメータを含み、前記ドライバインタフェースを利用することによって前記ボトムレイヤドライバを呼び出すことによって、前記バーチャルデスクトップを表示するため、前記Ｍ個のバーチャルマシーンについて個別に選択された前記ディスプレイ装置に前記Ｍ個のバーチャルマシーンのバーチャルデスクトップを出力するよう具体的に構成される。
【００２２】
第４の態様又は第４の態様の第１の可能な実現方式を参照して、第４の態様の第２の可能な実現方式では、前記プロセッサは、前記ネットワークインタフェースを利用することによって前記クライアント装置と前記Ｍ個のバーチャルマシーンとの間にデスクトッププロトコルチャネルを確立し、前記確立されたデスクトッププロトコルチャネルを介し前記Ｍ個のバーチャルマシーンにより送信される前記バーチャルデスクトップを個別に受信するよう具体的に構成される。
【００２３】
第４の態様、第４の態様の第１の可能な実現方式又は第４の態様の第２の可能な実現方式を参照して、第４の態様の第３の可能な実現方式では、前記プロセッサは、新たなバーチャルマシーンが接続されるとき、前記Ｍ個のバーチャルマシーンが接続される順序に従って前記Ｎ個のディスプレイ装置のディスプレイパラメータにおける前記使用状態パラメータをチェックし、前記Ｎ個のディスプレイ装置において使用状態パラメータが“未使用”であるディスプレイ装置を前記新たに接続されたバーチャルマシーンに割り当てるよう具体的に構成される。
【００２４】
第４の態様、第４の態様の第１の可能な実現方式、第４の態様の第２の可能な実現方式又は第４の態様の第３の可能な実現方式を参照して、第４の態様の第４の可能な実現方式では、前記周辺インタフェースは更に、外部装置に接続するよう構成され、
前記ドライバインタフェースは更に、前記外部装置の接続イベントを前記プロセッサに報告するよう構成され、
前記プロセッサは更に、前記ドライバインタフェースにより報告される前記接続イベントに従って前記Ｍ個のバーチャルマシーンの周辺ポリシーを個別に取得し、前記周辺インタフェースに接続される前記外部装置のタイプを取得し、周辺ポリシーが前記外部装置のタイプに一致するＬ個のバーチャルマシーンに前記外部装置をマッピングし、ここで、Ｌは自然数であり、Ｌは１以上かつＭ以下であり、前記外部装置のタイプに従って前記外部装置の使用権を前記マッピングされたＬ個のバーチャルマシーンの少なくとも１つのバーチャルマシーンに割り当てるよう構成される。
【００２５】
第４の態様の第４の可能な実現方式を参照して、第４の態様の第５の可能な実現方式では、
前記プロセッサは、前記外部装置のタイプがオーディオ装置であるとき、前記オーディオ装置の使用権を前記Ｌ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるよう具体的に構成されるか、ここで、前記オーディオ装置の使用権を取得する前記バーチャルマシーンは前記クライアント装置を利用することによってユーザにより現在操作されているバーチャルマシーンであり、又は、前記外部装置のタイプがインタフェース装置であるとき、トークンネゴシエーションを利用することによって前記インタフェース装置の使用権を前記Ｌ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるよう具体的に構成され、ここで、前記インタフェース装置の使用権を取得する前記バーチャルマシーンは前記インタフェース装置を要求したバーチャルマシーンであり、前記インタフェース装置はパラレル／シリアルインタフェース装置又はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェース装置である。
【００２６】
本発明の実施例では、クライアント装置は、Ｎ個の接続されるディスプレイ装置のディスプレイパラメータを個別に取得し、クライアント装置がＭ個のバーチャルマシーンに接続されるとき、Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信し、Ｎ個のディスプレイ装置のディスプレイパラメータに従って、Ｎ個のディスプレイ装置からＭ個のバーチャルマシーンのためのディスプレイ装置を個別に選択し、バーチャルデスクトップを表示するため、Ｍ個のバーチャルマシーンについて個別に選択されるディスプレイ装置にＭ個のバーチャルマシーンのバーチャルデスクトップを出力してもよく、ここで、ＮとＭとの双方は自然数であり、ＮはＭ以上であり、Ｍは２以上である。本発明の実施例を利用することによって、クライアント装置が複数のディスプレイ装置に接続されると、接続された複数のバーチャルマシーンのバーチャルデスクトップが、表示用の異なるディスプレイ装置に個別にマッピングされ、これにより、クライアント装置の利用を向上させ、複数のバーチャルマシーンが利用されるときのユーザの要求を充足する。さらに、クライアント装置が外部装置に接続されると、外部装置はまた接続された複数のバーチャルマシーンにマッピングされてもよく、外部装置の使用権は、ポリシー制御に従ってバーチャルマシーンに割り当てられ、これにより、複数のバーチャルマシーンのマッピングのフレキシビリティを向上させることができる。
【図面の簡単な説明】
【００２７】
本発明の実施例又は従来技術における技術的手段をより明確に説明するため、以下において、実施例又は従来技術を説明するのに必要な添付図面が簡単に紹介される。明らかに、当業者は、創作的な努力なく、これらの添付図面から他の図面を依然として導出してもよい。
【図１Ａ】図１Ａは、本発明による複数のバーチャルマシーンをマッピングする方法の実施例のフローチャートである。
【図１Ｂ】図１Ｂは、本発明の実施例による複数のバーチャルマシーンが異なる画面上に表示されることを示す概略的な構成図である。
【図２Ａ】図２Ａは、本発明による複数のバーチャルマシーンをマッピングする方法の他の実施例のフローチャートである。
【図２Ｂ】図２Ｂは、図２Ａの実施例を実現するクライアント装置の内部ロジックの概略図である。
【図３Ａ】図３Ａは、本発明による複数のバーチャルマシーンをマッピングする方法の他の実施例のフローチャートである。
【図３Ｂ】図３Ｂは、図３Ａの実施例を実現するクライアント装置の内部ロジックの概略図である。
【図４】図４は、本発明による複数のバーチャルマシーンをマッピングするシステムの実施例のブロック図である。
【図５】図５は、本発明によるクライアント装置の実施例のブロック図である。
【図６】図６は、本発明によるクライアント装置の他の実施例のブロック図である。
【図７】図７は、本発明によるクライアント装置の他の実施例のブロック図である。
【発明を実施するための形態】
【００２８】
本発明の以下の実施例は、複数のバーチャルマシーンをマッピングする方法及びシステム並びにクライアント装置を提供する。
【００２９】
本発明の実施例における技術的手段をより良く当業者に理解させ、本発明の実施例の課題、特徴及び効果をより明確にするため、以下において、添付図面を参照して本発明の実施例における技術的手段を詳細に更に説明する。
【００３０】
本発明による複数のバーチャルマシーンをマッピングする方法の実施例のフローチャートである図１を参照されたい。
【００３１】
ステップ１０１：クライアント装置が、Ｎ個の接続されるディスプレイ装置のディスプレイパラメータを個別に取得する。
【００３２】
本実施例では、クライアント装置は、シンクライアント（Ｔｈｉｎ  Ｃｌｉｅｎｔ，ＴＣ）装置を具体的に表すものであってもよい。ディスプレイ装置に接続するよう構成される複数の周辺インタフェースがクライアント装置上に設定されてもよく、ディスプレイ装置は具体的には液晶ディスプレイであってもよい。クライアント装置は、ボトムレイヤドライバを呼び出すことによってＮ個のディスプレイ装置のディスプレイパラメータを個別に取得してもよく、ここで、Ｎは２以上の自然数である。ディスプレイパラメータは、ディスプレイ装置の使用状態パラメータを含むものであってもよい。さらに、ディスプレイパラメータは更に、ディスプレイ装置の個数、各ディスプレイ装置の解像度パラメータなどを含むものであってもよい。
【００３３】
ステップ１０２：クライアント装置がＭ個のバーチャルマシーンに接続されるとき、クライアント装置が、Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信する。
【００３４】
一般に、Ｍ個のバーチャルマシーンは１人のユーザに割り当てられてもよく、ユーザはクライアント装置を利用することによってＭ個のバーチャルマシーンのリストを取得してもよい。クライアント装置は、クライアント装置とＭ個のバーチャルマシーンとの間でデスクトッププロトコルチャネルを確立し、確立されたデスクトッププロトコルチャネルを介しＭ個のバーチャルマシーンにより送信されるバーチャルデスクトップを個別に受信してもよい。Ｍは、２以上であって、Ｎ以下の自然数である。
【００３５】
本発明の本実施例による複数のバーチャルマシーンが異なる画面上に表示されることを示す概略的な構成図である図１Ｂを参照されたい。クライアント装置は、ディスプレイ装置１、ディスプレイ装置２、ディスプレイ装置３及びディスプレイ装置４である４つのディスプレイ装置に個別に接続され、クライアント装置は、バーチャルマシーン１、バーチャルマシーン２、バーチャルマシーン３及びバーチャルマシーン４である、ユーザに割り当てられた４つのバーチャルマシーンに個別に接続される。
【００３６】
ステップ１０３：クライアント装置が、Ｎ個のディスプレイ装置のディスプレイパラメータに従ってＮ個のディスプレイ装置からＭ個のバーチャルマシーンのためのディスプレイ装置を個別に選択する。
【００３７】
新たなバーチャルマシーンが接続されると、クライアント装置は、Ｍ個のバーチャルマシーンが接続される順序に従って、Ｎ個のディスプレイ装置のディスプレイパラメータにおける使用状態パラメータをチェックし、Ｎ個のディスプレイ装置において使用状態パラメータが“未使用”であるディスプレイ装置を新たな接続されるバーチャルマシーンに割り当てる。例えば、クライアント装置は、複数のディスプレイ装置のシーケンス番号を予め記録してもよく、初期的には、各ディスプレイ装置の使用状態パラメータは“未使用”である。図１Ａを参照して、バーチャルマシーン１がクライアント装置に接続されると、クライアント装置は、全てのディスプレイ装置の使用状態パラメータが“未使用”であることを検出してもよく、ディスプレイ装置１はバーチャルマシーン１に割り当てられ、その後、バーチャルマシーン２がクライアント装置に接続されると、クライアント装置は、ディスプレイ装置１の使用状態パラメータが“使用済み”であることを検出し、未使用のディスプレイ装置２がバーチャルマシーン２に続いて割り当てられ、同様に、ディスプレイ装置３がバーチャルマシーン３に割り当てられ、ディスプレイ装置４がバーチャルマシーン４に割り当てられる。
【００３８】
ステップ１０４：クライアント装置が、バーチャルデスクトップを表示するため、Ｍ個のバーチャルマシーンについて個別に選択されたディスプレイ装置にＭ個のバーチャルマシーンのバーチャルデスクトップを出力する。
【００３９】
本実施例では、クライアント装置は、ボトムレイヤドライバを呼び出すことによって、バーチャルデスクトップを表示するため、Ｍ個のバーチャルマシーンについて個別に選択されたディスプレイ装置にＭ個のバーチャルマシーンのバーチャルデスクトップを出力してもよい。図１Ｂを参照して知ることができるように、クライアント装置は、バーチャルマシーン１のバーチャルデスクトップをディスプレイ装置１に表示のため出力し、バーチャルマシーン２のバーチャルデスクトップをディスプレイ装置２に表示のため出力し、バーチャルマシーン３のバーチャルデスクトップをディスプレイ装置３に表示のため出力し、バーチャルマシーン４のバーチャルデスクトップをディスプレイ装置４に表示のため出力する。
【００４０】
上記の実施例から理解できるように、クライアント装置が複数のディスプレイ装置に接続されるとき、複数の接続されるバーチャルマシーンのバーチャルデスクトップは、表示用の異なるディスプレイ装置に個別にマッピングされてもよく、これにより、クライアント装置の利用を向上させ、複数のバーチャルマシーンが利用されるときにユーザの要求を充足する。
【００４１】
本発明による複数のバーチャルマシーンをマッピングする方法の他の実施例のフローチャートである図２Ａを参照されたい。本実施例は、複数のバーチャルマシーンが異なる画面上に表示されるマッピング処理を示す。
【００４２】
ステップ２０１：クライアント装置が、ボトムレイヤドライバを呼び出すことによってＮ個の接続されるディスプレイ装置のディスプレイパラメータを個別に取得する。
【００４３】
図２Ａにおける実施例を実現するクライアント装置の内部ロジックの概略図である図２Ｂを参照されたい。クライアント装置は、オペレーティングシステム（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ，ＯＳ）カーネルドライバ、ディスプレイ処理モジュール及びプロトコル通信モジュールを有し、ここで、ディスプレイ処理モジュールにより呼び出し可能なインタフェースは、ＯＳカーネルドライバ上に設定される。実際的なアプリケーションでは、図２Ｂにおけるディスプレイ処理モジュール及びプロトコル通信モジュールの機能は１つのチップに統合されてもよく、ＯＳカーネルドライバはクライアント装置のメモリに格納されてもよく、又は、ディスプレイ処理モジュール、プロトコル通信モジュール及びＯＳカーネルドライバは全て１つのチップに統合される。
【００４４】
ＯＳカーネルドライバは、クライアント装置に設定されたボトムレイヤドライバであり、ＯＳカーネルドライバは、Ｎ個の接続されるディスプレイ装置のディスプレイパラメータを検出するよう構成されてもよく、ディスプレイパラメータは、ディスプレイ装置の使用状態パラメータを有し、更に接続されるディスプレイ装置の個数、ディスプレイ装置の解像度パラメータなどを有してもよく、ここで、Ｎは２以上の自然数である。ＯＳカーネルドライバは、ＯＳカーネルドライバとディスプレイ処理モジュールとの間のインタフェースを介しディスプレイ装置のディスプレイパラメータをディスプレイ処理モジュールに送信してもよい。図２Ｂに示されるように、ＯＳカーネルドライバは、ＯＳカーネルドライバとディスプレイ処理モジュールとの間のＰ１インタフェースを介しディスプレイ装置のディスプレイパラメータをディスプレイ処理モジュールに送信してもよい。
【００４５】
ステップ２０２：クライアント装置がＭ個のバーチャルマシーンに接続されるとき、クライアント装置とＭ個のバーチャルマシーンとの間にデスクトッププロトコルチャネルを確立する。
【００４６】
一般に、Ｍ個のバーチャルマシーンは１人のユーザに割り当てられてもよく、ユーザはクライアント装置を利用することによってＭ個のバーチャルマシーンのリストを取得してもよく、ここで、Ｍは２以上であって、Ｎ以下の自然数である。図２Ｂを参照して、本実施例では、クライアント装置が１つのバーチャルマシーンに接続される毎に、デスクトッププロトコルチャネルが、プロトコル通信モジュールとバーチャルマシーンとの間に確立され、プロトコルチャネルを確立する処理は、既存のクライアント装置が１つのバーチャルマシーンに接続される処理と同じであり、詳細はここでは再度説明されない。
【００４７】
ステップ２０３：確立されたデスクトッププロトコルチャネルを介しＭ個のバーチャルマシーンにより送信されるバーチャルデスクトップを個別に受信する。
【００４８】
図２Ｂを参照して、デスクトッププロトコルチャネルがプロトコル通信モジュールとバーチャルマシーンとの間に確立された後、バーチャルマシーンは、デスクトッププロトコルチャネルを介しプロトコル通信モジュールにマッピングされたバーチャルデスクトップのデータをプッシュしてもよく、プロトコル通信モジュールは、バーチャルデスクトップのデータを処理のためディスプレイ処理モジュールに送信する。
【００４９】
ステップ２０４：新たなバーチャルマシーンが接続されるとき、クライアント装置が、Ｍ個のバーチャルマシーンが接続される順序に従ってＮ個のディスプレイ装置のディスプレイパラメータにおける使用状態パラメータをチェックする。
【００５０】
図２Ｂを参照して、Ｐ１インタフェースを介しＯＳカーネルドライバにより報告されるディスプレイ装置のディスプレイパラメータは、ディスプレイ処理モジュールに格納され、ここで、ディスプレイパラメータはディスプレイ装置の使用状態パラメータを含む。ディスプレイ装置をバーチャルマシーンに割り当てるとき、ディスプレイ処理モジュールは、使用状態パラメータが“未使用”であるディスプレイ装置からディスプレイ装置を選択するため、ディスプレイ装置の使用状態パラメータをチェックし、ディスプレイ装置を新たに接続されたバーチャルマシーンに割り当てる必要がある。
【００５１】
ステップ２０５：Ｎ個のディスプレイ装置において使用状態パラメータが“未使用”であるディスプレイ装置を新たに接続されたバーチャルマシーンに割り当てる。
【００５２】
例えば、複数のディスプレイ装置のシーケンス番号はディスプレイ処理モジュールに記録され、初期的には、ＯＳカーネルドライバにより報告される各ディスプレイ装置の使用状態パラメータは“未使用”である。図１Ａを参照して、バーチャルマシーン１がクライアント装置に接続されると、ディスプレイ処理モジュールは、全てのディスプレイ装置の使用状態パラメータが“未使用”であることを取得し、ディスプレイ装置１はバーチャルマシーン１に割り当てられると仮定され、その後、バーチャルマシーン２がクライアント装置に接続されると、ディスプレイ処理モジュールは、ディスプレイ装置１の使用状態パラメータが“使用済み”であることを取得し、未使用のディスプレイ装置２がバーチャルマシーン２に続いて割り当てられ、同様に、ディスプレイ装置３がバーチャルマシーン３に割り当てられ、ディスプレイ装置４がバーチャルマシーン４に割り当てられる。
【００５３】
ステップ２０６：クライアント装置が、ボトムレイヤドライバを呼び出すことによって、バーチャルデスクトップを表示するため、Ｍ個のバーチャルマシーンについて個別に選択されたディスプレイ装置にＭ個のバーチャルマシーンのバーチャルデスクトップを出力する。
【００５４】
図２Ｂを参照して、ディスプレイ処理モジュールは、Ｍ個のバーチャルマシーンに割り当てられたディスプレイ装置に従って、割り当てられた各ディスプレイ装置の座標情報をＯＳカーネルドライバに送信し、バーチャルデスクトップのデータをＯＳカーネルドライバに送信するため、Ｐ２インタフェースを呼び出し、バーチャルデスクトップのデータをＯＳカーネルドライバに送信し、ディスプレイ装置の座標情報に従って、各ディスプレイ装置に対応するバーチャルマシーンのバーチャルデスクトップをディスプレイ装置に出力し、ディスプレイ装置のディスプレイ解像度パラメータに従ってバーチャルデスクトップを表示する。
【００５５】
上記の実施例から理解できるように、クライアント装置がＮ個のディスプレイ装置に接続されると、Ｍ個の接続されるバーチャルマシーンのバーチャルデスクトップが、表示用の異なるディスプレイ装置に個別にマッピングされてもよく、これにより、クライアント装置の利用を向上させ、複数のバーチャルマシーンが利用されるときにユーザの要求を充足する。
【００５６】
本発明による複数のバーチャルマシーンをマッピングする方法の他の実施例のフローチャートである図３Ａを参照されたい。本実施例は、上記の複数のバーチャルマシーンのバーチャルデスクトップが複数のディスプレイ画面にマッピングされた後、クライアント装置に接続される外部装置と複数のバーチャルマシーンとの間のマッピング処理を示す。
【００５７】
ステップ３０１：クライアント装置が外部装置に接続されるとき、クライアント装置が、Ｍ個のバーチャルマシーンの周辺ポリシーを個別に取得し、外部装置のタイプを取得する。
【００５８】
図１又は図２に示される実施例によると、クライアント装置に接続されるＭ個のバーチャルマシーンのバーチャルデスクトップが表示用の異なるディスプレイ装置に個別にマッピングされた後、クライアント装置が、例えば、ヘッドセットなどのオーディオ装置やＵＳＢフラッシュドライブなどのインタフェース装置などの他の外部装置に接続されるとき、外部装置とバーチャルマシーンとの間でマッピングが実行される必要があり、外部装置を利用するバーチャルマシーンが決定される。
【００５９】
本実施例では、インタフェース装置は、パラレル／シリアルインタフェース装置又はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェース装置を含むものであってもよい。パラレル／シリアルインタフェース装置は、パラレルインタフェース装置及びシリアルインタフェース装置に分類され、パラレルインタフェースは、データがパラレル送信方式により送信されるインタフェース規格を表し、シリアルインタフェースは、データがシリアル通信方式により送信されるインタフェース規格を表す。
【００６０】
本実施例では、異なるバーチャルマシーンの周辺ポリシーはクライアント装置に予め格納されてもよく、例えば、何れかのバーチャルマシーンについて、全てのタイプの外部装置がバーチャルマシーンにマッピングされてもよいし、又は、あるタイプの外部装置がバーチャルマシーンにマッピングされてもよいことが設定されてもよい。従って、クライアント装置が外部装置に接続されるとき、クライアント装置は、各バーチャルマシーンの周辺ポリシーと外部装置のタイプとのマッチングのため、外部装置のタイプとＭ個の接続されるバーチャルマシーンの周辺ポリシーとを取得し、外部装置がこれらのバーチャルマシーンにマッピングされてもよいか判断する。
【００６１】
ステップ３０２：周辺ポリシーが外部装置のタイプに一致するＬ個のバーチャルマシーンに外部装置をマッピングする。
【００６２】
本実施例では、外部装置のタイプに一致する周辺ポリシーが、各バーチャルマシーンの周辺ポリシーと外部装置のタイプとのマッチングの結果に従って取得され、外部装置は、これらの周辺ポリシーに対応するＬ個のバーチャルマシーンにマッピングされ、ここで、Ｌは、１以上であって、Ｍ以下の自然数である。
【００６３】
ステップ３０３：外部装置のタイプに従って外部装置の使用権をＬ個のマッピングされたバーチャルマシーンにおける少なくとも１つのバーチャルマシーンに割り当てる。
【００６４】
本実施例では、外部装置のタイプがオーディオ装置であるとき、クライアント装置は、クライアント装置を利用することによってユーザにより現在操作されている１つのバーチャルマシーンに外部装置の使用権を割り当ててもよい。例えば、クライアント装置がヘッドセットに接続され、ヘッドセットが複数のバーチャルマシーンにマッピングされると、クライアント装置は、マウス座標により現在制御されるバーチャルマシーン、すなわち、マウス座標が現在あるディスプレイ装置に対応するバーチャルマシーンを取得してもよい。バーチャルマシーンは、クライアントにより現在アクティブ化されているバーチャルマシーンであり、その後、クライアント装置は、バーチャルマシーンに対してヘッドセットのオーディオ出力権限をリリースし、他のバーチャルマシーンはオーディオ信号を出力することができなくなる。
【００６５】
本実施例では、外部装置のタイプがインタフェース装置であるとき、クライアント装置は、トークンネゴシエーションを利用することによって外部装置の使用権を外部装置を要求した１つのバーチャルマシーンに割り当ててもよい。例えば、クライアント装置がＵＳＢフラッシュドライブに接続され、ＵＳＢフラッシュドライブが複数のバーチャルマシーンにマッピングされるとき、複数のバーチャルマシーンがＵＳＢフラッシュドライブにデータを書き込むことを要求する場合、複数のバーチャルマシーンは、トークンリクエストをクライアント装置に送信し、クライアント装置は、トークンリクエスト送信順に従って１回に１つのバーチャルマシーンにトークンを割り当てる。ＵＳＢフラッシュドライブへのデータの書き込みの完了後、バーチャルマシーンはトークンをクライアント装置に返す。その後、クライアント装置は、全てのバーチャルマシーンがＵＳＢフラッシュドライブにデータを書き込むまで、トークンを次のバーチャルマシーンに割当て、トークンネゴシエーション処理が終了する。
【００６６】
図３Ａにおける実施例を実現するクライアント装置の内部ロジックの概略図である図３Ｂを参照されたい。クライアント装置は、ＯＳカーネルドライバ、周辺処理モジュール及びプロトコル通信モジュールを有する。Ｍ１インタフェースは、ＯＳカーネルドライバと周辺処理モジュールとの間に設定され、周辺処理モジュールは、Ｍ２インタフェース及びＭ３インタフェースを利用することによって個別にプロトコル通信モジュールとやりとりする。実際的なアプリケーションでは、図３Ｂにおける周辺処理モジュール及びプロトコル通信モジュールの機能は１つのチップに統合されてもよく、ＯＳカーネルドライバはクライアント装置のメモリに格納されてもよく、又は、ディスプレイ処理モジュール、プロトコル通信モジュール及びＯＳカーネルドライバは全て１つのチップに統合される。
【００６７】
プロトコル通信モジュールは、接続されるバーチャルマシーンによってプッシュされる周辺ポリシーを受信し、周辺ポリシーを周辺処理モジュールに送信してもよく、外部装置がクライアント装置に接続されるというイベントを検出した後、ＯＳカーネルドライバは、当該イベントと外部装置のタイプとをＭ１インタフェースを介し周辺処理モジュールに報告し、周辺処理モジュールは、各バーチャルマシーンの周辺ポリシーに従って周辺ポリシーに一致するバーチャルマシーンに外部装置をマッピングし、ここで、周辺ポリシーの設定に従って、あるバーチャルマシーンがあるタイプの外部装置を排他的に占有可能であることが確保されてもよい。
【００６８】
本発明の上記の実施例から理解できるように、クライアント装置が複数のディスプレイ装置に接続されるとき、複数の接続されるバーチャルマシーンのバーチャルデスクトップは、表示用の異なるディスプレイ装置に個別にマッピングされてもよく、これにより、クライアント装置の利用を向上させ、複数のバーチャルマシーンが利用されるときのユーザの要求を充足させる。さらに、クライアント装置が外部装置に接続されるとき、外部装置はまた、複数の接続されるバーチャルマシーンにマッピングされてもよく、外部装置の使用権は、ポリシー制御に従ってバーチャルマシーンに割り当てられ、これにより、複数のバーチャルマシーンのマッピングのフレキシビリティを向上させる。
【００６９】
本発明による複数のバーチャルマシーンをマッピングする方法の実施例に対応して、本発明は更に、複数のバーチャルマシーンをマッピングするシステム及びクライアント装置の実施例を提供する。
【００７０】
本発明による複数のバーチャルマシーンをマッピングするシステムの実施例のブロック図である図４を参照されたい。
【００７１】
システムは、クライアント装置４１０とクライアント装置４１０に接続されるＮ個のディスプレイ装置４２０とを有する。図示の簡単化のため、図４は、３つのディスプレイ装置４２０を示す。
【００７２】
クライアント装置４１０は、Ｎ個のディスプレイ装置４２０のディスプレイパラメータを個別に取得し、クライアント装置がＭ個のバーチャルマシーンに接続されるとき、Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信し、Ｎ個のディスプレイ装置のディスプレイパラメータに従ってＮ個のディスプレイ装置４２０からＭ個のバーチャルマシーンのためのディスプレイ装置を個別に選択し、Ｍ個のバーチャルマシーンについて個別に選択されたディスプレイ装置４２０にＭ個のバーチャルマシーンのバーチャルデスクトップを出力するよう構成され、ここで、ＮはＭ以上であり、ＮとＭとの双方は自然数であり、Ｍは２以上である。
【００７３】
Ｍ個のバーチャルマシーンについて個別に選択されたディスプレイ装置４２０は、クライアント装置４１０により出力されたＭ個のバーチャルマシーンのバーチャルデスクトップを表示するよう個別に構成される。
【００７４】
任意的には、クライアント装置４１０は更に、クライアント装置４１０が外部装置に接続されるとき、Ｍ個のバーチャルマシーンの周辺ポリシーを個別に取得し、外部装置のタイプを取得し、周辺ポリシーが外部装置のタイプに一致するＬ個のバーチャルマシーンに外部装置をマッピングし、ここで、Ｌは自然数であり、Ｌは１以上かつＭ以下であり、外部装置のタイプに従ってＬ個のマッピングされたバーチャルマシーンの少なくとも１つに外部装置の使用権を割り当てるよう構成されてもよい。
【００７５】
上記のクライアント装置の特定の構成の実施例について、以降の図５及び図６に示される実施例が参照されてもよく、詳細はここでは再度説明されない。
【００７６】
本発明によるクライアント装置の実施例のブロック図である図５を参照されたい。
【００７７】
クライアント装置は、取得部５１０、受信部５２０、選択部５３０及び出力部５４０を有し、ここで、
取得部５１０は、Ｎ個の接続されるディスプレイ装置のディスプレイパラメータを個別に取得するよう構成され、
受信部５２０は、クライアント装置がＭ個のバーチャルマシーンに接続されるとき、Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信するよう構成され、
選択部５３０は、取得部５１０により取得されたＮ個のディスプレイ装置のディスプレイパラメータに従ってＮ個のディスプレイ装置からＭ個のバーチャルマシーンのためのディスプレイ装置を個別に選択するよう構成され、
出力部５４０は、バーチャルデスクトップを表示するため、Ｍ個のバーチャルマシーンについて選択部５３０により個別に選択されたディスプレイ装置に受信部５２０により受信されたＭ個のバーチャルマシーンのバーチャルデスクトップを出力するよう構成され、ここで、ＮはＭ以上であり、ＮとＭとの双方は自然数であり、Ｍは２以上である。
【００７８】
任意的には、取得部５１０は、ボトムレイヤドライバを呼び出すことによってＮ個のディスプレイ装置のディスプレイパラメータを個別に取得するよう具体的に構成されてもよく、ここで、ディスプレイパラメータはディスプレイ装置の使用状態パラメータを含み、
出力部５４０は、ボトムレイヤドライバを呼び出すことによって、バーチャルデスクトップを表示するため、Ｍ個のバーチャルマシーンについて個別に選択されたディスプレイ装置にＭ個のバーチャルマシーンのバーチャルデスクトップを出力するよう具体的に構成されてもよい。
【００７９】
任意的には、受信部５２０は、以下のサブ部（図５に図示せず）、すなわち、
クライアント装置とＭ個のバーチャルマシーンとの間にデスクトッププロトコルチャネルを確立するよう構成されるチャネル確立サブ部と、
チャネル確立サブ部により確立されたデスクトッププロトコルチャネルを介しＭ個のバーチャルマシーンにより送信されるバーチャルデスクトップを個別に受信するよう構成されるデスクトップ受信サブ部と、
を含んでもよい。
【００８０】
任意的には、選択部５３０は、以下のサブ部（図５に図示せず）、すなわち、
新たなバーチャルマシーンが接続されるとき、Ｍ個のバーチャルマシーンが接続される順序に従ってＮ個のディスプレイ装置のディスプレイパラメータにおける使用状態パラメータをチェックするよう構成される状態チェックサブ部と、
状態チェックサブ部によりチェックされたディスプレイ装置の使用状態に従って、Ｎ個のディスプレイ装置において使用状態パラメータが“未使用”であるディスプレイ装置を新たに接続されたバーチャルマシーンに割り当てるよう構成される装置割当てサブ部と、
を含んでもよい。
【００８１】
本発明によるクライアント装置の他の実施例のブロック図である図６を参照されたい。
【００８２】
クライアント装置は、取得部６１０、受信部６２０、選択部６３０、出力部６４０、マッピング部６５０及び割当て部６６０を有し、ここで、
取得部６１０は、Ｎ個の接続されるディスプレイ装置のディスプレイパラメータを個別に取得するよう構成され、
受信部６２０は、クライアント装置がＭ個のバーチャルマシーンに接続されるとき、Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信するよう構成され、
選択部６３０は、取得部６１０により取得されたＮ個のディスプレイ装置のディスプレイパラメータに従ってＮ個のディスプレイ装置からＭ個のバーチャルマシーンのためのディスプレイ装置を個別に選択するよう構成され、
出力部６４０は、バーチャルデスクトップを表示するため、Ｍ個のバーチャルマシーンについて選択部６３０により個別に選択されたディスプレイ装置に受信部６２０により受信されたＭ個のバーチャルマシーンのバーチャルデスクトップを出力するよう構成され、ここで、ＮはＭ以上であり、ＮとＭとの双方は自然数であり、Ｍは２以上であり、
取得部６１０は更に、クライアント装置が外部装置に接続されるとき、Ｍ個のバーチャルマシーンの周辺ポリシーを個別に取得し、外部装置のタイプを取得するよう構成され、
マッピング部６５０は、周辺ポリシーが外部装置のタイプに一致するＬ個のバーチャルマシーンに外部装置をマッピングするよう構成され、ここで、Ｌは自然数であり、Ｌは１以上かつＭ以下であり、
割当て部６６０は、外部装置のタイプに従って外部装置の使用権をマッピング部６５０によりマッピングされたＬ個のバーチャルマシーンにおける少なくとも１つのバーチャルマシーンに割り当てるよう構成される。
【００８３】
任意的には、取得部６１０は、ボトムレイヤドライバを呼び出すことによってＮ個のディスプレイ装置のディスプレイパラメータを個別に取得するよう具体的に構成されてもよく、ここで、ディスプレイパラメータはディスプレイ装置の使用状態パラメータを含み、
出力部６４０は、ボトムレイヤドライバを呼び出すことによって、バーチャルデスクトップを表示するため、Ｍ個のバーチャルマシーンについて個別に選択されたディスプレイ装置にＭ個のバーチャルマシーンのバーチャルデスクトップを出力するよう具体的に構成されてもよい。
【００８４】
任意的には、受信部６２０は、以下のサブ部（図６に図示せず）、すなわち、
クライアント装置とＭ個のバーチャルマシーンとの間にデスクトッププロトコルチャネルを確立するよう構成されるチャネル確立サブ部と、
チャネル確立サブ部により確立されたデスクトッププロトコルチャネルを介しＭ個のバーチャルマシーンにより送信されるバーチャルデスクトップを個別に受信するよう構成されるデスクトップ受信サブ部と、
を含んでもよい。
【００８５】
任意的には、選択部６３０は、以下のサブ部（図６に図示せず）、すなわち、
新たなバーチャルマシーンが接続されるとき、Ｍ個のバーチャルマシーンが接続される順序に従ってＮ個のディスプレイ装置のディスプレイパラメータにおける使用状態パラメータをチェックするよう構成される状態チェックサブ部と、
状態チェックサブ部によりチェックされたディスプレイ装置の使用状態に従って、Ｎ個のディスプレイ装置において使用状態パラメータが“未使用”であるディスプレイ装置を新たに接続されたバーチャルマシーンに割り当てるよう構成される装置割当てサブ部と、
を含んでもよい。
【００８６】
任意的には、割当て部６６０は、以下の部（図６に図示せず）、すなわち、
外部装置のタイプがオーディオ装置であるとき、オーディオ装置の使用権をＬ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるよう構成される第１割当てサブ部であって、オーディオ装置の使用権を取得するバーチャルマシーンはクライアント装置を利用することによってユーザにより現在操作されているバーチャルマシーンである、第１割当てサブ部と、
外部装置のタイプがインタフェース装置であるとき、トークンネゴシエーションを利用することによってインタフェース装置の使用権をＬ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるよう構成される第２割当てサブ部であって、インタフェース装置の使用権を取得するバーチャルマシーンはインタフェース装置を要求したバーチャルマシーンであり、インタフェース装置はパラレル／シリアルインタフェース装置又はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェース装置である、第２割当てサブ部と、
の少なくとも１つを含んでもよい。
【００８７】
本発明によるクライアント装置の他の実施例のブロック図である図７を参照されたい。
【００８８】
クライアント装置は、バス７１０と、バス７１０を利用することによって接続されるネットワークインタフェース７２０と、周辺インタフェース７３０と、ドライバインタフェース７４０と、プロセッサ７５０とを有し、ここで、
周辺インタフェース７３０は、Ｎ個のディスプレイ装置に接続するよう構成され、
ネットワークインタフェース７２０は、Ｍ個のバーチャルマシーンに接続するよう構成され、
プロセッサ７５０は、Ｎ個のディスプレイ装置のディスプレイパラメータを個別に取得し、Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信し、Ｎ個のディスプレイ装置のディスプレイパラメータに従ってＮ個のディスプレイ装置からＭ個のバーチャルマシーンのためのディスプレイ装置を個別に選択し、バーチャルデスクトップを表示するため、Ｍ個のバーチャルマシーンについて個別に選択されたディスプレイ装置にＭ個のバーチャルマシーンのバーチャルデスクトップをドライバインタフェース７４０を介し出力するよう構成され、ここで、ＮはＭ以上であり、ＮとＭとの双方は自然数であり、Ｍは２以上である。
【００８９】
さらに、周辺インタフェース７３０は更に、外部装置に接続するよう構成され、
ドライバインタフェース７４０は更に、外部装置の接続イベントをプロセッサに報告するよう構成され、
プロセッサ７５０は更に、ドライバインタフェース７４０により報告される接続イベントに従ってＭ個のバーチャルマシーンの周辺ポリシーを個別に取得し、周辺インタフェースに接続される外部装置のタイプを取得し、周辺ポリシーが外部装置のタイプに一致するＬ個のバーチャルマシーンに外部装置をマッピングし、ここで、Ｌは自然数であり、Ｌは１以上かつＭ以下であり、外部装置のタイプに従って外部装置の使用権をマッピングされたＬ個のバーチャルマシーンの少なくとも１つのバーチャルマシーンに割り当てるよう構成される。
【００９０】
任意的には、プロセッサ７５０は、ドライバインタフェース７４０を利用することによってボトムレイヤドライバを呼び出すことによってＮ個のディスプレイ装置のディスプレイパラメータを個別に取得し、ここで、ディスプレイパラメータはディスプレイ装置の使用状態パラメータを含み、ドライバインタフェース７４０を利用することによってボトムレイヤドライバを呼び出すことによって、バーチャルデスクトップを表示するため、Ｍ個のバーチャルマシーンについて個別に選択されたディスプレイ装置にＭ個のバーチャルマシーンのバーチャルデスクトップを出力するよう具体的に構成されてもよい。
【００９１】
任意的には、プロセッサ７５０は、ネットワークインタフェース７２０を利用することによってクライアント装置とＭ個のバーチャルマシーンとの間にデスクトッププロトコルチャネルを確立し、確立されたデスクトッププロトコルチャネルを介しＭ個のバーチャルマシーンにより送信されるバーチャルデスクトップを個別に受信するよう具体的に構成されてもよい。
【００９２】
任意的には、プロセッサ７５０は、新たなバーチャルマシーンが接続されるとき、Ｍ個のバーチャルマシーンが接続される順序に従ってＮ個のディスプレイ装置のディスプレイパラメータにおける使用状態パラメータをチェックし、Ｎ個のディスプレイ装置において使用状態パラメータが“未使用”であるディスプレイ装置を新たに接続されたバーチャルマシーンに割り当てるよう具体的に構成されてもよい。
【００９３】
任意的には、プロセッサ７５０は、外部装置のタイプがオーディオ装置であるとき、オーディオ装置の使用権をＬ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるよう具体的に構成されるか、ここで、オーディオ装置の使用権を取得するバーチャルマシーンはクライアント装置を利用することによってユーザにより現在操作されているバーチャルマシーンであり、又は、外部装置のタイプがインタフェース装置であるとき、トークンネゴシエーションを利用することによってインタフェース装置の使用権をＬ個のバーチャルマシーンにおける１つのバーチャルマシーンに割り当てるよう具体的に構成され、ここで、インタフェース装置の使用権を取得するバーチャルマシーンはインタフェース装置を要求したバーチャルマシーンであり、インタフェース装置はパラレル／シリアルインタフェース装置又はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェース装置である。
【００９４】
上記の実施例から理解できるように、クライアント装置は、Ｎ個の接続されるディスプレイ装置のディスプレイパラメータを個別に取得し、クライアント装置がＭ個のバーチャルマシーンに接続されるとき、Ｍ個のバーチャルマシーンによりプッシュされるバーチャルデスクトップを個別に受信し、Ｎ個のディスプレイ装置のディスプレイパラメータに従って、Ｎ個のディスプレイ装置からＭ個のバーチャルマシーンのためのディスプレイ装置を個別に選択し、バーチャルデスクトップを表示するため、Ｍ個のバーチャルマシーンについて個別に選択されるディスプレイ装置にＭ個のバーチャルマシーンのバーチャルデスクトップを出力してもよく、ここで、ＮとＭとの双方は自然数であり、ＮはＭ以上であり、Ｍは２以上である。本発明の本実施例を利用することによって、クライアント装置が複数のディスプレイ装置に接続されると、接続された複数のバーチャルマシーンのバーチャルデスクトップが、表示用の異なるディスプレイ装置に個別にマッピングされ、これにより、クライアント装置の利用を向上させ、複数のバーチャルマシーンが利用されるときのユーザの要求を充足する。さらに、クライアント装置が外部装置に接続されると、外部装置はまた接続された複数のバーチャルマシーンにマッピングされてもよく、外部装置の使用権は、ポリシー制御に従ってバーチャルマシーンに割り当てられ、これにより、複数のバーチャルマシーンのマッピングのフレキシビリティを向上させることができる。
【００９５】
当業者は、本発明の実施例における技術が必要な汎用的なハードウェアプラットフォームに加えてソフトウェアにより実現されてもよいことを明確に理解するかもしれない。このような理解に基づき、従来技術に本質的に又は部分的に貢献する本発明の実施例における技術的手段は、ソフトウェアプロダクトの形態により実現されてもよい。ソフトウェアプロダクトは、ＲＯＭ／ＲＡＭ、ハードディスク又は光ディスクなどの記憶媒体に格納可能であり、本発明の実施例に説明された方法又は一部を実行するようコンピュータ装置（パーソナルコンピュータ、サーバ又はネットワーク装置であってもよい）に指示するための複数の命令を含む。
【００９６】
本明細書における実施例は全て進歩的な方式により説明され、実施例の同一の又は類似する部分について、これらの実施例が参照されてもよく、各実施例は他の実施例との相違に着目する。特に、システムの実施例は、方法の実施例と基本的に同様であり、従って、簡単に説明されており、関連する部分については、方法の実施例における一部の説明が参照されてもよい。
【００９７】
上記の説明は本発明の実現方式であるが、本発明の保護範囲を限定することを意図していない。本発明の趣旨及び原理から逸脱することなくなされる何れかの修正、等価な置換及び改良は、本発明の保護範囲内に属する。
【図１Ａ】
0006014274.tif 000002
【図１Ｂ】
0006014274.tif 000003
【図２Ａ】
0006014274.tif 000004
【図２Ｂ】
0006014274.tif 000005
【図３Ａ】
0006014274.tif 000006
【図３Ｂ】
0006014274.tif 000007
【図４】
0006014274.tif 000008
【図５】
0006014274.tif 000009
【図６】
0006014274.tif 000010
【図７】
0006014274.tif 000011