JP2014529367A - 階層ディスプレイサーバシステム及び方法 - Google Patents

階層ディスプレイサーバシステム及び方法 Download PDF

Info

Publication number
JP2014529367A
JP2014529367A JP2014515940A JP2014515940A JP2014529367A JP 2014529367 A JP2014529367 A JP 2014529367A JP 2014515940 A JP2014515940 A JP 2014515940A JP 2014515940 A JP2014515940 A JP 2014515940A JP 2014529367 A JP2014529367 A JP 2014529367A
Authority
JP
Japan
Prior art keywords
server
slave
user system
user
master
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014515940A
Other languages
English (en)
Other versions
JP6114264B2 (ja
JP2014529367A5 (ja
Inventor
スティーヴ バッケ,
スティーヴ バッケ,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netzyn Inc
Original Assignee
Netzyn Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Netzyn Inc filed Critical Netzyn Inc
Publication of JP2014529367A publication Critical patent/JP2014529367A/ja
Publication of JP2014529367A5 publication Critical patent/JP2014529367A5/ja
Application granted granted Critical
Publication of JP6114264B2 publication Critical patent/JP6114264B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/06Use of more than one graphics processor to process data before displaying to one or more screens
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • G09G2370/022Centralised management of display operation, e.g. in a server instead of locally

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)

Abstract

コンピューティングシステムがサーバの階層セットを含む。階層セットは、マスタサーバ及び1つ又は複数のスレーブサーバを含む。マスタサーバ及びスレーブサーバは、通信ネットワークを介して少なくとも1つの非インテリジェントユーザシステムと通信する。マスタサーバは各非インテリジェントユーザシステムへの全アクセスを有する。マスタサーバは、各スレーブサーバに関する非インテリジェントユーザシステム(複数可)へのアクセス許可を制御する。各上位スレーブサーバは、サブレベルのスレーブサーバ(複数可)に関する非インテリジェントユーザシステム(複数可)へのアクセス許可を制御することができる。マスタサーバ、又はアクセスが許可された場合にスレーブサーバは、非インテリジェントユーザシステムのディスプレイ内にウィンドウを作成し、そのウィンドウに記入するためのピクセルを送信するために、このウィンドウへのアクセスを任意の下位レベルのスレーブサーバに与えることができる。ピクセルは、ブラウザ又はスプレッドシートなどのアプリケーションのグラフィック出力とすることが可能であり、又はピクセルは(ライブ又はハードドライブから読み取ったいずれかの)ビデオとすることができる。サーバの他のアプリケーションでは、サーバシステムは、ユーザシステムの構成要素で出力を制御し、すべてネットワークを介した通信により、ユーザシステムの構成要素及び周辺装置から入力を受信することができる。それぞれの非インテリジェントユーザシステムへのアクセスは、サーバの階層セットのマスタサーバ及び各上位レベルのスレーブサーバによって指示される。構成要素及び周辺装置の入力を表すデータは、多重化され、ユーザシステムによりネットワークを介して通信され、ユーザシステムの構成要素の出力を表すデータは、ネットワークを介してユーザシステムによって受信され、ユーザシステムで出力のために逆多重化され、構成要素に送達される。【選択図】 図4

Description

関連出願の相互参照
本出願は、同時係属であり、本出願と少なくとも1人の同一発明者を有し、本参照により本明細書に組み込まれた、以前の米国の国内出願である2011年6月14日出願の「Hierarchical Display-Server System andMethod」と題する米国特許出願第13/160122号の、優先権の利益を有する。
本発明は、一般に、サーバデバイス及び通信ネットワークによって接続された非インテリジェントユーザデバイス(non-intelligent user device)に関し、より詳細には、限定された処理能力を備えるか又は処理能力をまったく備えていない、ディスプレイ、入出力、及びネットワーキングの構成要素を有するユーザデバイスに通信可能に接続された、マスタサーバデバイス及び階層スレーブサーバデバイス(hierarchical slave server device)を含む、ディスプレイ・サーバシステムに関する。
背景
長年にわたり、様々なタイプのコンピューティングシステムが存在している。そのうちの4つの主要なタイプが、サーバ、クライアント、クライアント・サーバ、及びディスプレイ・サーバである。すべてのタイプのコンピューティングシステムは、ユーザに対するコンピューティングタスクを実行する。
サーバシステムは、すべてのコンピューティングが中央位置で実行される単一のシステムからなり、このシステムには、初期のタスク開始以外のコンピューティングタスクとのユーザ対話は存在しない。典型的なサーバシステムは、従来のメインフレームである。
クライアントシステムは、すべてのコンピューティングを実行する単一のシステムからなるが、クライアントシステムではコンピューティングタスクとの継続的なユーザ対話が存在する。典型的なクライアントシステムは、パーソナルコンピュータ、ラップトップ、スマートフォン、及びゲームコンソールである。
クライアント・サーバシステムは、単一のコンピューティングタスクを合わせて実行する、サーバコンピューティングシステムとクライアントコンピューティングシステムの両方からなる。これらのシステムは、それぞれ別々にサーバシステム及びクライアントシステムの両方として動作する。サーバ及びクライアントの両方として動作するクライアント・サーバシステムは、少なくともタスク中でクライアントとして動作することに関連して、タスク中でユーザ対話を必要とする単一のコンピューティングタスクを実行する。現在使用されている典型的なクライアント・サーバシステムは、航空座席予約システム及び大型小売店販売時点管理システム(large retail store point-of-sale system)である。特殊なタイプのクライアント・サーバシステムは、ウェブサーバ/ブラウザクライアントである。任意のクライアント・サーバアプリケーションと同様に、ウェブサーバは単一の固有タスクを実行し、受け取った要求への応答を処理する。しかしながらブラウザプログラムは、固有のクライアントプログラムを各サーバプログラムに関連付けるのではなく、汎用クライアントプログラムとして働く。ブラウザはすべてのウェブサーバによって使用される。ブラウザは、現在、ブラウザ内で処理されるプログラムをオンザフライ(on the fly)でダウンロードすることによってアプリケーションを動作させることが可能であるため、ウェブブラウザ/サーバコンピューティングは、特にプログラムダウンロードの場合に、標準のクライアント・サーバコンピューティングと非常に類似していることに留意されたい。
ディスプレイ・サーバシステムは、サーバコンピューティングシステム及び非インテリジェントユーザ側システムからなる。この非インテリジェントユーザシステムの重要な態様が、ディスプレイである。そのため、ユーザシステムは時折「ディスプレイ」と呼ばれ、したがって、これらのタイプのコンピューティングシステム向けのディスプレイ・サーバシステムを言い表す。サーバのみのコンピューティングシステムと同様に、ほぼすべてのコンピューティングタスクがディスプレイ・サーバシステム内のサーバによって実行され、いくらかでもあるとすれば、わずかなコンピューティング(入力及び出力動作に必要な範囲以外)がディスプレイによって実行される。しかしながら、これらのディスプレイ・サーバシステムにおいて、ディスプレイはサーバによって処理されるコンピューティングタスクとかなりの対話を行う。ディスプレイは、いくらかでもあるとすれば非常に限られた処理能力のみを有するため、サーバは、(クライアントシステムタイプのコンピューティングシステムの)クライアントシステムのほぼすべての処理及び他の機能を実行する。実際に、ディスプレイは、サーバから受信された(ピクセルを表す)データに対応するピクセルをディスプレイによって表示するのみである。ほとんどの場合、(ディスプレイ用のピクセルを表す)データは、サーバによって(ビデオストリーム又は他のデータストリームなどの)表示のためにディスプレイに送達され、ディスプレイでの(キーストローク及びマウスの動きなどの)低レベルのユーザイベント(low-level user event)は、本来、ディスプレイによってサーバに送信される。
ディスプレイ・サーバコンピューティングは、現在のコンピューティングシステムに最も採用されていない構成であるが、ディスプレイ・サーバシステムは恩恵を与えることが可能であり、人気が高まることが予想される。典型的なディスプレイ・サーバコンピューティング環境は、ゼロクライアントコンピューティング(zero-client computing)と呼ばれる。ゼロクライアントコンピューティングでは、デスクトップオペレーティングシステム(OS)及びアプリケーションは、(典型的なパーソナルコンピュータなどの、クライアントシステムによってではなく)サーバによって処理される。ユーザ側システムは、しばしば、主として、ディスプレイ及びキーボード(又は他の入力及び出力デバイス(複数可))に結合された非インテリジェント「シンクライアント(thin-client)」デバイスである。
ディスプレイ・サーバコンピューティングが採用されている別の環境が、3Dゲームである。3Dゲームは、サーバシステム、一般には高性能サーバコンピュータによって処理され、サーバシステムは、ゲームのピクセルビデオストリームを、テレビ受像機に接続された非常に「シンクライアント」なユーザ側システムに送達する。ユーザ側システムで、従来のゲームコントローラ入力デバイスは、ゲームプレイ中にユーザの入力をサーバシステムに通信する。
したがって、より優れた動作柔軟性と改善された拡張可能性をディスプレイ・サーバシステムに提供することは有利なはずである。
概要
本発明の実施形態は、ディスプレイ「階層マルチサーバ(hierarchical multiple server)」システムを含む、ディスプレイ・サーバシステムである。ディスプレイ・サーバシステムは、被制御階層(controlled hierarchy)状に接続された複数のサーバデバイスにネットワークを介して接続された、1つ又は複数の非インテリジェントユーザシステム(ディスプレイ)を含む。
ユーザシステムは、ディスプレイと、キーボード、マウス、スピーカ、マイクロフォン、及び/又は他の同様の周辺デバイスなどの1つ又は複数の入出力構成要素と、通信ネットワークに通信可能に接続されたネットワークインターフェースコネクタとを含む。ユーザシステムは、ユーザによる周辺デバイスを介した入力/アクションを表す非常に低レベルのデータを、ネットワークを介して、ネットワークの通信可能なサーバシステムに送信する。同様にサーバシステムは、周辺デバイスへの応答などのサーバシステムによる動作の結果を表す非常に低レベルのデータを、ネットワークを介して、ディスプレイ又は他の周辺デバイスに通信する。こうして通信される低レベルのデータは、例えば、サーバシステムによってユーザシステムのディスプレイに送信されるピクセル(ビデオ)、キーボードによってサーバシステムに送信されるユーザシステムのキーボードへのユーザの入力、サーバシステムによってユーザシステムのスピーカに送信されるオーディオサンプルなどを表す。ユーザシステムの処理は限られており、例えばユーザシステムは、ネットワークに必要な可能性がある場合、通信の多重化及び逆多重化のみを実行することができる。多重化及び逆多重化は、例えばユーザシステムの構成要素内で採用されるネイティブデータタイプ(native data type)を、ネットワークを介した通信に好適なネットワークメッセージに、又はその逆に変換するために、必要となる可能性がある。
サーバは、単一のマスタサーバ及び複数セットのカスケードスレーブサーバ(cascading slave server)を伴い、階層状に配置構成される。マスタサーバは第1のレベルのスレーブサーバと通信し、第1のレベルのスレーブサーバは第2のレベルのスレーブサーバと通信する、という具合である。すべてのサーバは、ユーザシステムと直接通信可能である。マスタサーバは、ユーザシステムのそれぞれの構成要素すべてを完全な制御下におく。マスタサーバは、ユーザシステムのそれぞれの構成要素(複数可)を介して、階層状の各下位レベルのスレーブサーバにそれぞれ等しいか又はより少ない制御を提供する。マスタサーバは、あるとすればどの低レベルのサーバ(複数可)が構成要素に制御的にアクセスできるかを、ユーザシステム構成要素(複数可)に通知する。階層のそれぞれのスレーブサーバ及びマスタサーバによる、ユーザシステムのそれぞれの構成要素へのこの階層的アクセスは、サーバによる処理、及びユーザシステムの構成要素による入力/出力を、ユーザシステムに必要な重要な処理なしで、柔軟かつ極度にセキュアに可能にする。
ユーザシステム及び階層サーバシステムは、一般に互いにリモートに配置され、ユーザシステムとサーバシステムは、イーサネット、WiFi、3G、又は他のデータネットワークなどの物理通信ネットワークを介して、通信可能に接続される。しかしながら、ある代替形態では、ユーザシステム及びサーバシステムを単一の物理デバイス内に含めることが可能であり、この場合にネットワークはデバイスのローカルな配線又は他のローカルなリンクである。
組み合わされたユーザシステム及びサーバシステムは、非インテリジェントユーザシステム及び階層サーバシステム、単一物理デバイス、又は他の同様の配置構成の、いずれとして具体化されるかにかかわらず、本明細書では時折、階層ディスプレイ・サーバコンピューティング(hierarchical display-server computing)のために動作する階層ディスプレイ・サーバシステム(hierarchical display-server system)と呼ばれる。
本発明は、添付の図面において制限としてではなく例として示され、同じ参照番号は同様の要素を示す。
本発明のある実施形態に従った、ネットワークによって接続された階層サーバシステム及び2つの非インテリジェントユーザシステムを示す図である。 本発明のある実施形態に従った、2つの例示の典型的ユーザシステムである、例示のデスクトップユーザシステム及び例示のハンドヘルドユーザシステムを示す図である。 本発明のある実施形態に従った、例示のハンドヘルドユーザシステムの例示の構成要素を示す図である。 本発明のある実施形態に従った、サーバシステムの制御を通じて表示されるウィンドウを含む、例示のユーザシステムディスプレイに通信可能に接続された、例示の階層サーバシステムを示す図である。 本発明のある実施形態に従った、階層サーバシステムのマスタサーバ及びスレーブサーバがユーザシステムのそれぞれの構成要素に対して有する可能性のある、例示のアクセス/制御権を示す図である。 本発明のある実施形態に従った、階層ディスプレイ・サーバシステムの動作において、サーバシステムとユーザシステムとの間で通信される例示のメッセージを示す図である。 本発明のある実施形態に従った、ユーザシステムのディスプレイ及びスピーカの動作における、2つの例示のスレーブサーバを伴う例示のマスタサーバを示す図である。 本発明のある実施形態に従った、図7のマスタサーバと、スレーブサーバと、ユーザシステムのディスプレイ及びスピーカとの、それぞれの間の通信を示す図である。 本発明のある実施形態に従った、2つのユーザシステムそれぞれと通信し、ユーザシステムも互いに通信する、例示のサーバシステムを示す図である。 本発明のある実施形態に従った、サーバシステムによってユーザシステム内に実装された例示のデスクトップ型のユーザインターフェースを示す図である。 本発明のある実施形態に従った、非定常ユーザが複数のユーザシステム間を移動する動作における、例示のサーバシステムを示す図である。 本発明のある実施形態に従った、従来のアプリケーションプログラミングインターフェース(API)を必要としない、例示のサーバシステムと動作する例示のユーザシステムを示す図である。 本発明のある実施形態に従った、従来のアプリケーションプログラミングインターフェース(API)を必要としない、例示のサーバシステムと動作する他の例示のシステムを示す図である。 本発明のある実施形態に従った、図7のマスタサーバと、スレーブサーバと、ユーザシステムのディスプレイ及びスピーカとの、それぞれの間のファイアウォールが存在する通信を示す図である。 本発明のある実施形態に従った、ファイルシステムにセキュアにアクセスするために、例示のサーバシステムと動作する例示のユーザシステムを示す図である。 本発明のある実施形態に従った、単一の物理サーバデバイス内のマスタサーバ及び複数のスレーブサーバを仮想化するためのハイパーバイザと共に例示のサーバシステムを示す図である。 本発明のある実施形態に従った、同じ単一の物理サーバデバイス内にすべて含まれる、マスタサーバ及び複数のスレーブサーバ、並びにユーザシステムのハイパーバイザ仮想化と共に、例示のサーバシステムを示す図である。 本発明のある実施形態に従った、ユーザシステムのキーボードを介した例示のキーストロークメッセージ入力を含む、ネットワークを介して通信するユーザシステムと通信可能に動作する、階層ディスプレイ・サーバシステムを示す図であり、このキーストロークメッセージ入力は、階層ディスプレイ・サーバシステムのブラウザによって受信及び処理される。
詳細な説明
図1を参照すると、階層サーバシステム10は、スレーブサーバA102、スレーブサーバB101、スレーブサーバC111、スレーブサーバD103、及びスレーブサーバE110の、5つのスレーブサーバそれぞれに、直接又は間接的に通信可能に接続された、マスタサーバ100を含む。サーバシステム100は、通信ネットワークを介するなどして、ユーザシステムA104及びユーザシステムB109に通信可能に接続する。マスタサーバ100は、特に、スレーブサーバA102、スレーブサーバB101、及びスレーブサーバC111の、3つの第1のレベルのスレーブサーバに接続する。これら第1のレベルのスレーブサーバのうちの2つ(スレーブサーバA102及びスレーブサーバC111)は第2のレベルのスレーブサーバに接続し、すなわちスレーブサーバA102はスレーブサーバD103に接続し、スレーブサーバC111はスレーブサーバE110に接続する。
ユーザシステムA104は、デスクトップ型の非インテリジェントユーザシステムであり、例えば、ディスプレイ105、キーボード106、マウス108、及びスピーカ107の、4つの物理構成要素を備える。キーボード106、マウス108、及びスピーカ107は、ディスプレイ105に接続する。ディスプレイ105は、サーバシステムに通信可能に接続された通信ネットワークへの接続のための、ネットワークインターフェースを含む。ユーザシステムB109は、携帯電話、タブレットディスプレイ、携帯情報端末、又は通信用モバイルデバイスなどの、ハンドヘルド型(handheld style)非インテリジェントユーザシステムである。ユーザシステムB109は、例えば、単一のユニタリハウジング内に格納されたディスプレイ及びキーボードを備える。ユーザシステムA104及びユーザシステムB109は、通信ネットワークなどを介して、サーバシステムのすべてのサーバ100、101、102、111、103、110に通信可能に接続することができる。
マスタサーバは、マスタサーバと通信している各ユーザシステムのすべての構成要素へのアクセスを有する。マスタサーバ100は、例えばネットワークを介した通信アクセスを通じて、ユーザシステムAのすべての構成要素、すなわちユーザシステムA104のキーボード106、マウス108、及びスピーカ107のそれぞれ、並びに単一のユニタリハウジング内に一体化されているが、ユーザシステムB109の同様の各構成要素、すなわちユーザシステムB109のディスプレイ及びキーボードを、制御する。したがって、例えばマスタサーバ100は、ユーザシステムA104のディスプレイ105のいずれかの部分にビデオを送信し、スピーカ107上でオーディオを再生することができる。マスタサーバ100は、ユーザシステムA104のキーボード106及びマウス108への入力を通じて、ネットワークを介して通信を受信する。同様にマスタサーバ100は、ユーザシステムB109の各構成要素に通信可能にアクセスする。
マスタサーバは、ユーザシステムの構成要素のいずれかへのアクセスを、マスタサーバに接続されたスレーブサーバ(又はこれらのいずれか)に提供することができる。マスタサーバ100は、例えば、ユーザシステムA104のディスプレイ105のすべて又は一部へのアクセスを、スレーブサーバA102に与えることが可能であり、その後、スレーブサーバA102は、ビデオを表示するためなどに、ディスプレイ105を通信可能に制御することができる。他の例では、マスタサーバ100は、ユーザシステムA104のスピーカ107へのアクセスをスレーブサーバA102に与えることが可能であり、それによってスレーブサーバA102は、トーン又は他のサウンドを再生するためなどに、スピーカ107を通信可能に制御することができる。
スレーブサーバは、ユーザシステムの構成要素のいずれかへのアクセスを、スレーブサーバに接続された下位レベルのスレーブサーバに提供することができる。スレーブサーバA102は、例えばマスタサーバ100によってユーザシステムA104のスピーカ107へのアクセスが与えられた場合、そのアクセスをスレーブサーバD103(すなわち下位レベルのスレーブサーバ)に与えることができる。それによってスレーブサーバD103は、ユーザシステムA104のスピーカ107を通信可能に制御することができる。ユーザシステムA104は、スピーカ107に関して受信したすべてのオーディオを混合する。サーバがユーザシステム構成要素へのアクセスを下位レベルのサーバに提供した場合、ユーザシステムはそのアクセスについて通知される。ユーザシステムが、特定のサーバが所与の構成要素にアクセスできる旨を通知されていない場合、ユーザシステムはそのサーバからのその所与の構成要素に関するすべての通信を無視することになる。
サーバ間及びサーバとユーザシステムとの間の接続は、イーサネット、WiFi、4G、WiMax、若しくは任意の他の通信ネットワーク、又はこうしたネットワークの組合せなどの、ネットワーク接続である。
図2を参照すると、例示であるが非排他的な2つのタイプのユーザシステムが、デスクトップユーザシステム200及びハンドヘルドユーザシステム217である。デスクトップユーザシステム200は、例えば、USBフラッシュドライブ201、マイクロフォン202、スピーカ203、ディスプレイ204、カメラ205、マウス206、プリンタ207、及びキーボード208の、物理的に別々の構成要素を含む。構成要素201〜208はすべて制御ユニット209に接続し、制御ユニット209はネットワーク210に接続される。制御ユニット209は、ディスプレイ204などの他の構成要素のうちの1つに物理的に組み込まれることが可能であるか、又は、制御ユニット209は、限定された制御動作(例えば、重要でないオペレーティングシステム動作)にのみ採用されるデスクトップユーザシステム200の別のプロセッサとすることが可能である。例示の制御ユニットについては、図3に関連して以下で説明する。ハンドヘルドユーザシステム216は、例えば、同様に基本的であるがすべて内部の、マイクロフォン210、キーボード211、ディスプレイ212、カメラ213、スピーカ214、制御ユニット219、及びネットワークインターフェース215の、構成要素を含む。この例では、ハンドヘルドユーザシステム217は、デスクトップユーザシステム200とは異なり、プリンタ、マウス、又はフラッシュドライブを有していない。しかしながら、ハンドヘルドユーザシステム217は、この例ではデスクトップユーザシステム200内に存在しない、GPSユニット216及びMEMS 218構成要素を有する。デスクトップユーザシステム200のネットワーク接続210は、イーサネットなどの有線、若しくはWiFi、4G、WiMax、又は他の通信ネットワークなどの無線、或いは、それらの組合せとすることができる。ハンドヘルドユーザシステム217のネットワーク接続215は、例えば無線である。デスクトップユーザシステム200及びハンドヘルドユーザシステム217は、単なる例であるが、本実施形態において動作可能であり得るデバイス及びデバイスの構成要素を示す。少なくともネットワーク通信能力及びある種の能力を備えた他のデバイス及び構成要素も、又は代替として、実施形態において可能である。
図3を参照すると、小型ハンドヘルドデバイス300などの、典型的なユーザシステムの詳細な内部構成要素/機能ブロック図は、LCDディスプレイ306、スピーカ307、ブザー308、タッチスクリーン305、マイクロフォン312、カメラ313、及びキーボード314の、ハードウェア構成要素を含む。すべてのハードウェア構成要素は、デバイス300の低レベルのデータをネットワークを介して通信可能なデータに変換する、デバイス300の論理回路にインターフェース(相互作用)する。デバイス300の制御ユニット318は、構成要素を含むデバイス300の動作全体を制御する。ネットワークインターフェース301を介して受信されるメッセージは制御ユニット318によって処理され、制御ユニット318はメッセージを仮想的に逆多重化し302、適切な逆多重化されたメッセージデータをデータに関するそれぞれの構成要素に送達する。ビデオデコーダ304は、受信したネットワーク通信データをLCDディスプレイ306への送達のために変換する。ビデオデコーダ304は、標準のMPEG2、H.264、VC−1型デコーダ、又は適正(propriety)ビデオデコーダとすることができる。オーディオデコーダ303は、ネットワークデータを、スピーカ307への送達のためにアナログ信号に変換する。オーディオデコーダ303は、標準のAAC、MP3、G711型デコーダ、又は適正オーディオデコーダとすることができる。ハプティクス(haptics)デコーダ309は、ネットワークデータを、ブザー308を駆動するためのフォーマットに変換する。メッセージを出力する場合はこの逆が真であり、制御ユニット318はそれぞれの構成要素からのメッセージデータを仮想的に多重化し315、ネットワーク通信用にネットワークインターフェース301に送達するためのメッセージを生成する。タッチスクリーンエンコーダ310は、タッチスクリーン305からのデータを、ネットワークを介した送達用に変換する。オーディオエンコーダ311は、マイクロフォン315からのアナログデータを、ネットワーク介した送達用のデジタルデータに変換する。オーディオエンコーダ311データのフォーマットは、オーディオデコーダ303データのフォーマットと同一である。ビデオエンコーダ317は、カメラ305からのデータを変換する。ビデオエンコーダ317データのフォーマットは、ビデオデコーダ304データのフォーマットと同一である。ユーザシステムによって実質的なデータの処理は実行されないが、ユーザシステムは、デバイス300のハードウェアによって生成されるデータを出力されるネットワークメッセージにネットワークを介して通信可能な形で変換し、又は入力されるネットワークメッセージからデバイス300によって受信されるデータをハードウェアによって使用可能な形で変換する。
図4を参照すると、ユーザシステムとの通信が許可された前述のような階層サーバは、それぞれ、それぞれのウィンドウを生成し、それによって複数のウィンドウ(すなわち、各サーバについて1つの別個のウィンドウ)がユーザシステムによって表示される。それぞれのサーバには、ディスプレイのそれぞれのウィンドウへのアクセス権が許可される。例えば、あるウィンドウへのアクセスを有するサーバは、そのウィンドウに記入するためのグラフィック表示を表すピクセルを送信する。ピクセルは、ブラウザなどのアプリケーションのグラフィック出力又はスプレッドシートとすることが可能であり、ピクセルはビデオ(ライブ又はハードドライブから読み取られる)とすることが可能であり、或いは、ピクセルは本実施形態で適用可能な他の媒体とすることが可能である。
図4のサーバは、図1のサーバのような、マスタサーバ400、並びに5つのスレーブサーバA401、B402、C414、D403、及びE413との階層関係を有する。図4の例では、マスタサーバ400は、ディスプレイ408の全領域をカバーし、ウィンドウ404内のグラフィック表示(或いは、適宜、ビデオ又は他の媒体)を表すピクセルをウィンドウ404に記入する、全ディスプレイ408へのアクセス権を有し、ウィンドウ404を作成した。マスタサーバ400は、ウィンドウ405も作成し、ウィンドウ405内のグラフィック又は他の表示を表すピクセルを、ウィンドウ405に記入するためのアクセス権を、スレーブサーバA401に与えた。次にスレーブサーバA401はウィンドウ409を作成し、例えば、異なるか又は同じグラフィック若しくは他の表示を表すピクセルを、ウィンドウ409に記入するためのアクセス権を、スレーブサーバD403に与えた。マスタサーバ400はウィンドウ406を作成し、例えば、異なるか又は同じグラフィック若しくは他の表示又は媒体を表すピクセルを、ウィンドウ406に記入するためのアクセス権を、スレーブサーバB402に与えた。マスタサーバ400はウィンドウ412を作成し、異なるか又は同じグラフィック若しくは他の表示も表すピクセルなどを、ウィンドウ412に記入するためのアクセス権を、スレーブサーバC414に与えた。次にスレーブサーバC414はウィンドウ411を作成し、同じか又は異なるグラフィック若しくは他の表示も表すピクセルを、ウィンドウ411に記入するためのアクセス権を、スレーブサーバE413に与えた。図4は、上位レベルのサーバがウィンドウを作成し、下位レベルのサーバがそのウィンドウにピクセルを記入することを示す。各下位レベルのサーバについて、ユーザシステムディスプレイ上でその特定サーバについて作成されるウィンドウは、下位レベルのサーバのピクセルが表示されることになる専用位置である。スレーブサーバは、それぞれのスレーブサーバが、マスタサーバ400又は階層関係の優先度の高いスレーブサーバによってアクセス権を与えられている、ウィンドウ(又は適宜、複数のウィンドウ)内に含められるウィンドウのみを作成することができる。
図5を参照すると、ある実施形態に従い、可能であれば、ある例示のアクセス権が上位レベルのサーバによってスレーブサーバに与えられる。例えば、物理構成要素500、ディスプレイ上のウィンドウ501、及びサーバ対サーバ対話(やり取り、interaction)502の、アクセス権の3つの一般カテゴリが存在する。物理構成要素500の場合、特定サーバは、その構成要素にアクセスする(したがって動作可能に使用する)ための権利を有するか又は有さない。ディスプレイウィンドウ501は、図4に関して論じたように、及び図7に関して以下でさらに説明するように、階層的に作成される。上位レベルのサーバはウィンドウを作成し、そのウィンドウに記入するためのアクセス権を下位レベルのサーバに与える。それらに関連付けられたアクセス権を有する様々なサーバ対サーバ対話502が存在する。サーバには、情報交換をコピー/ペースト及びドラッグ/ドロップするためのアクセス権、図15に関して以下でさらに説明されるようなファイルへのアクセス権、専用のサーバ対サーバ通信を交換するためのアクセス権などが、与えられ得る。さらにスレーブサーバは、優先度の高いサーバからのファイル動作のためのアクセスを要求することもできる。さらにスレーブサーバは、こうしたアクセスが必要な、下位レベルの1つ又は複数のスレーブサーバへのアクセスが必要であり、これを要求する場合もある。
図6を参照すると、サーバとユーザシステムの間、サーバとサーバの間、及びいくつかの場合、2つ又はそれ以上のユーザシステムそれぞれの間で、ある例示のネットワークメッセージが送られる。例えばユーザ対サーバメッセージ600は、ユーザシステムのキーボード、マウス、GPSなどのハードウェア構成要素からの入力又は指示、或いは他の入力又は指示を表すデータを、ネットワーク通信を介してサーバに提供する。例えば、接続(Connect)メッセージは、ユーザシステムがマスタサーバとの通信を開始するために送信する第1のメッセージである。サーバ対ユーザメッセージ601は、例えば、プリンタ、スピーカ(音量)、及びカメラなどのユーザシステムのハードウェア構成要素に関する、指示又は命令を表すデータ/制御を提供する。サーバ対ユーザメッセージ601の少なくとも一部は、ユーザシステムウィンドウ及びデジタル著作権管理(DRM)に関するコマンドを表すデータである。1つのメッセージカテゴリ602は、サーバとユーザシステムの間、ユーザシステムとサーバの間、及びユーザシステム間で直接送信可能な、オーディオ及びビデオメッセージからなる。上位レベルのサーバは下位レベルのサーバにメッセージを送信し603、下位レベルのサーバも上位レベルのサーバにメッセージを送信する604。
図18を参照すると、動作中の例示のユーザシステム1820及びサーバシステム1833(サーバシステムは、ユーザシステムへのアクセスが許可されたマスタサーバ或いは任意の上位又は下位サーバのうちのいずれか)は、サーバシステム1833によって処理されるブラウザソフトウェアアプリケーションなどの、サーバシステム1833のブラウザ1829に通信される、ユーザシステム1820のキーボード入力を含む。ユーザシステム1820は、サーバシステム1833の通信された命令を処理すること、及びこれに応答してユーザシステム1820で対応する表示又は他の出力動作を実行することが可能な、ユーザ側階層ディスプレイシステム1821を含む。ユーザシステム1820は、メッセージャ1822及び通信ユニット1823(階層構成のサーバシステムとのプロトコル及び通信のためのTCP/UDP及びIPソフトウェア及び/又はハードウェアユニットなど)も含む。ユーザシステム1820は、キーボード1824又は他の入力デバイスをさらに含む。
サーバシステム1833はブラウザ1829を含む。サーバシステム1833は、実施形態に従った、階層ディスプレイ・サーバシステムにおいて、他のサーバシステムとの階層的対話及び配置構成が可能な、階層システム1830も含む。加えてサーバシステム1833は、メッセージャ1831及び通信ユニット1832(階層構成のユーザシステム1820及び他のサーバシステムとのプロトコル及び通信のためのTCP/UDP及びIPソフトウェア及び/又はハードウェアユニット又は構成要素など)も含む。
動作時、(ユーザシステム1820のユーザによって入力可能なような)キーボード1824でのキーストローク1825は、ユーザ側階層ディスプレイシステム1821によって検出される。階層ディスプレイシステム1821は、検出されたキーストローク1825を処理して、キーストローク1825を表すデータがサーバシステム1833に通信されるべきであるかどうかを決定する。その後、階層ディスプレイシステム1821は、キーストローク1825を表すデータ1826をメッセージャ1822に渡す。メッセージャ1822は、キーストローク1825を表すデータを、サーバシステム1833によって読取り可能なメッセージ1828としてフォーマット化する。メッセージャ1822は、メッセージ1827を通信ユニット1823に送信する。通信ユニット1823は、このメッセージ1827をフォーマット化し、通信されたメッセージ1828の適用可能なTCP/UDP IPパケットプロトコルに従い、通信ネットワークなどを介してサーバシステム1833に通信する。
サーバシステム1833の通信ユニット1832は、通信されたメッセージ1828をネットワークから通信可能に受信する。通信ユニット1832は、通信されたメッセージ1828から(メッセージ1827に対応する)メッセージ1836を抽出し、このメッセージ1836をメッセージャ1831に送達する。メッセージャ1831は、メッセージ1836がユーザシステム1820のキーボード1824へのキーストローク1825を表すかどうかを決定し、このメッセージ1836を入力1835としてサーバシステム1833の階層システム1830に送達する。こうした入力1835で、階層システム1830は、ユーザシステム1820でのキーストローク1825を表すブラウザ入力1834を抽出する。ブラウザ入力1834は、階層システム1830によってブラウザ1829に通信される。その後、ブラウザ1829は、ユーザシステム1820との通信及びユーザシステム1820での表示又は他の出力の動作のために、ブラウザ入力1834を処理する。
図7及び図8は、マスタサーバ700と、2つのスレーブサーバ702、704、並びにディスプレイ715及びスピーカ714からなるユーザシステム716との、例示の対話を示す。図7は、対話を図式で示す。図8は、この対話のセットアップをプロセスごとに示す。ユーザシステム716は、電源が投入されると、マスタサーバ700に接続705メッセージを送信する。マスタサーバ700は、座標0、0にウィンドウX717を作成するために、ウィンドウ706メッセージで応答する。その後マスタサーバ700は、ユーザシステム716のウィンドウX717に表示するためのビデオ媒体を表すピクセルをウィンドウ717に記入するために、(この例では)ビデオ707を送信する。その後、マスタサーバ700は、ウィンドウ及びスレーブ接続708メッセージをユーザシステム716に送信する。ウィンドウメッセージ708は、座標80,40にウィンドウY718を作成し、メッセージ708のスレーブ接続部分は、スレーブサーバA702が接続することをユーザシステム716に通知する。スレーブサーバA702が有するアクセス権は、接続メッセージ708の一部でもある。マスタサーバ700は、ユーザシステム716に接続することを通知する接続701メッセージを、スレーブサーバA702に送信する。ここでスレーブサーバA702は、ウィンドウY718内で表示するビデオ媒体を表すピクセルをウィンドウY718に記入する旨の(この例では)ビデオ709メッセージを、ユーザシステム716に送信する。
ここで、ウィンドウZ719に対して同様のプロセスを反復する。スレーブサーバ702は、ウィンドウ及びスレーブ接続710メッセージをユーザシステム716に送信する。ウィンドウコマンドは、座標160,50にウィンドウZ719を作成し、メッセージのスレーブ接続部分は、スレーブサーバB704が接続することをユーザシステム716に通知する。スレーブサーバB704が有するアクセス権は、メッセージ710の一部でもある。スレーブサーバA702は、ユーザシステム716に接続することを通知する接続703メッセージを、スレーブサーバB704に送信する。ここでスレーブサーバB704は、ウィンドウZ719内で表示されるビデオ媒体を表すピクセルをウィンドウZ719に記入する旨の(この例では)ビデオ711メッセージを、ユーザシステム716に送信する。
ここで、マスタサーバ700及びスレーブサーバA702の両方が、(さらにこの例に従って)オーディオ713、712メッセージをユーザシステム716に送信する。ユーザシステム716はオーディオを混合し、スピーカ714上でこれを再生する。ユーザシステム716がスレーブサーバA702からのオーディオを受け入れるために、マスタサーバ700は、スレーブサーバA 702がスピーカアクセス権を有する旨をユーザシステム716に通知してあることになる。
図9を参照すると、サーバ900と2つのユーザシステム901及び908との詳細な対話の例示の実施形態において、ユーザシステム901及び908は、オーディオ923、924、及びビデオ921、922メッセージを互いに直接送信している。図9に示されたような構成は、例えば2人のユーザ間でのビデオ/オーディオ会議で使用可能である。サーバ900は、ユーザシステムA901のディスプレイ902上に、ウィンドウJ903を作成するためにメッセージ917を送信し、ウィンドウK904を作成するためにメッセージ915を送信する。サーバ900は、ユーザシステムA901上に表示するためのオーディオ及びビデオ媒体を表すピクセルをウィンドウJ903に記入する旨の、ビデオ916メッセージを送信する。その後、サーバ900は、この例ではウィンドウM910及びウィンドウN101の、同様のウィンドウセットを、ユーザシステムB908のディスプレイ909上に作成する。サーバ900は、ウィンドウM910にビデオ919メッセージを記入する。その後、サーバ900は、ユーザシステムA901及びユーザシステムB908それぞれに、それらがそれぞれ他方のスピーカ及びディスプレイウィンドウそれぞれへのアクセスを有する旨を通知する。したがってユーザシステムB908は、カメラ912からのビデオ921メッセージを、ユーザシステムA901のウィンドウK904に送信する。同様にユーザシステムA901は、カメラ905からのビデオ922メッセージを、ユーザシステムB908のウィンドウN911に送信する。同様にオーディオは、各ユーザシステムのマイクロフォンとスピーカとの間でそれぞれ交換される。ユーザシステムA901のマイクロフォン906は、ユーザシステムB908のスピーカ914にオーディオ923メッセージを送信し、ユーザシステムB908のマイクロフォン913は、ユーザシステムA901のスピーカ907にオーディオ924メッセージを送信する。ビデオ及びオーディオは、ユーザシステムのアクセスが許可されている共通構成要素であるが、任意の構成要素へのアクセス権は、サーバからユーザデバイスへと渡されることが可能であるため、このようにユーザデバイスは他のユーザデバイスと通信することができる。
図10は、実施形態に従った、ユーザシステムのディスプレイの例示の標準デスクトップ型ユーザインターフェースを示す。この例では、標準デスクトップ型ユーザインターフェースは、バックグラウンドデスクトップと、それぞれのアプリケーションユニットを含むそれぞれのウィンドウフレームとを含む。各アプリケーションユニットのウィンドウフレームは、アプリケーションユニットのサイズ変更、最小化、最大化、及び終了に対処することができる。加えてウィンドウフレームは、アプリケーションユニットのウィンドウを、ディスプレイの異なる位置に移動させることに対処可能である。この実施形態では、マスタサーバ1010及び2つのスレーブアプリケーションサーバ1017、1021は、ユーザシステムディスプレイ1016に接続する。マスタサーバ1010は、メインデスクトップウィンドウ1024を作成し、グラフィック、テキスト、及び/又はビデオ媒体を表すピクセルを記入するために、ウィンドウ1011メッセージ及びビデオ1012メッセージを送信する。デスクトップウィンドウ1024は、アプリケーションユニットを開始するためのデスクトップバックグラウンド及びデスクトップアイコンを含む。例えばクロックアプリケーションユニット(clock application unit)を開始したい場合、マスタサーバ1010はウィンドウ1018メッセージ及びビデオ1019メッセージをユーザシステムディスプレイ1016に送信する。これらのメッセージは、フレームウィンドウ1025を作成し、クロック又は他のタイミング媒体を表すピクセルを記入する。マスタサーバ1010は、クロックアプリケーションユニットのアプリケーションウィンドウ1026を作成するために、ユーザシステムディスプレイ1016にウィンドウ1020メッセージも送信する。その後、マスタサーバ1010は、クロックアプリケーションメッセージに対処可能なスレーブサーバ1017に、接続1009メッセージを送信する。その後、スレーブサーバ1017は、クロック又はタイマを表すクロックアプリケーションのピクセルをアプリケーションウィンドウ1026に記入するために、ビデオ1022メッセージを送信する。
カレンダアプリケーションメッセージ(Calendar application message)に対処可能なスレーブサーバ1021が、ユーザシステムディスプレイ1016との通信を開始すると、同様のプロセスが発生する。マスタサーバ1010は、ウィンドウ1013メッセージ及びビデオ1014メッセージをユーザシステムディスプレイ1016に送信し、フレームウィンドウ1028などのフレームウィンドウを作成して、カレンダを表すピクセルを記入するよう、ディスプレイ1016に指示する。マスタサーバ1010は、カレンダアプリケーションウィンドウ1027を作成するためにウィンドウ1015メッセージを送信する。その後、マスタサーバ1010は、スレーブサーバ1021に接続1008メッセージを送信する。スレーブサーバ1021は、カレンダを表すピクセルをカレンダアプリケーションウィンドウ1027に記入するために、ビデオ1023メッセージを送信する。それによって、標準デスクトップ環境を非常にセキュアな方法でユーザシステム内に作成することが可能であり、各それぞれのアプリケーションユニットは、適用可能なマスタ及びスレーブサーバシステムのソフトウェアプログラム又は他の動作ユニットのものであってこれらによって処理される、テキスト、グラフィック、ビデオ、又は他の媒体を表すピクセルなどをウィンドウに記入するための、ユーザシステムに対する制限された権利を有する。
図11を参照すると、階層関係にある複数のサーバの例示の実施形態は、ユーザが1つのユーザシステムから別のユーザシステムに移動する時に、複数のユーザシステムのそれぞれの特定のユーザに、サービスを提供することができる。この例示の実施形態では、マスタサーバ1100はスレーブサーバブラウザ1101及びスレーブサーバスプレッドシート1102に接続する。本実施形態によれば、デスクトップユーザシステム1104、ハンドヘルドユーザシステム1109、及びタブレットユーザシステム1112の、3つのユーザシステムが存在する。ユーザシステム間を周期的に移動できる、一人のユーザ1105のみが存在する。初期に、ユーザ1105はデスクトップユーザシステム1104を操作している。この例では、それぞれのサーバは前述のように、デスクトップユーザシステム1104への接続セット1103を用いて相互接続される。ユーザがデスクトップユーザシステム1104の使用を切断し、ハンドヘルドユーザシステム1109を使用するために移動した場合1106、次にハンドヘルドユーザシステム1109はマスタサーバ1100に接続メッセージを送信する。
その後、マスタサーバ1100は、ユーザ1105がハンドヘルドユーザシステム1109に移動した旨を判定/検出/確認し、マスタサーバ1100は、デスクトップユーザシステム1104からハンドヘルドユーザシステム1109へのこのユーザの動きを、スレーブサーバブラウザ1101及びスレーブサーバスプレッドシート1102に、通信可能に通知する。その後、マスタサーバ1100並びにスレーブサーバ1101及び1102の両方は、それらそれぞれのメッセージを、デスクトップユーザシステム1104に送信する1103のではなく、ハンドヘルドユーザシステム1109に送信する1110ように、リダイレクトすることができる。
任意の特定のデスクトップユーザシステム1104及びハンドヘルドユーザシステム1109は、それぞれ別個のハードウェア及び構成要素を有することが可能である。例えばデスクトップユーザシステム1104及びハンドヘルドユーザシステム1109は、それぞれ、異なるディスプレイのタイプ又はサイズ、キーボードタイプ、タッチ対マウス入力、及びその他の多様なタイプ及び型の構成要素などの、異なる構成要素を含むことができる。したがってデスクトップユーザシステム1104及びハンドヘルドユーザシステム1109は、それぞれ、通信に採用されるシステム1104又は1109に関するそれぞれのハードウェア/構成要素の詳細を、その都度サーバに通信する。サーバは、可能であれば、システム1104又は1109それぞれに関する対応する詳細を使用して、通信を自動的に修正し、それに応じて動作メッセージを送信する。例えば、各それぞれのシステム1104又は1109のタッチイベント並びに他の入力及び出力、並びにそれぞれのシステム1104、1109の他のイベント、特徴、及び応答に応答して、ウィンドウの全体サイズを変更するように、動作を変更することができる。
さらに例示の実施形態において、ユーザ1105が、ハンドヘルドユーザシステム1109ではなくタブレットユーザシステム1112を介した通信を開始するために移動した場合1107、メッセージ通信1110は1111に進み、メッセージング1113はサーバによってタブレットユーザシステム1112へと向けられる。前述のように、ハンドヘルドユーザシステム1109及びタブレットユーザシステム1112がサーバに対して異なる構成要素を報告した場合、サーバは適宜動作を修正する。ここでユーザは、3つの異なるユーザシステムを使用しており、サーバは各固有のシステム1104、1109、及び1112それぞれに対して対処する動作を提供し、例えば、可能であれば、それぞれのデバイスの入力/出力、それぞれのディスプレイサイズ、並びに他の固有の機構及び構成要素の相違に合うように調整する。
図12を参照すると、ユーザデバイス(複数可)と通信するための階層サーバの動作の例示の方法は、ユーザデバイスに関する従来のアプリケーションプログラミングインターフェース(API)要件を不要にする。この例では、スレーブサーバ1206は、ユーザシステム1207上にポップアップイベント通知を表示する。スレーブサーバ1206は、マスタサーバ1200に要求1203メッセージを送信する。要求1203メッセージは、スレーブサーバ1206アプリケーションが、ユーザシステム1207上にポップアップイベント通知を表示したい旨を、マスタサーバ1200に通知する。マスタサーバ1200によって許可可能であれば、マスタサーバ1200はウィンドウメッセージ1201をユーザシステム1207に送信する。ウィンドウ1205がユーザシステム1207上に表示される。マスタサーバ1200は、更新1204メッセージでスレーブサーバ1206に応答する。スレーブサーバ1206は、ビデオメッセージなどのメッセージ1202をユーザシステム1207に送信する。メッセージ1202は、ビデオメッセージを表すピクセルとして、ウィンドウ1205内に表示される。マスタサーバ1200は、例えばユーザシステム1207のユーザの注意をメッセージ1202に引き付けるために、ユーザシステム1207によって表示されるウィンドウ1205の位置を、アニメーション化することができる。スレーブサーバ1206は、可能であれば、マスタサーバ1200のアニメーション又は同様の指示に気付く必要はなく、マスタサーバ1200(又は階層によってそのように許可された任意の他のサーバ)は、同様にユーザシステム1207の動作を指示することができる。この例では、特殊なイベント通知APIが不要であることに留意されたい。
図13を参照すると、ユーザデバイス(複数可)と通信するための階層サーバの動作の他の例示の方法も、ユーザデバイスに関する従来のアプリケーションプログラミングインターフェース(API)要件を不要にする。この例では、マスタサーバ1300は、複数のニュースサーバ、例えばスレーブサーバA1307、B1308、C1309、及びD1310の4つのニュースサーバの通信を介して、ニュースフィードリストを表示する。マスタサーバ1300は、ユーザシステム1301と通信して、ユーザシステム1301のディスプレイ1302上に4つの同一のウィンドウ1303、1304、1305、1306を作成する。その後、マスタサーバ1300は、4つのスレーブサーバA1307、B1308、C1309、及びD1310それぞれに接続し、スレーブサーバA1307、B1308、C1309、及びD1310は、それぞれのビデオメッセージをユーザシステム1301に送信する。それぞれのメッセージは、ユーザシステム1301のウィンドウ1303、1304、1305、又は1306のうちのそれぞれに、適用可能なビデオメッセージを表すピクセルを記入する。スレーブサーバA1307のメッセージはウィンドウ1303に記入し、スレーブサーバB1308のメッセージはウィンドウ1304に記入し、スレーブサーバC1309のメッセージはウィンドウ1305に記入し、スレーブサーバD1310のメッセージはウィンドウ1306に記入する。したがって、特別なニュースフィードAPIは不要である。
図14を参照すると、ユーザデバイス(複数可)との通信のための階層サーバの動作の他の例示の方法は、ユーザシステム(複数可)への、ファイアウォールが存在する状態での、適用可能なサーバとユーザシステム(複数可)との間のアクセスを許可する。この実施形態では、マスタサーバ1400及びスレーブサーバ1401は、サーバ1400、1041とユーザシステム1403との間のユーザ側ファイアウォール1402を経由して、ユーザシステム1403に接続する。このタイプのファイアウォールは、例えば、ファイアウォール1402の背後のユーザシステム1403などのデバイスから通信が開始され、ファイアウォール1402を通過するのを可能にするが、ファイアウォール1402の外部からファイアウォール1402を経由しユーザシステム1403へと通過する通信は制約する。ユーザシステム1402によって、ファイアウォール1402を通過する外部への通信が開始されると、通信は、ファイアウォール1402の外部のデバイスがファイアウォール1402を通過してユーザシステム1403へと通信する経路、並びにその逆の、両方の経路をたどることができる。しかしながら、アクセス/通信のタイムアウトなど、又はその他の方法を通じて通信セッションが完了すると、適用可能サーバ(複数可)は、前述のような通信が再開されるまで、ユーザシステム1402との通信を切断する。
さらに図14に関して、ファイアウォール1402は、ユーザシステム1403からサーバ1400及び1401へと外に向かう初期の通信は許可するが、サーバ1400又は1401からユーザシステム1403への初期の通信は許可しない。動作時、ユーザシステム1403は初期にマスタサーバ1400と通信する1404。これにより、ファイアウォール1402内の通信経路が開通し、マスタサーバ1400はユーザシステム1403にメッセージ1405を送信することができる。スレーブサーバ1401がユーザシステム1403との通信を望む場合、マスタサーバ1400はスレーブサーバ1401に接続メッセージ1406を送信する。スレーブサーバ1401はOKメッセージ1407で応答する。マスタサーバ1400は、ユーザシステム1403に、スレーブサーバ1401に関する次の接続メッセージ1408を送信する。この接続メッセージ1408を受信すると、ユーザシステム1403はスレーブサーバ1041に別の接続メッセージ1409を送信する。これでファイアウォール1402内の通信経路は、サーバ1400、1406両方とユーザシステム1403との間で、双方向通信用に開通する。例えばスレーブサーバ1041は、ユーザシステム1403にメッセージ1410を送信する。
スレーブサーバ1401とユーザシステム1403との間のメッセージ通信がタイムアウト期間に切断された場合、ファイアウォール1402は、例えばスレーブサーバ1401とユーザシステム1403との間の双方向通信に使用可能な通信経路を閉じ、スレーブサーバ1401はユーザシステム1403にメッセージ1411を送信するが、メッセージ1411は、ファイアウォール1402を通過することができない。スレーブシステム1401は、ファイアウォール1402を経由する双方向通信を再確立するために、接続要求メッセージ1412をマスタサーバ1400に送信しなければならない。マスタシステム1400は、接続メッセージ1413をユーザシステム1403に送信することによって応答する。接続メッセージ1413を受信すると、ユーザシステム1403はスレーブサーバ1401に接続メッセージ1414を送信して、スレーブサーバ1401を介した双方向通信のためのファイアウォール1402を開通させる。その後、スレーブサーバ1401は、メッセージ1411をメッセージ1415として再送し、メッセージ1415はユーザシステム1403による受信のためのファイアウォール1402を通過する。
図15を参照すると、サーバ階層は、スレーブサーバのアクセスと、これに応じて、こうしたスレーブサーバからファイルデータベースなどのファイルシステム1500に含まれるファイルへのユーザシステム(複数可)のアクセスとを制御する。図14のデバイス及び機構は図1と同様であり、ファイルシステム1500が追加されている。この実施形態では、マスタサーバ100は、ファイルシステム1400に直接接続し、ファイルシステム1500に含まれるすべてのファイルにアクセス可能である。マスタサーバ100は、スレーブサーバ102のアクセス許可を制御し、本実施形態に適用可能であれば、ファイルシステム1500上のファイルのすべて又はサブセットへのアクセス権を、スレーブサーバ102に提供することができる。例えば、こうしたサブセットは1つのファイル、ファイルディレクトリ、ファイルのグループ、又はその他とすることができる。ファイルに関するアクセス権は、実装に応じて、読取り専用、読取り/書込み、添付専用、又は任意の他のタイプの、ファイルアクセスとすることができる。他の点と同様に許可及び階層に一致する任意のスレーブサーバは、そのアクセス権を、接続された1つ又は複数の他の下位レベルのスレーブサーバに渡すことができる。
図16を参照すると、階層サーバの例示の実施形態は、単一の物理サーバデバイス(又は、可能であれば、複数のこうしたサーバデバイスの組合せ)内に仮想化されたマスタ及びスレーブサーバを提供する。この例では、図4のような階層サーバは、単一のサーバデバイス(又は、可能であれば複数のデバイスの組合せ)内に、各サーバ400、401、402、414、403、413を含む。説明及び例示のために、すべてのサーバ400、401、402、414、403、413は単一デバイス1600内に含まれる。マスタサーバ400及びスレーブサーバ401、402、414、403、及び413は、それぞれハイパーバイザ(hypervisor)1601によって仮想化され、同じ単一デバイス1600内に含められる。例えばディスプレイ408及びキーボード410を含むユーザシステム407は、ネットワーク接続1602を介して単一サーバデバイス1600に接続され、それぞれ単一デバイス1600内に仮想化された、それぞれのマスタサーバ400並びにスレーブサーバ401、402、414、403、及び413の許可されたアクセス及び通信は、ハイパーバイザ1601に従ったそれぞれのサーバ間の関連付けを通じて制御される。
図17を参照すると、他の例示の実施形態は仮想階層サーバを含む。この例では、説明のために、それぞれのマスタ及びスレーブサーバ並びに(この例では)ユーザシステムも、すべて単一の物理サーバデバイス(又は実装により、複数のこうしたデバイスの組合せ)内に含められる。この例での単一デバイス1700は、マスタサーバ400及びスレーブサーバ401、402、414、403、413、並びにディスプレイ408及びキーボード410を含む。同じデバイス1700内の仮想サーバ及びユーザシステムのこの例示の構成は、構成内で可能であれば、ディスプレイ、キーボード、通信、ストレージなどの、入力/出力機構を含む、デバイス1701又は他の同様の配置構成とすることができる。
上記の記述では、特定の実施形態を参照しながら本発明を説明してきた。しかしながら当業者であれば、以下の特許請求の範囲に記載された本発明の範囲を逸脱することなく、様々な修正形態及び変更形態が可能であることを理解されよう。したがって、本明細書及び図面は、制約的な意味ではなく例示的な意味とみなされるべきであり、すべてのこうした修正形態は本発明の範囲内に含まれるものと意図される。
利益、他の利点、及び問題に対する解決策について、これまで特定の実施形態に関して説明してきた。しかしながら、利益、利点、問題に対する解決策、並びにいずれかの利益、利点、又は解決策を実行すること又はより明らかにすることが可能なデバイス(複数可)、接続(複数可)、及び要素(複数可)は、いずれか又はすべての特許請求の範囲の重要、必要、又は必須な機構又は要素として解釈されるべきではない。本明細書で使用される場合、「含む」、「含んでいる」、又はその任意の他の変形の用語は、非排他的な包含をカバーするものと意図されるため、要素のリストを含むプロセス、方法、製品、又は装置は、それらの要素のみを含むものではないが、こうしたプロセス、方法、製品、又は装置に明示的に列挙されていないか又は固有でない、他の要素を含むことができる。

Claims (25)

  1. マスタサーバ及び1つ又は複数のスレーブサーバを含む、サーバの階層セットと、
    少なくとも1つの非インテリジェントユーザシステムと、
    前記マスタサーバ及び前記少なくとも1つの非インテリジェントユーザシステムを接続する、ネットワークと、
    を備えるコンピューティングシステム。
  2. 前記少なくとも1つの非インテリジェントユーザシステムのそれぞれが、カメラ、マイクロフォン、スピーカ、プリンタ、フラッシュドライブ、GPS受信器、及びウィンドウを表示するためのディスプレイからなる群から選択された、1つ又は複数の低レベルの構成要素を含み、
    各ユーザシステムの各低レベルの構成要素の入力を表すデータが、多重化され、前記階層セットに前記ネットワークを介して前記ユーザシステムによって通信され、
    前記ネットワークを介して前記階層セットから前記ユーザシステムによって受信される、各ユーザシステムの各低レベルの構成要素の出力を表すデータが、逆多重化され、前記低レベルの構成要素に送達され、
    前記少なくとも1つの非インテリジェントユーザシステムのそれぞれが、入力を表すデータ及び出力を表すデータに関する制限された処理能力を含む、
    請求項1に記載のコンピューティングシステム。
  3. 各スレーブサーバによる前記ネットワークを介した通信可能なアクセスが、前記マスタサーバ及び前記階層セットにおける優先度を有する任意のスレーブサーバによって制御され、前記マスタサーバ及び前記階層セットにおける優先度を有する他のスレーブサーバのうちのいずれかによって適用可能な許可を認められる、請求項1に記載のコンピューティングシステム。
  4. 少なくとも1つの入力/出力構成要素のユーザシステムとネットワークを介して通信するためのサーバシステムであって、
    マスタサーバと、
    前記マスタサーバに接続された少なくとも1つの第1のレベルのスレーブサーバとを備え、
    前記マスタサーバが、前記ユーザシステムの前記入力/出力構成要素のうちの1つ又は複数を選択的に制御するために、前記第1のレベルのサーバのうちの任意の1つ又は複数が前記ネットワークを介して前記ユーザシステムにアクセスすることを許可することが可能である、
    サーバシステム。
  5. 従来のデスクトップ型ウィンドウユーザインターフェースが、前記マスタサーバと、前記マスタサーバによって前記ユーザシステムへのアクセスが許可された前記少なくとも1つの第1のレベルのスレーブサーバのいずれかとの単独又は組合せを介して、前記ユーザシステム上に対話的に表示され、
    前記マスタサーバと、前記マスタサーバによって前記ユーザシステムへのアクセスが許可された前記少なくとも1つの第1のレベルのスレーブサーバのいずれかと通信する、前記ユーザシステムの選択的動作のために、ウィンドウフレームが前記ユーザシステムの前記ウィンドウユーザインターフェース内にそれぞれ作成され、
    前記マスタサーバのいずれか、並びに前記マスタサーバによって許可された場合及び許可されたとき、前記少なくとも1つの第1のレベルのスレーブサーバのいずれかのそれぞれの1つ又は複数のアプリケーションユニットが、前記マスタサーバと、可能であれば前記マスタサーバによって前記ユーザシステムへのアクセスが許可された前記少なくとも1つの第1のレベルのスレーブサーバとの通信を介して、前記ユーザシステムの前記ウィンドウフレーム内にそれぞれ表示される、
    請求項4に記載のサーバシステム。
  6. 同じユーザの複数の前記ユーザシステムにサービスを提供することが可能であり、そのときに前記ユーザによる通信に採用されている前記ユーザシステムに基づいて動作を自動的に調整する、請求項4に記載のサーバシステム。
  7. 前記マスタサーバと前記マスタサーバに接続された前記少なくとも1つの第1のレベルのスレーブサーバとの間の、アプリケーションプログラミングインターフェース(API)に関するいずれの要件も不要である、請求項4に記載のサーバシステム。
  8. 前記マスタサーバ、1つ又は複数のスレーブサーバ、及び前記階層セットからなる群の少なくとも1つに接続されたファイルシステムをさらに備え、
    前記マスタサーバが、前記ファイルシステムのすべてのファイルにアクセス可能であり、任意の1つ又は複数のスレーブサーバが、前記マスタサーバと、選択ファイルへのアクセスが許可された前記階層セットの任意の高優先度スレーブサーバとによって、前記ファイルシステムのファイルを選択するためにアクセスを許可され得る、
    請求項1に記載のコンピューティングシステム。
  9. 前記ユーザシステムによる、前記マスタサーバ及び任意のそれぞれ1つ又は複数のスレーブサーバとのファイアウォールを経由する通信が開始されると、階層セットのうちの選択されたものが、前記ファイアウォールを経由して前記ユーザシステムと通信し、
    前記マスタサーバが、前記ユーザシステムとの通信に関して、前記1つ又は複数のスレーブサーバのそれぞれによる、前記ファイアウォールを介する前記ユーザシステムへの通信可能なアクセス可能性に関する許可を制御する、
    請求項1に記載のシステム。
  10. ハイパーバイザをさらに備え、
    マスタサーバ及び1つ又は複数の前記スレーブサーバの前記階層セットが、前記ハイパーバイザに接続された、仮想マスタサーバ及び少なくとも1つの仮想スレーブサーバを備える単一デバイスである、
    請求項1に記載のコンピューティングシステム。
  11. 前記ユーザシステムが、前記仮想化されたマスタサーバ及び前記少なくとも1つの仮想化されたスレーブサーバの前記単一デバイスに含まれる、請求項10に記載のコンピューティングシステム。
  12. 通信ネットワークを介してユーザデバイスのウィンドウにメッセージを出す方法であって、
    マスタサーバによって複数のスレーブサーバのアクセス権を制御するステップであり、前記マスタサーバは前記ネットワークを介して前記ユーザデバイスへの全てのアクセスが可能である、制御するステップと、
    サブレベルスレーブサーバとしての前記スレーブサーバのうちの少なくとも1つのアクセス権を、上位レベルのスレーブサーバとしての前記スレーブサーバのうちの少なくとも1つの他のスレーブサーバによって、制御するステップであり、前記少なくとも1つのサブレベルのスレーブサーバのそれぞれが、前記マスタサーバ及び前記上位レベルのスレーブサーバによって許可された場合及び許可されたときのみ、前記ネットワークを介して前記ユーザデバイスへアクセスできる、制御するステップと
    を含む、方法。
  13. 前記通信ネットワークを介した前記ユーザデバイスとの前記マスタサーバの通信を介して、前記マスタサーバのために前記ユーザデバイスの前記ウィンドウの少なくとも1つを作成するステップと、
    前記ユーザデバイスへのアクセスが許可された各スレーブサーバの前記通信ネットワークを介した通信を介して、各スレーブサーバのために前記ユーザデバイスの前記ウィンドウの各ウィンドウを、それぞれ作成するステップと
    をさらに含む、請求項12に記載の方法。
  14. 前記ユーザデバイスの構成要素の入力を表すデータを、前記ユーザデバイスにより、前記ネットワークを介して、前記マスタサーバと前記ユーザデバイスへのアクセスが許可された少なくとも1つのスレーブサーバとのうちのいずれかに通信するステップをさらに含み、
    前記通信の前記マスタサーバと前記少なくとも1つのスレーブサーバとのいずれかに格納されたアプリケーションプログラムが、前記ユーザデバイスの前記構成要素の入力を表す前記データを処理する、
    請求項13に記載の方法。
  15. 前記ユーザデバイスの構成要素の出力を表すデータを、前記ユーザデバイスによる前記通信するステップの前記マスタサーバ及び少なくとも1つのスレーブサーバのいずれかによって、前記ネットワークを介して前記ユーザデバイスに通信するステップをさらに含み、
    出力を表す前記データが、前記ユーザデバイスによる出力である、
    請求項14に記載の方法。
  16. 出力を表す前記データが、ビデオ、オーディオ、テキスト、グラフィック、マルチメディア、及び組合せの群から選択された、前記ユーザデバイスによる出力である、請求項15に記載の方法。
  17. 前記ユーザデバイスが、前記ユーザデバイスによる前記入力及び出力のための制限された処理能力を有する、請求項14に記載の方法。
  18. 前記マスタサーバ及び前記スレーブサーバがそれぞれ、前記ユーザデバイスによって出力されるアプリケーションのためのそれぞれのユニットを含み、
    前記ユーザデバイスが、前記それぞれのユニットの動作のために、前記ネットワークを介した通信を介して、前記それぞれのマスタサーバ及びスレーブサーバと通信し、
    可能であれば、前記ユニットの前記マスタサーバ及びスレーブサーバのうちの対応するものによって、各それぞれのユニットについて別個のウィンドウが作成される、
    請求項14に記載の方法。
  19. 前記ユニットが、可能であれば、業務生産性ユニット(business productivity unit)、カレンダ、クロック、ビデオゲーム、写真現像ユニット、メディアプレーヤ、及び組合せの群から選択される、前記マスタサーバ及び各スレーブサーバそれぞれのためのものである、請求項18に記載の方法。
  20. 前記ユーザシステムのウィンドウをさらに備え、前記ウィンドウのそれぞれが、前記マスタサーバにより前記ユーザシステムへのアクセスが許可された前記少なくとも第1のレベルのスレーブサーバの各それぞれのスレーブサーバについて、前記マスタサーバによって前記ユーザシステム上に固有に作成され、
    前記ウィンドウ内で表示するためのピクセルを表すデータが前記ユーザシステムに通信されることによって、前記第1のレベルのスレーブサーバが前記ユーザシステムの前記ウィンドウにピクセルを記入する、
    請求項4に記載のサーバシステム。
  21. 前記マスタサーバ、前記第1のレベルのスレーブサーバ、前記第1のレベルのスレーブサーバに対する他のスレーブサーバ、及びより上の階層の任意の他のスレーブサーバに対する他のスレーブサーバの群から選択された、少なくとも1つの上位レベルのサーバと、
    前記第1のレベルのスレーブサーバ、前記第1のレベルのスレーブサーバに対する他のスレーブサーバ、及びより上の階層の任意の他のスレーブサーバに対する他のスレーブサーバの群から選択された、少なくとも1つの下位レベルのサーバと、
    前記ユーザシステムのウィンドウであり、前記ウィンドウのそれぞれが、前記上位レベルのサーバにより前記ユーザシステムへのアクセスが許可された前記下位レベルのサーバのそれぞれの各サーバについて、任意の上位レベルのサーバによって及び前記マスタサーバが前記上位レベルのサーバでない場合には前記マスタサーバによって、前記ユーザシステム上に固有に作成される、ウィンドウとをさらに備え、
    前記ウィンドウ内で表示するためのピクセルを表すデータが前記ユーザシステムに通信されることによって、前記下位レベルのスレーブサーバが前記ユーザシステムの前記ウィンドウにピクセルを記入する、
    請求項4に記載のサーバシステム。
  22. 前記ピクセルが、典型的なデスクトップ型フレーム、前記下位レベルのサーバのアプリケーションプログラムのグラフィック出力、ブラウザ、スプレッドシート、ライブビデオ、及び前記下位レベルのサーバに格納されたビデオの群から選択される、請求項21に記載のサーバシステム。
  23. 前記下位レベルのサーバの各それぞれのサーバのための前記ウィンドウの前記それぞれが、前記下位レベルのサーバが前記ユーザシステムでピクセルを記入できる唯一の位置である、請求項21に記載のサーバシステム。
  24. 前記ウィンドウ内で前記ユーザシステムに前記上位レベルのサーバによって作成される第2のウィンドウをさらに備え、
    前記上位レベルのサーバが、前記下位レベルのサーバのいずれかによる前記第2のウィンドウへのアクセスを許可する、
    請求項22に記載のサーバシステム。
  25. 前記第2のウィンドウへのアクセスが許可された前記下位レベルのサーバが、前記ウィンドウへのアクセスを許可されず、前記ユーザシステムで前記第2のウィンドウにピクセルを記入することが可能な、請求項24に記載のサーバシステム。
JP2014515940A 2011-06-14 2012-06-13 階層ディスプレイサーバシステム及び方法 Active JP6114264B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/160,122 US8700723B2 (en) 2010-06-15 2011-06-14 Hierarchical display-server system and method
US13/160,122 2011-06-14
PCT/US2012/042189 WO2012174072A2 (en) 2011-06-14 2012-06-13 Hierarchical display-server system and method

Publications (3)

Publication Number Publication Date
JP2014529367A true JP2014529367A (ja) 2014-11-06
JP2014529367A5 JP2014529367A5 (ja) 2015-07-23
JP6114264B2 JP6114264B2 (ja) 2017-04-12

Family

ID=45097141

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014515940A Active JP6114264B2 (ja) 2011-06-14 2012-06-13 階層ディスプレイサーバシステム及び方法

Country Status (7)

Country Link
US (4) US8700723B2 (ja)
EP (1) EP2721505B1 (ja)
JP (1) JP6114264B2 (ja)
CN (1) CN104081374B (ja)
CA (2) CA3019730C (ja)
ES (1) ES2774282T3 (ja)
WO (1) WO2012174072A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017130086A (ja) * 2016-01-21 2017-07-27 株式会社東芝 遠隔操作装置、遠隔操作方法、及びプログラム

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8700723B2 (en) * 2010-06-15 2014-04-15 Netzyn, Inc. Hierarchical display-server system and method
US8799358B2 (en) 2011-11-28 2014-08-05 Merge Healthcare Incorporated Remote cine viewing of medical images on a zero-client application
JP6062639B2 (ja) * 2012-01-25 2017-01-18 イプシロン ソフト コーポレイション ア.エス. クラウドにおけるファイルの拡張可能処理のためのシステム
CN104092711A (zh) * 2013-04-01 2014-10-08 云联(北京)信息技术有限公司 一种云游戏实现方法及系统
US11240349B2 (en) 2014-12-31 2022-02-01 Ebay Inc. Multimodal content recognition and contextual advertising and content delivery
US20180113663A1 (en) * 2015-04-13 2018-04-26 Barco N.V. Browser based display system for displaying image data
US11106417B2 (en) * 2015-06-23 2021-08-31 Airwatch, Llc Collaboration systems with managed screen sharing
JP6786892B2 (ja) * 2016-06-09 2020-11-18 富士ゼロックス株式会社 サーバ装置、情報処理システム及びプログラム
CN106911698B (zh) * 2017-03-03 2020-06-09 天津天地伟业信息系统集成有限公司 一种多路高清解码器集群的控制方法
CN107342978B (zh) * 2017-05-27 2020-12-22 广州市百果园信息技术有限公司 直播间连麦控制方法、装置及相应的终端设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002123785A (ja) * 2000-10-16 2002-04-26 Nissay Information Technology Co Ltd 画面表示処理方法及び業務処理システム
US20030061323A1 (en) * 2000-06-13 2003-03-27 East Kenneth H. Hierarchical system and method for centralized management of thin clients
JP2006178757A (ja) * 2004-12-22 2006-07-06 Inst For Information Industry 分散仮想環境管理システムと方法
JP2008269332A (ja) * 2007-04-20 2008-11-06 Hitachi Ltd サーバ仮想化環境におけるクラスタシステム構成方法及びクラスタシステム

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006266A (en) * 1996-06-03 1999-12-21 International Business Machines Corporation Multiplexing of clients and applications among multiple servers
EP1055316B1 (en) * 1998-02-13 2003-05-21 BRITISH TELECOMMUNICATIONS public limited company Telecommunications platform
US6249294B1 (en) * 1998-07-20 2001-06-19 Hewlett-Packard Company 3D graphics in a single logical sreen display using multiple computer systems
US6215486B1 (en) * 1998-07-20 2001-04-10 Hewlett-Packard Company Event handling in a single logical screen display using multiple remote computer systems
US6348933B1 (en) * 1998-07-20 2002-02-19 Hewlett-Packard Company Single logical screen display using multiple remote computer systems
WO2002088999A1 (en) * 2001-04-30 2002-11-07 Multiworks, Inc., Dba Contextit Methods and systems for providing technology-assisted content development
US20030200178A1 (en) * 2002-04-18 2003-10-23 International Business Machines Corporation Managing licensing of distributed applications
US8549114B2 (en) * 2002-06-12 2013-10-01 Bladelogic, Inc. Method and system for model-based heterogeneous server configuration management
US20040267955A1 (en) * 2003-06-27 2004-12-30 Dell Products L.P. System and method for network communication
US8756294B2 (en) * 2003-10-29 2014-06-17 Qualcomm Incorporated High data rate interface
US7685257B2 (en) 2003-11-10 2010-03-23 Sun Microsystems, Inc. Portable thin client for the enterprise workspace
CN100370739C (zh) * 2003-12-26 2008-02-20 华为技术有限公司 应用分布式的网管系统及方法
US20060053216A1 (en) * 2004-09-07 2006-03-09 Metamachinix, Inc. Clustered computer system with centralized administration
CN100452861C (zh) * 2005-01-05 2009-01-14 中央电视台 分级存储管理系统
WO2006077481A1 (en) 2005-01-19 2006-07-27 Truecontext Corporation Policy-driven mobile forms applications
US8766993B1 (en) * 2005-04-06 2014-07-01 Teradici Corporation Methods and apparatus for enabling multiple remote displays
US20070174429A1 (en) * 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US8197322B2 (en) * 2006-04-28 2012-06-12 King Show Games, Inc. System, apparatus, and method for configuring gaming experiences
US8566389B2 (en) * 2006-07-10 2013-10-22 Samsung Electronics Co., Ltd. Thin network protocol
US8196169B1 (en) * 2006-09-18 2012-06-05 Nvidia Corporation Coordinate-based set top box policy enforcement system, method and computer program product
US7827138B2 (en) * 2006-10-02 2010-11-02 Salesforce.Com, Inc. Method and system for synchronizing a server and an on-demand database service
US8667396B2 (en) * 2007-07-18 2014-03-04 Adobe Systems Incorporated Master slave region branding
KR101501174B1 (ko) * 2007-09-28 2015-03-19 엑세리온 악티에볼라그 네트워크 오퍼레이팅 시스템
US20090287571A1 (en) 2008-03-26 2009-11-19 Robb Fujioka Hypervisor and virtual machine ware
WO2009143187A2 (en) * 2008-05-19 2009-11-26 Citrix Systems, Inc. Systems and methods for remoting multimedia plugin calls
CN102067098B (zh) 2008-06-13 2015-03-25 惠普开发有限公司 用于分层策略管理的系统、方法和设备
JP5074327B2 (ja) * 2008-08-21 2012-11-14 株式会社日立製作所 経路制御システム
US8171517B2 (en) * 2008-12-12 2012-05-01 At&T Intellectual Property I, L.P. Apparatus and method for distributing media content to vehicles
EP2399423B1 (en) * 2009-02-17 2012-10-31 Telefonaktiebolaget L M Ericsson (publ) Method for controlling a communication network, servers, systems including servers, and computer programs
US8844040B2 (en) * 2009-03-20 2014-09-23 Citrix Systems, Inc. Systems and methods for using end point auditing in connection with traffic management
US9078033B2 (en) * 2009-03-27 2015-07-07 Guest Tek Interactive Entertainment Ltd. Coax and IP hybrid digital TV and VOD system
US9553953B2 (en) * 2009-04-15 2017-01-24 Dell Products L.P. Method and apparatus for extending capabilities of a virtualization domain to support features available in a normal desktop application
US8205035B2 (en) * 2009-06-22 2012-06-19 Citrix Systems, Inc. Systems and methods for integration between application firewall and caching
EP2467812A4 (en) * 2009-08-17 2014-10-22 Deal Magic Inc PROPERTY MONITORING WITH CONTEXT KNOWLEDGE
CN101719853B (zh) * 2009-11-30 2011-11-09 英业达股份有限公司 检测服务器运行状态的处理方法
US20110145341A1 (en) * 2009-12-16 2011-06-16 Alcatel-Lucent Usa Inc. Server platform to support interactive multi-user applications for mobile clients
US20110231353A1 (en) * 2010-03-17 2011-09-22 James Qingdong Wang Artificial intelligence application in human machine interface for advanced information processing and task managing
US8700723B2 (en) * 2010-06-15 2014-04-15 Netzyn, Inc. Hierarchical display-server system and method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030061323A1 (en) * 2000-06-13 2003-03-27 East Kenneth H. Hierarchical system and method for centralized management of thin clients
JP2002123785A (ja) * 2000-10-16 2002-04-26 Nissay Information Technology Co Ltd 画面表示処理方法及び業務処理システム
JP2006178757A (ja) * 2004-12-22 2006-07-06 Inst For Information Industry 分散仮想環境管理システムと方法
JP2008269332A (ja) * 2007-04-20 2008-11-06 Hitachi Ltd サーバ仮想化環境におけるクラスタシステム構成方法及びクラスタシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017130086A (ja) * 2016-01-21 2017-07-27 株式会社東芝 遠隔操作装置、遠隔操作方法、及びプログラム

Also Published As

Publication number Publication date
US20110307571A1 (en) 2011-12-15
EP2721505B1 (en) 2019-12-11
JP6114264B2 (ja) 2017-04-12
WO2012174072A3 (en) 2014-05-08
US8700723B2 (en) 2014-04-15
CA3019730C (en) 2021-03-16
CN104081374B (zh) 2017-12-08
CN104081374A (zh) 2014-10-01
EP2721505A4 (en) 2015-04-29
CA2839067A1 (en) 2012-12-20
CA2839067C (en) 2018-11-20
US20160241678A1 (en) 2016-08-18
US9762699B2 (en) 2017-09-12
WO2012174072A2 (en) 2012-12-20
US9300763B2 (en) 2016-03-29
EP2721505A2 (en) 2014-04-23
ES2774282T3 (es) 2020-07-20
CA3019730A1 (en) 2012-12-20
US20180048736A1 (en) 2018-02-15
US20140181190A1 (en) 2014-06-26

Similar Documents

Publication Publication Date Title
JP6114264B2 (ja) 階層ディスプレイサーバシステム及び方法
US8533263B2 (en) Computer to handheld device virtualization system
US20140331135A1 (en) Digital content connectivity and control via a plurality of controllers that are treated as a single controller
EP2756667B1 (en) Electronic tool and methods for meetings
RU2700188C2 (ru) Представление вычислительной среды на множественных устройствах
EP3659320B1 (en) Method and system for streaming data over a network
US10050800B2 (en) Electronic tool and methods for meetings for providing connection to a communications network
EP3131007B1 (en) Simulated desktop building method and related device
WO2014093503A1 (en) Mobile device application for remotely controlling a presentation accessed via a presentation server
US10965480B2 (en) Electronic tool and methods for recording a meeting
CN107077348A (zh) 跨设备的经分割的应用呈现
EP2758840B1 (en) Networking method
JP2018525744A (ja) アプリケーション及びデータをタッチスクリーンコンピュータ間で相互共有する方法並びにこの方法を実施するコンピュータプログラム
JP2021103520A (ja) ジェスチャーを利用して対話メッセージに感情を表現する方法、システム、およびコンピュータプログラム
CA3150610A1 (en) Dynamically switching between pointer modes
Ballesteros et al. Upperware: Bringing resources back to the system
KR101828798B1 (ko) 커뮤니케이션 서비스를 위한 컨텐츠 공유 방법 및 그 장치

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150603

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150603

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160426

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20160623

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170214

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170316

R150 Certificate of patent or registration of utility model

Ref document number: 6114264

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250