説明

可動性装置

安全なモバイル・コンピューティングを可能にする可動性装置プラットフォームで使用される可動性装置が提供される。図示される実施例では、典型的な可動性装置プラットフォームは、少なくとも1つのコンピューティング環境と通信インターフェースを介して通信し、安全なウェブ・サービスを処理して記憶するために動作する可動性装置、データ及びコンピューティング・アプリケーションをウェブ・サービスを使用して通信するために動作する通信ネットワーク、並びにウェブ・サービスを可動性装置に対して生成し、処理し、記憶し、通信し、暗号化するために動作する可動性装置管理サーバを含む。可動性装置は、処理装置、協働するコンピューティング環境とインターフェースするための可動性装置通信インターフェース、メモリ記憶装置ユニット、並びにウェブ・サービス及び/又はコンピューティング・アプリケーションを実行するために動作可能なオペレーティングシステムを含む。

【発明の詳細な説明】
【技術分野】
【0001】
本願は、2003年09月29日に出願された米国特許仮出願第60/507,197号「GO-KEY SYSTEM」、第60/506,918号「GO-KEY ONLINE MUSIC SUBSCRIPTION AND DISTRIBUTION APPLICATION AND SERVICE」、第60/506,919号「GO-KEY E-MAIL APPLICATION AND SERVICE」、第60/506,925号「GO-KEY MOBILE DESKTOP ENVIRONMENT」、及び2004年01月23日に出願された第60/543,735号「MDMS」、第60/538,763号「OMNI FILE SYSTEM (OFS)」、第60/538,915号「UDDI DIRECTORY」、第60/538,767号「UDDI REPOSITORY」の利益を主張する。加えて、本願は、米国同時係属出願第XX/XXX,XXX号「MOBILITY DEVICE」、及び第XX/XXX,XXXX号「MOBILITY DEVICE PLATFORM」を参照する。
【0002】
本発明の装置及び方法はモバイル・コンピューティング技術に関し、更に詳細には、通信ネットワーク及び可動性装置サーバを利用して安全なリモート・モバイル・コンピューティングを可能にする可動性装置に関する。
【背景技術】
【0003】
企業及び個人は、同様に、コンピューティング環境の特徴として可動性をますます要求する。企業にとって、可動性は社員をバラバラな地理的位置に配置することを可能にし、企業がより良いサービスを顧客に提供することを可能にする。例えば、大規模な製薬会社は、営業社員を見込み客(例えば、医師)に近い「フィールド」に配置したい。その様な状況で、「フィールド」社員は、機密扱いの営業・マーケティング情報、及びコンピューティング・アプリケーションに安全な接続を介してアクセスしたい。現在のソリューションによって、これらの社員は、1日の終わりに企業ネットワークと安全なコンピュータ・ネットワーク接続(例えば、仮想専用ネットワーク)を通して「同期」する煩雑な仕事が残されることが多い。比較してみると、個人は、データ及びコンピューティング・アプリケーションに近づく機能、更に詳細には、インターネット通信の時代に「接続して」断続的にとどまる機能を可能にするコンピューティング環境に可動性を要求する。
【0004】
モバイル・コンピューティングに対する必要性に対応して、コンピューティング環境製造業者は、人々がコンピューティング環境を路上で楽しむことを可能にする(例えば、スタンドアロンの、ネットワーク化された、及び/又は組み込み)モバイル・コンピューティング技術を開発した。その種のモバイル装置は、ユーザがファイル及びアプリケーションを常に「持ち運ぶ」ことを可能にすることを目的とする。可動性を提供しても、形状的因子、処理能力、及び携帯性において変化するときに、これらの装置は辛うじて有効である。その種の制限によって、ユーザは必要なファイル及びコンピューティング・アプリケーションの全てを持つことを保証する大型の携帯型コンピュータを苦労して持ち歩くことが多い。その種の慣習は、コンピューティング・システムの固有の(即ち、「装置中心」コンピューティングを利用する)設計を前提とする。
【0005】
「装置中心」コンピューティングによって、ユーザはリモート通信アプリケーション(例えば、仮想専用ネットワーク)を介してファイルにリモートで安全にアクセスできるが、データ及びコンピューティング・アプリケーションを検索する大型の煩雑なコンピューティング手段をまだ持ち歩かなければならない。更に詳細には、装置中心コンピューティングによって、ユーザは企業コンピューティング要求に対する1つの装置(例えば、会社のパーソナル・コンピュータ、又はラップトップ・コンピュータ)を一般に支給され、1又は複数のコンピューティング環境を自宅に個人用として一般に有する。複数のコンピューティング環境を維持することにおいて、コンピュータ・ユーザは、個別の選択及び設定を多くの異なるコンピューティング環境の間で同期させる仕事を課される。その種の仕事はどうひいき目に見ても骨が折れ、コンピュータ・ユーザを多くの異なるコンピューティング環境の間で所望するデータ及び/又はコンピューティング・アプリケーションにアクセスできないままにすることが多い。
【0006】
例えば、コンピュータ・ユーザは、彼(又は、彼女)の財務計画及び管理コンピューティング・アプリケーション(例えば、 Quicken, Microsoft Money)からの財務計画及び管理データを常に持ち、生じる支払い(例えば、失効した請求書)を処理したい。現在のソリューションによって、彼(又は、彼女)がこの所望するデータにアクセスできるように、コンピューティング・ユーザは財務計画、管理コンピューティング・アプリケーション、及びデータを(会社のコンピューティング施策及び手続きに違反する彼(又は、彼女)の会社のコンピュータを含む)各自のコンピューティング環境にインストールする。比較してみると、企業は解雇される従業員からの機密扱いの企業データへの全てのアクセスを効果的かつ直ちに終了させたい。装置中心コンピューティングに基づく現在の慣習では、従業員は彼らのコンピューティング環境(例えば、ラップトップ・コンピュータ、パーソナル・コンピュータ、携帯電話、又は携帯情報端末)を提出するように求められる。加えて、直ぐに解雇される従業員は、企業ユーザ・ディレクトリ情報を終了させることによって、企業データの使用を制限される。しかし、その種の装置を回収すること、及びアクセスを終了させることには固有の待ち時間が存在する。その種の待ち時間は、従業員がファイルを企業コンピューティング環境から後で使用するためにコピーすることを招く。そういうものであるから、既存の慣習では、機密扱いの企業データが改竄されるかもしれない。
【発明の開示】
【発明が解決しようとする課題】
【0007】
上記のことから、既存の慣習の短所を克服する必要性が存在する。
【課題を解決するための手段】
【0008】
安全なモバイル・コンピューティングを可能にする可動性装置プラットフォームで使用される可動性装置が提供される。図示される実施例では、典型的な可動性装置プラットフォームは、少なくとも1つのコンピューティング環境と通信インターフェースを介して通信し、安全なウェブ・サービスを処理して記憶するために動作する可動性装置、データ及びコンピューティング・アプリケーションをウェブ・サービスを使用して通信するために動作する通信ネットワーク、並びにウェブ・サービスを可動性装置に対して生成し、処理し、記憶し、通信し、暗号化するために動作する可動性装置管理サーバを含む。可動性装置は、処理装置、協働するコンピューティング環境とインターフェースするための可動性装置通信インターフェース、メモリ記憶装置ユニット、並びにウェブ・サービス及び/又はコンピューティング・アプリケーションを実行するために動作可能なオペレーティングシステムを含む。
【0009】
オペレーションでは、可動性装置は、1又は複数の協働するコンピューティング環境と可動性装置通信インターフェースを通して協働する。可動性装置は、ユーザ認証情報を使用してユーザ認証に従事する。いったん認証されたら、可動性装置は少なくとも1つの協働するコンピューティング環境と可動性装置通信インターフェースを通して協働し、ウェブ・サービス及び/又はコンピューティング・アプリケーションを協働するコンピューティング環境で実行する。更に、可動性装置は、可動性装置管理サーバと協働して、少なくとも1つの協働するコンピューティング環境で実行するためのウェブ・サービス及び/又はコンピューティング・アプリケーションを得る。
【0010】
本発明の装置及び方法の他の特徴が、以下に記載される。
【発明を実施するための最良の形態】
【0011】
本発明の装置及び方法は、「ユーザ中心」アプローチをコンピューティング及びモバイル・コンピューティングに提供する。一般に、(企業又は個人の)現在のコンピューティング・ソリューションは、「装置中心」モデルを使用して設計される。装置中心モデルは、装置の割当て及び指定に基づいてユーザを管理し追跡することを目的とする。例えば、企業コンピューティングという状況では、企業コンピューティング環境は、多数のサーバ・コンピューティング環境、及び多数のクライアント・コンピューティング環境を含む。一般に、企業の各ユーザは、サーバ・コンピューティング環境に企業通信インターフェースを通して(又は、もしユーザが企業通信ネットワークに対してリモートであれば、仮想専用ネットワーク(VPN)を通して)一般にネットワーク化されたクライアント・コンピューティング環境(例えば、パーソナル・コンピュータ、又はラップトップ・コンピュータ)を支給される。加えて、従来の企業コンピューティング環境では、ユーザの権利及び特権を企業データ及びコンピューティング・アプリケーションに関連付けるディレクトリ・サービス構造を通して、ユーザはユーザ識別情報及びパスワード情報を提供される。
【0012】
その種の企業コンピューティング環境によって、もしユーザがネットワーク中をうろついて自分以外のコンピューティング環境にログオンしたら、個別の選択及び設定にアクセスしないように、ユーザは支給された彼(又は、彼女)のコンピューティング環境を彼(又は、彼女)の選択及び設定でカスタマイズすることを許可されるだけであることが多い。また、この問題は、選択及び設定(例えば、ブラウザ・ブックマーク、デスクトップのルック・アンド・フィール、色彩設計、アプリケーションのレイアウト、及びファイルに対するディレクトリ構造)を企業コンピューティング環境と個人のコンピューティング環境(例えば、自宅のコンピュータ)の間の同期を維持したい企業ユーザが同期を手動で実行することが多いときにも見られる。
【0013】
更に、既存の企業コンピューティング環境によって、多数のクライアント・コンピューティング環境の管理は困難な仕事になった。現在、企業は、(数百ではない)数十単位の情報技術部門を雇用して、多くのユーザ及びコンピューティング環境をサポートしている。単なる物理的管理以上に、企業データの保全性及びセキュリティが、装置中心コンピューティング・モデルによって稼働させられる。その様な状況で、企業コンピューティング・ユーザは、機密扱いの企業データのコピー及び構成における自分の意志を放置することが多い。企業ファイル及びデータの無許可コピーをユーザにさせない仕事はどうひいき目に見ても困難なので、殆どの企業は見て見ぬふりをする。既存の慣習のその種の限定は、企業及び個人に対して同様に非常に高くつく。
【0014】
本発明の装置及び方法は、「ユーザ中心」モデルを使用して設計された可動性装置を提供することによって既存の慣習の短所を改善することを目的とする。図示される実施例では、可動性装置は、1又は複数の協働するコンピューティング環境(例えば、パーソナル・コンピュータ、携帯情報端末、携帯電話、ネットワーク化されたコンピュータ、及び他のコンピューティング環境)と通信インターフェース(例えば、ユニバーサル・シリアル・バス(USB)、 IEEE 1394 通信インターフェース(FireWire)、 802.XX 通信インターフェース、 Bluetooth 通信インターフェース、パーソナル・コンピュータ・インターフェース、小型コンピュータ・シリアル・インターフェース、及び無線アプリケーション・プロトコル(WAP)通信インターフェース)を通して通信するために動作する少なくとも1つの可動性装置(MD)を含む。加えて、可動性装置プラットフォームは、認証及び検証、並びにユーザ管理を協働する可動性装置及びそれらのユーザに提供するために動作する1又は複数の可動性装置管理サーバ(MDMS)を含む可動性装置プラットフォームの一部として使用するためのものである。
【0015】
オペレーションでは、可動性装置は、ウェブ・サービスを処理するための1又は複数の作業領域を呼び出す1又は複数のコンピューティング環境と協働する。ウェブ・サービスは、MDに近いデータ及びコンピューティング・アプリケーションから実行されるか、又はMDは1又は複数のMDMSと協働して所望するウェブ・サービスを得る。MDMSは、要求中のMDが要求されたウェブ・サービスに対する権利及び特権を有することを認証するために動作する。加えて、MDMSはサード・パーティ・ウェブ・サービス・プロバイダと協働して、要求されたウェブ・サービスを得る。その様な状況で、MDMSは、ウェブ・サービスを非MD固有のウェブ・サービス形式からMD固有のウェブ・サービス形式に変換するために機能する。ウェブ・サービスがMDMSから協働MDへ通信するとき、MDMS及びMDは、ユーザ及び装置の認証情報及び検証情報を使用して1028ビット及び/又は2056ビット暗号化(例えば、PKI暗号化)に従事する。MDMSによってMDへ提供されたウェブ・サービスは、(限定されないが)コンピューティング・アプリケーション、及び所望するデータを含む。加えて、MDはMDに近い参加ユーザのカスタマイズされた設定及び選択を記憶するために動作するので、MDはユーザに対して常に利用可能である。
【0016】
そういうものであるから、可動性装置によって、ユーザは任意の数の協働するコンピューティング環境を横断して、カスタマイズされた設定及び選択にアクセスできること、更に詳細には、(例えば、ウェブ・サービスとして提供されたような)コンピューティング・アプリケーション及びファイルに安全にアクセスできることを確信する。
[ウェブ・サービス]
【0017】
一般に、ウェブ・サービス(又は、アプリケーション・サービス)と呼ばれる、通信ネットワーク(例えば、インターネット)を通して提供されるサービスが進歩している。同様に、その種のサービスを容易にする技術も進歩している。ウェブ・サービスは、アプリケーション(又は、エンドユーザ)によって使用されるために便利にパッケージされたビジネス論理プロセスを実行する情報源として定義される。次第に、ウェブ・サービスは、ネットワークを通して機能を提供する手段になってきた。一般に、ウェブ・サービスは、プログラム、及びエンド・ユーザのためのアプリケーション・サーバ(及び、他のネットワーク接続されたアプリケーション・プログラム)から利用可能にされるデータの組み合わせを含む。ウェブ・サービスは、記憶管理、及び顧客関係管理のようなサービスから更に限定されたサービス(例えば、株価の提供、及び競売への入札のチェック)まで及ぶ。
【0018】
ウェブ・サービスの使用を定義して標準化することに焦点を合わせた活動は、ウェブ・サービス記述言語(WSDL)の開発を含む。WSDLは、ウェブ・サービスを文書指向情報、又は手続き指向情報の何れかを含むメッセージで動作する1組のエンドポイントとして記述するための拡張マークアップ言語(XML)形式である。オペレーション及びメッセージは抽象的に記述され、具体的なネットワーク・プロトコル、及びエンドポイントを定義するメッセージ形式に結び付く。関連する具体的なエンドポイントは、抽象エンドポイント(サービス)と合体する。
【0019】
現在、推奨されるウェブ・サービス利用モデルは、一般に以下のようである。
【0020】
(1)サービスは、(サーバ・サイドと呼ばれることが多い)1つのサイトで実施されて展開される。
【0021】
(2)サービスはWSDLを使用して記述され、手段(例えば、UDDI(Universal Description, Discovery, and Integration))を介して掲載される。UDDIは、提供するウェブ・サービスによってインターネットに自らをリストする世界中のビジネスのためのXMLに基づくレジストリである。
【0022】
(3)クライアント・アプリケーションは、ウェブ・サービスを(クライアント・サイドと呼ばれることが多い)他のサイトにおいて、1又は複数のWSDLドキュメントを最初に逐次解釈することによって使用する。いったん逐次解釈されたら、クライアントは、関連するサービスの特性を理解できる。例えば、サービス特性は、サービスAPI仕様(例えば、(a)入力データ型、(b)サービス入力データ形式、(c)サービス・アクセス機構、又はスタイル(例えば、RPC対メッセージング)、及び(d)関連する符号化形式)を含む。
【0023】
(4)クライアント・アプリケーションは、種々の特定のウェブ・サービスが理解する方法でデータを準備する。
【0024】
(5)クライアント・アプリケーションは、特定のサービスを、サービスに対して指定された方法によって、例えば、関連するWSDLドキュメントで呼び出す。
【0025】
入力データの形式、及びウェブ・サービスが呼び出される方法に対して、多くの相違点がウェブ・サービスの間に存在する。例えば、1つのアプリケーション・サービス・プロバイダが、単一の入力パラメータ(例えば、従来の都市名(例えば、 Salt Lake City に対して SLC))を要求するサービス(getCityWeather)を提供すると仮定する。その種のサービスを呼び出す傾向があるクライアント・アプリケーションが書き込まれることを要求するので、都市情報を抽出するために内部の(又は、アプリケーションによって出力された)データを解析することができる。実行時には、準備された記号は、 getCityWeather サービス・サイトに適切なAPIを使用して伝わる。
【0026】
しかし、他のアプリケーション・サービス・プロバイダが、2つの入力パラメータ(例えば、都市名、及び郵便番号)を要求する類似のサービスを提供すると仮定する。従って、もしクライアント・アプリケーションがこの第2のサービスを呼び出す予定があれば、クライアント・アプリケーションは、第2のサービスのデータを要求されたサービス入力パラメータに対して適切に解析して抽出する必要がある。従って、もし単一のアプリケーションが両方のサービスを呼び出す予定があれば、アプリケーションはサービス特有のAPI情報及び手続きを用いてハードコード化されなければならない。更に、もしアプリケーションが多数のサービスを呼び出す予定があれば、アプリケーションは(アプリケーションが呼び出す予定の)各々及び全てのサービスに関連するサービス特有のAPI情報及び手続きを用いてハードコード化しなければならない。
【0027】
上で説明したように、種々のウェブ・サービスは類似の機能を提供するが、多くのやり方で異なる。本発明のシステム及び方法は、データをウェブ・サービス・プロバイダから受信して協働する可動性装置に対して固有のウェブ・サービス・モデルで提示するために動作するウェブ・サービス変換モジュールを(他の間に)含むモバイル装置管理サーバを有する可動性装置プラットフォームを提供することによって、その種の不均衡を改善することを目的とする。
[シンプル・オブジェクト・アクセス・プロトコル(SOAP)]
【0028】
シンプル・オブジェクト・アクセス・プロトコル(SOAP)は、分散した環境で情報を交換するための軽快なXMLに基づくプロトコルである。SOAPは、情報交換の異なるスタイルをサポートする。即ち、
【0029】
エンドポイントが手続き指向メッセージを受信し、相関する応答メッセージによって応答する、要求−応答処理を可能にするリモート・プロシージャ・コール・スタイル(RPC)。
【0030】
メッセージは送信されるが、送信者は即時の応答を期待しない(又は、待たない)、ビジネス(又は、他の型の)ドキュメントを交換する必要がある構成及びアプリケーションをサポートするメッセージ指向情報交換を含む。
【0031】
一般に、SOAPメッセージは、2つのデータ構造、SOAPヘッダ、及びSOAPボディを含むSOAPエンベロープ、並びにそれらを定めるネーム空間についての情報を含む。ヘッダはオプションであり、存在するとき、ヘッダはSOAPボディで定められた要求についての情報を運ぶ。例えば、ヘッダは、トランザクション情報、セキュリティ情報、文脈情報、又はユーザ・プロファイル情報を含む。ボディはウェブ・サービス要求を含むか、又は要求にXML形式で応答する。SOAPメッセージの高レベル構造が、以下の図に示される。
【0032】
(ウェブ・サービス要求、及び応答を運ぶために使用されるとき)SOAPメッセージは、利用可能なウェブ・サービスのウェブ・サービス記述言語(WSDL)に従う。WSDLは、ウェブ・サービスにアクセスするために使用されるSOAPメッセージ、その種のSOAPメッセージが交換されるプロトコル、及びこれらのウェブ・サービスがアクセスされるインターネット・ロケーションを記述できる。WSDL記述子はUDDI、又は他のディレクトリ・サービスに存在でき、また機器構成、又は他の手段(例えば、SOAP要求応答のボディで)を介して提供できる。
【0033】
要求及び応答を符号化するための標準的な方法を提供するSOAP規格書(例えば、 http://www.w3.org で見出されるw3 SOAP規格書)が存在する。SOAP規格書は、メッセージ・ペイロードの構造及びデータ型をXMLスキーマを使用して記述する。SOAPがウェブ・サービスのメッセージ及び応答に対して使用される方法は以下のようである。
【0034】
SOAPクライアントが、SOAP規格書に従いサービスに対する要求を含むXMLドキュメントを使用する。
【0035】
SOAPクライアントがドキュメントをSOAPサーバへ送信し、サーバで実行中のSOAPサーブレットがドキュメントを、例えば、HTTP又はHTTPSを使用して処理する。
【0036】
ウェブ・サービスがSOAPメッセージを受信し、メッセージをサービス呼出しとして要求されたサービスを提供するアプリケーションへ発送する。
【0037】
サービスからの応答がSOAPサーバへ(SOAPプロトコルを再び使用して)戻され、このメッセージが送信元SOAPクライアントへ戻される。
【0038】
SOAPは本発明の装置及び方法のための通信プロトコルとして記載されているが、その種の記述は本発明の装置及び方法の単なる例示であり、種々の通信プロトコル及びメッセージ規格を利用できる。
[コンピューティング環境の例示]
【0039】
図1は、本発明のシステム及び方法による典型的なコンピューティング・システム100を示す。コンピューティング・システム100は、多様なオペレーティングシステム180、及びオペレーティングシステム180で動作可能なコンピューティング・アプリケーション180’(例えば、ウェブブラウザ、及びモバイル・デスクトップ環境)を実行できる。典型的なコンピューティング・システム100は、コンピュータ読み取り可能な命令によって主に制御され、コンピュータ読み取り可能な命令はソフトウェア(その種のソフトウェアが記憶されアクセスされる場所及び方法)の形態である。その種のソフトウェアは中央処理装置(CPU)110の内部で実行され、データ処理システム100を動作させる。多くの既知のコンピュータ・サーバ、ワークステーション、及びパーソナル・コンピュータでは、中央処理装置110は、マイクロプロセッサと呼ばれるマイクロ・エレクトロニクス・チップCPUによって実施される。コプロセッサ115は(主CPU110とは別の)オプションのプロセッサであり、追加の機能を実行するか、又はCPU110を補助する。CPU110は、コプロセッサ115に相互接続112を介して接続される。1つの一般的な型のコプロセッサは浮動小数点コプロセッサ(又は、数値演算コプロセッサ)であり、浮動小数点コプロセッサは数値計算を汎用CPU110よりも速く適切に実行するように設計される。
【0040】
図示されるコンピューティング環境は単一のCPU110を含むように示されるが、その種の記述は単なる例示であり、コンピューティング環境100は多数のCPU110を含んでもよい。加えて、コンピューティング環境100は、通信ネットワーク160、又は他のデータ通信手段(図示されない)を介してリモートCPU(図示されない)のリソースを活用する。
【0041】
オペレーションでは、CPU110が命令をフェッチ、デコード、及び実行し、他のリソースへ/からコンピュータの主データ転送経路(システム・バス105)を介して情報を転送する。その種のシステム・バスは、構成要素をコンピューティング・システム100の中で接続し、データ交換のための媒体を定める。一般に、システム・バス105は、データを送信するためのデータ・ライン、アドレスを送信するためのアドレス・ライン、及び割り込みを送信してシステム・バスを動作させるための制御ラインを含む。その種のシステム・バスの実施例は、PCI(Peripheral Component Interconnect)バスである。今日の進歩したバスの中には、拡張カード、制御装置、及びCPU110によってバスへのアクセスを統制するバス裁定と呼ばれる機能を提供するものもある。これらのバスに付属し、調停してバスを占有する装置は、バスマスタと呼ばれる。また、バスマスタ・サポートは、マルチプロセッサ形態のバスが、プロセッサ及びサポート・チップを含むバスマスタ・アダプタの追加によって創出されることを可能にする。
【0042】
システム・バス105に結合されたメモリ装置は、ランダム・アクセス・メモリ(RAM)125、及び読出し専用メモリ(ROM)130を含む。その種のメモリは、情報が記憶されて検索されることを可能にする回路を含む。一般に、ROM130は、修正できない記憶データを含む。RAM125に記憶されたデータは、CPU110(又は、他のハードウェア装置)によって読み出し(又は、変更)可能である。RAM125及び/又はROM130へのアクセスは、メモリ制御装置120によって制御される。メモリ制御装置120は、命令が実行されるときに仮想アドレスを物理アドレスに変換するアドレス変換機能を提供する。また、メモリ制御装置120は、システム内部の複数プロセスを隔離し、システム・プロセスをユーザ・プロセスから隔離するメモリ保護機能を提供する。従って、通常は、ユーザ・モードで実行中のプログラムは、自らのプロセス仮想アドレス空間によってマッピングされたメモリのみにアクセスでき、プロセス間で共用するメモリが設定されるまで他のプロセスの仮想アドレス空間の内部のメモリにアクセスできない。
【0043】
加えて、コンピューティング・システム100は、CPU110から周辺機器(例えば、プリンタ140、キーボード145、マウス150、及びデータ記憶ドライブ155)への命令伝達を担当する周辺機器制御装置135を含む。
【0044】
(ディスプレイ制御装置163によって制御される)ディスプレイ165は、コンピューティング・システム100によって生成された可視出力を表示するために使用される。その種の可視出力は、テキスト、グラフィックス、動画、及びビデオを含む。ディスプレイ165は、CRTに基づくビデオ・ディスプレイ、LCDに基づくフラット・パネル・ディスプレイ、ガス・プラズマに基づくフラット・パネル・ディスプレイ、タッチ・パネル、又は他のディスプレイ形態を用いて実施される。ディスプレイ制御装置163は、ディスプレイ165へ送信されるビデオ信号を生成するために必要な電子構成要素を含む。
【0045】
更に、コンピューティング・システム100は、コンピューティング・システム100を外部通信ネットワーク160に接続するために使用されるネットワーク・アダプタ170を含む。通信ネットワーク160は、コンピュータ・ユーザにソフトウェア及び情報を電子的に伝達及び転送する手段を提供する。加えて、通信ネットワーク160は分散処理を提供し、分散処理は、複数のコンピュータ、及び作業負荷の分担(又は、作業の実行における協調的努力)を含む。図示されるネットワーク接続は典型的であり、コンピュータの間に通信リンクを確立する他の手段も使用してよい。
【0046】
典型的なコンピュータ・システム100は、本発明の装置及び方法が動作するコンピューティング環境の単なる例示であり、本明細書の記載と異なる構成要素及び機器構成を有するコンピューティング環境における本発明の装置及び方法の実施例が、種々の構成要素及び機器構成を有する種々のコンピューティング環境で実施されることを制限しない。
[コンピュータ・ネットワーク環境の例示]
【0047】
上記のコンピューティング・システム100は、コンピュータ・ネットワークの一部として展開できる。一般に、コンピューティング環境に対する上の記述は、ネットワーク環境の中で展開されたサーバ・コンピュータ及びクライアント・コンピュータの両方に適用される。図2は(クライアント・コンピュータと通信ネットワークを介して通信するサーバを有する)典型的なネットワーク化されたコンピューティング環境200を示し、コンピューティング環境200では、本発明の装置及び方法が利用される。図2に示されるように、サーバ205は、(有線又は無線LAN、WAN、イントラネット、エクストラネット、ピア・トゥ・ピア・ネットワーク、インターネット、又は他の通信ネットワークの何れか1つ、又は組み合わせである)通信ネットワーク160を介して、多数のクライアント・コンピューティング環境(例えば、タブレット・パーソナル・コンピュータ210、携帯電話215、電話220、パーソナル・コンピュータ100、及び携帯情報端末225)と相互接続する。加えて、本発明の装置及び方法は、自動車コンピューティング環境(図示されない)、消費者コンピューティング環境(図示されない)、及びビル自動制御コンピューティング環境(図示されない)と通信ネットワーク160を介して協働する。例えば、通信ネットワーク160がインターネットであるネットワーク環境では、サーバ205は、多数の既知のプロトコル(例えば、ハイパーテキスト転送プロトコル(HTTP)、ファイル転送プロトコル(FTP)、シンプル・オブジェクト・アクセス・プロトコル(SOAP)、又は無線アプリケーション・プロトコル(WAP))を介した、クライアント・コンピューティング環境100,210,215,220,225とのウェブ・サービスの処理及び相互通信のために動作可能な専用のコンピューティング環境サーバでもよい。各クライアント・コンピューティング環境100,210,215,220,225は、1又は複数のコンピューティング・アプリケーション(例えば、ウェブブラウザ(図示されない)、又はサーバ・コンピューティング環境205へのアクセスを得るためのモバイル・デスクトップ環境(図示されない))をサポートするために動作可能なブラウザ・オペレーティングシステム180を備える。
【0048】
オペレーションでは、ユーザ(図示されない)は、クライアント・コンピューティング環境で実行中のコンピューティング・アプリケーションと対話して、所望するデータ及び/又はコンピューティング・アプリケーションを得る。データ及び/又はコンピューティング・アプリケーションはサーバ・コンピューティング環境205に記憶され、協働するユーザとクライアント・コンピューティング環境100,210,215,220,225を通して、典型的な通信ネットワーク160によって通信する。参加ユーザは、全体または一部がサーバ・コンピューティング環境205にウェブ・サービス・トランザクションを使用して収納された特定のデータ及びアプリケーションへのアクセスを要求する。これらのウェブ・サービス・トランザクションは、クライアント・コンピューティング環境100,210,215,220,220と処理及び記憶のためのサーバ・コンピューティング環境の間で伝達される。サーバ・コンピューティング環境205は、ウェブ・サービスの生成、認証、暗号化、及び通信のためのコンピューティング・アプリケーション、プロセス、及びアプレットを収容し、他のサーバ・コンピューティング環境(図示されない)、サード・パーティ・サービス・プロバイダ(図示されない)、ネットワーク結合記憶装置(NAS)、及び記憶領域ネットワーク(SAN)と協働してその種のウェブ・サービス・トランザクションを実現する。
【0049】
従って、本発明の装置及び方法は、ネットワークにアクセスして対話するためのクライアント・コンピューティング環境、及びクライアント・コンピューティング環境と対話するためのサーバ・コンピューティング環境を有するコンピュータ・ネットワーク環境で利用できる。しかし、可動性装置プラットフォームを提供する装置及び方法は、多様なネットワークに基づくアーキテクチャを用いて実施でき、従って、例示された実施例に限定されない。本発明の装置及び方法が、実施例を参照して更に詳細に記述される。
[可動性装置プラットフォーム構成要素]
【0050】
図3は、典型的な可動性装置と図示される可動性装置プラットフォームの間の典型的な対話を示す。一般に、図3で示されるように、典型的な可動性装置プラットフォーム300は、簡単には、選択された通信プロトコル(図示されない)で動作する通信インターフェース305を使用してクライアント・コンピューティング環境100と協働する可動性装置310を含む。加えて、典型的な可動性装置プラットフォーム300は、(図1の)通信ネットワーク160、及びサーバ・コンピューティング環境205を更に含む。
【0051】
オペレーションでは、可動性装置は、クライアント・コンピューティング環境100と通信インターフェース305を通して協働し、可動性装置310から起動して、ユーザとの対話のためにクライアント・コンピューティング環境100で表示可能な1又は複数のコンピューティング・アプリケーション180’を実行する。コンピューティング・アプリケーション180’は、(限定されないが)従来のオペレーティングシステムのルック・アンド・フィールを提供するブラウザ・アプリケーション、ワープロ・アプリケーション、表計算、データベース・アプリケーション、ウェブ・サービス・アプリケーション、及びユーザ管理/選択アプリケーションを含む。加えて、可動性装置310は、サーバ・コンピューティング環境205とクライアント・コンピューティング環境100を使用する通信ネットワーク160を介して協働し、データ及び/又はコンピューティング・アプリケーションをウェブ・サービスの形態で得る。
【0052】
図4は、典型的な可動性装置405の図示される可動性装置プラットフォーム400との相互作用を示す。図4に示されるように、典型的な可動性装置プラットフォーム400は、可動性装置(MD)405、コンピューティング環境410、通信ネットワーク435、可動性装置管理サーバ(MDMS)420、及びサード・パーティ・ウェブ・サービス・プロバイダ440を含む。加えて、MD組立分解図に更に示されるように、MD405は、処理装置(PU)、オペレーティングシステム(OS)、記憶メモリ(RAM/ROM)、及びMD通信インターフェースを更に含む。また、MDMS420は、変換エンジン425、ウェブ・サービス430、及び暗号化エンジン445を更に含む。
【0053】
オペレーションでは、MD405は、コンピューティング環境415と、1又は複数のMD構成要素PU,OS,RAM/ROM、及びMD通信インターフェースを使用して、MD/コンピューティング環境通信インターフェース410を通して通信する。コンピューティング環境415と通信するとき、MD405は、(限定されないが)モバイル・デスクトップ環境、ユーザ・カスタマイズ及び認証管理プログラム、及びウェブ・サービス・アプリケーションを構成の一部として含む1又は複数のコンピューティング・アプリケーション(図示されない)を起動する。いったん形成されたら、MD405はコンピューティング環境415と更に協働して、1又は複数のウェブ・サービス(例えば、ウェブ・サービス・データ、及び/又はコンピューティング・アプリケーション)を処理する。その様な状況で、MD405はまた、ウェブ・サービス・データ及び/又はコンピューティング・アプリケーションに、協働MDMS420から通信ネットワーク435を使用して、その種のウェブ・サービスを処理することを要求する。その種の実施例では、MDMS420は、MD405を認証して、参加ユーザ(図示されない)及び可動性装置405が正しい特権を要求されたデータ及び/又はコンピューティング・アプリケーションに対して有することを保証するために動作する。
【0054】
もし適切に認証されたら、MDMS420は、要求されたデータ及び/又はコンピューティング・アプリケーションを局所的にMDMS420に配置し、その種の要求されたデータ及び/又はコンピューティング・アプリケーション(例えば、ウェブ・サービス)を提供してMD405を通信ネットワーク435によって認証するために更に動作するか、又はサード・パーティ・サービス・プロバイダ440と協働して、要求されたウェブ・サービスを、認証されたMD405に対する通信に対して得るために動作する。サード・パーティ・ウェブ・サービス・プロバイダ440と協働するとき、MDMS420は、サード・パーティ・ウェブ・サービス・プロバイダ440から起動するウェブ・サービス430を、MD固有の形式に変換エンジン425を使用して変換するために動作する。加えて、認証されたMD405からのウェブ・サービスに対する要求が満足されるとき、MDMS420は、要求されたウェブ・サービスを、暗号化エンジン445を使用して暗号化するために動作する。
【0055】
加えて、MDMS420は、選択された暗号化プロトコル(例えば、PKI暗号化)を使用してファイル・システム(図示されない)と更に協働し、MD405への通信のために要求されたデータを得る。協働するファイル・システムは、(限定されないが)ファイル・アロケーション・テーブル(FAT)ファイル・システム、及び新技術のファイル・システム(NTFS)を含む。
【0056】
図5は、典型的なソフトウェア構成要素、及びそれらの典型的な可動性装置(MD)500に対する対話のブロック図である。図5に示されるように、典型的な可動性装置500は、可動性装置プレゼンテーションを、コンピューティング環境モジュール505、及び可動性装置オペレーティングシステム・モジュール510上に含む。MDプレゼンテーション・モジュール及びMDオペレーティングシステム・モジュールは、HTTP通信インターフェースを介して動作可能なように結合される。更に、MDプレゼンテーション・モジュール505は、アプリケーション・フレームワーク・サブモジュール515、アプリケーション・モデル520、デスクトップ環境525、及びアプリケーション530を含む。加えて、アプリケーション555、スキン560、及びテーマ565がMDプレゼンテーション・モジュールと協働して、協働するコンピューティング環境(図示されない)で1又は複数のプレゼンテーション(例えば、モバイル・デスクトップ環境)を創出するために使用されるデータを提供する。
【0057】
更に、MDオペレーティングシステム510は、Java(登録商標)バイトコード・ローダ535、ハイパーテキスト転送プロトコル(HTTP)サーバ540、シンプル・オブジェクト・アクセス・プロトコル(SOAP)サーバ545、及び標準ライブラリ550を含む。加えて、SOAPサービス570、Java(登録商標)サーバ・ページ(JSP)アプリケーション及びイメージ575、並びにライブラリ580は、データ及び機能をMDオペレーティングシステム510に提供し、可動性装置がウェブ・サービス(図示されない)処理して実行することを可能にする。
【0058】
オペレーションでは、可動性装置500はMDプレゼンテーション・モジュール505及びMDオペレーティングシステム・モジュール510を利用して、プレゼンテーション及び実行環境(例えば、モバイル・デスクトップ環境)を、協働するコンピューティング環境(図示されない)を用いて確立する。アプリケーション・フレームワーク515及びアプリケーション・モデル520は、可動性装置を通して協働するコンピューティング環境(図示されない)で動作するアプリケーションに対するパラメータ及び形状変数を提供するために動作する。デスクトップ530はモバイル・デスクトップ環境を提供して、ウェブ・サービス及び/又はコンピューティング・アプリケーションの実行を可能にする。アプリケーション530はアプリケーション・フレームワーク及びアプリケーション・モデルで働き、協働するコンピューティング環境で実行するための1又は複数のアプリケーションを可動性装置を通して提供する。追加データ・アプリケーション555は、協働するコンピューティング環境で可動性装置によって実行可能な追加アプリケーションである。スキン560及びテーマ565は、外観及び表示形状パラメータ、並びに可動性装置によって実行されるアプリケーション及びモバイル・デスクトップ環境のルック・アンド・フィールを参加ユーザがカスタマイズすることを可能にする設定を提供する。
【0059】
MDオペレーティングシステム・モジュール510は、可動性装置によってコンピューティング・アプリケーション及びウェブ・サービスが実行されるソフトウェア・アーキテクチャを提供するために動作する。Java(登録商標)バイトコード・ローダ535は、Java(登録商標)言語モジュールの処理を補助するために動作する。HTTPサーバ540は、HTTP通信サービスを可動性装置に提供するために動作する。SOAPサーバ545は、SOAPオペレーションを可動性装置に提供するために動作する。標準的なライブラリ550は、プログラミング言語(即ち、Java(登録商標))ライブラリを、種々のJava(登録商標)コードをコンパイルし実行するのに使用するために提供する。SOAPサービス570は、パラメータ及び形状値をMDオペレーティングシステム・モジュール510に提供して、SOAPトランザクション(例えば、ウェブ・サービス)を処理する。JSPアプリケーション及びイメージは、追加データをMDオペレーティングシステム・モジュールに提供して、Java(登録商標)サーバ・ページを処理する。ライブラリ580は、MDオペレーティングシステム・モジュール510が使用するための追加のプログラミング・ライブラリを提供して、コンピューティング・アプリケーションの実行及びウェブ・サービスの処理をサポートする。
【0060】
可動性装置が複数の協働するデータ、機能、及びオペレーションを受け入れて、ウェブ・サービスを処理し実行する補助ができることを図示するために、「mortis and tenon」配置を有するようにMDプレゼンテーション・モジュール505及びMDオペレーティングシステム・モジュール510の形が図示されていることを明記する。更に、これらのモジュール形は点線で囲まれ、その種のデータ、機能、及びオペレーションがモジュールの間で交換可能かつ移動可能であることを図示する。
【0061】
更に、可動性装置500は図示される形状、及び図示される構成要素を有するものとして図示されているが、その種の記載は種々の形状を有する種々の構成要素によって実現される本発明の装置及び方法の単なる例示であることを明記する。
【0062】
図6は、図示される可動性装置のための典型的なハードウェア・アーキテクチャのブロック図である。図示されるように、可動性装置600は、コンピューティング環境通信コネクタ605、通信インターフェース物理トランシーバ610、及び可動性装置コア615を含む。更に、可動性装置コア615は、通信インターフェース・コア620、処理装置プロセッサ625、RAM/ROM630、周辺機器インターフェース635、NANDフラッシュ640、及び暗号化モジュール645を含む。
【0063】
オペレーションでは、可動性装置600が、協働するコンピューティング環境(図示されない)とコンピューティング環境通信コネクタを通して通信する。物理的に接続されるので、可動性装置600は協働するコンピューティング環境(図示されない)との通信に従事して、1又は複数のオペレーションを協働するコンピューティング環境(図示されない)で制御する。その様な状況で、データは、可動性装置600と協働するコンピューティング環境(図示されない)の間で、通信インターフェース物理トランシーバ610を通して交換される。加えて、可動性装置は、データ、命令、サービス、及びオペレーションを、可動性装置コア615の通信インターフェース・コア620を通して処理する。通信インターフェース・コアにおいて、処理装置プロセッサ625は、RAM/ROM630、周辺機器インターフェース635、NANDフラッシュ640、及び暗号化モジュール645と協働して、協働するコンピューティング環境(図示されない)、又は協働するコンピューティング環境(図示されない)へ動作可能なように結合される協働する構成要素(例えば、協働する可動性装置管理サーバ)(図示されない)から起動するデータ、サービス、命令、及びオペレーションを処理する。
【0064】
図示される実施例では、周辺機器インターフェース635が動作して、1又は複数の周辺機器の(限定されないが)フラッシュメモリ、自動制御装置、通信モジュール、及び入力用周辺機器(例えば、マウス、キーボード)を含む可動性装置600への物理接続を可能にする。暗号化モジュール645は、可動性装置600の処理装置プロセッサ625によって使用されるためのデータ、サービス、命令、及びアプリケーションを暗号化及び復号化するために動作する。
【0065】
可動性装置600は図示される形状、及び図示される構成要素を有するものとして図示されているが、その種の記載は種々の形状を有する種々の構成要素によって実現される本発明の装置及び方法の単なる例示であることを明記する。
【0066】
図7は、図示される可動性装置、及び複数の作業領域のオペレーションを可能にする認証スタックのブロック図である。図示されるように、可動性装置700は、作業領域705,710,715,720,725,730を含む。このことを図示するために、作業領域は、独立したユーザ認証情報、可動性装置認証情報、及び検証情報で動作する可動性装置の内部の独立したユーザ環境と考えられる。例えば、可動性装置は複数の作業領域をサポートし、1つは企業アプリケーション及びデータのための作業領域であり、1つは参加ユーザの個人的なゲーム・アプリケーション及びデータのための作業領域であり、1つは参加ユーザの個人的な買い物アプリケーション及びデータのための作業領域である。サービス及びアプリケーションを個々の作業領域に提供する協働する構成要素(例えば、可動性装置管理サーバ)によって作業領域が認証されるように、これら各作業領域に対して、可動性装置は独立した認証情報を維持する。
【0067】
この状況では、図7は、それ自体が可動性装置に対するユーザ認証及び検証、作業領域(I)に対する暗号化キー、及び公開キー、並びに作業領域(I)に対する秘密キーを含む作業領域705を有する可動性装置700を示す。同様に、作業領域710は、可動性装置に対するユーザ認証情報、及び検証情報、並びに作業領域(II)に対する公開キー、及び秘密キーを有する。図7に示されるように、同様のユーザ認証、及び公開/秘密キー・アーキテクチャが、作業領域(III)715、作業領域(IV)720から作業領域(n)725、及び作業領域(n+1)730に対して存在する。オペレーションでは、可動性装置700は、彼(又は、彼女)がログインしてデータ、及びウェブ・サービスを処理する作業領域を参加ユーザ(図示されない)が選択することを可能にする。参加ユーザがログインする作業領域によって、1又は複数のユーザ認証/公開/秘密キー作業領域情報が使用される。
【0068】
図8は、典型的な可動性装置の作業領域を示すブロック図である。図8に示されるように、可動性装置805は、1又は複数の作業領域810,815を実行するために動作可能なオペレーティングシステム810をサポートする。協働するコンピューティング環境830が作業領域(I)820をディスプレイ835に表示するように、作業領域が協働するコンピューティング環境820,830,840に提供される。同様に、協働するコンピューティング環境840は作業領域(III)817をディスプレイ845に表示し、協働するコンピューティング環境820は作業領域(II)815をディスプレイ825に表示する。図示されるように、可動性装置805は、(点線によって示されるように)参加ユーザに作業領域のグラフ図を、特定の作業領域を起動するために回転できる立方体として提示する。オペレーションでは、作業領域は、立方体を所望する作業領域に回転することによって選択され、適切な認証情報(例えば、ユーザ名、及びパスワード)を提供することによって動作させられる。
【0069】
可動性装置は特定の形状(例えば、立方体)で提示される作業領域を有するものとして記載されているが、その種の記載は種々の形状を有する種々の構成要素によって実現される本発明の装置及び方法の単なる例示であることを明記する。
【0070】
図9は、ウェブ・サービスを処理して実行するように構成されたときに、典型的な可動性装置600によって実行される処理を示す。図示されるように、処理はブロック900で始まり、可動性装置と協働するコンピューティング環境の間で通信が行われていたか否かを決定するチェックが実行されるブロック905に進む。もしブロック905におけるチェックが、通信が行われていなかったことを示したら、処理はブロック900に戻り、そこから継続する。
【0071】
しかし、もしブロック905において、可動性装置と協働するコンピューティング環境の間で通信が行われていたと決定されたら、ユーザを認証するためにチェックが実行されるブロック910に処理は進む。もしブロック910におけるチェックが、ユーザは正常に認証されていなかったことを示したら、エラーが発生するブロック915に処理は進む。次に、チェックがブロック917において実行され、認証が再度試みられるか否かを決定する。もしブロック917において認証が再度試みられることが決定されたら、処理はブロック910に戻り、そこから継続する。しかし、もしブロック917において認証が再度試みられないことが決定されたら、処理はブロック920に進んで終了する。
【0072】
しかし、もしブロック910におけるチェックが、ユーザは認証されていたことを示したら、協働するコンピューティング環境での実行のためにモバイル・デスクトップ環境が起動されるブロック925に処理は進む。そこから、ブロック930において、可動性装置モバイル・デスクトップ環境への一体化のためのユーザ・カスタマイズ選択が、ユーザ認証情報を使用して検索される。次に、何れかの可動性装置モバイル・デスクトップ環境カスタマイズが変更されていたか否かを決定するためにチェックが実行されるブロック935に処理は進む。もしブロック935におけるチェックが、可動性装置デスクトップ環境設定に対する変更があったことを示したら、その種の変更が記憶されるブロック940に処理は進む。そこから、可動性装置がウェブ・サービスを要求しているか否かを決定するためにチェックが実行されるブロック945に処理は進む。もしブロック945におけるチェックが、ウェブ・サービスが実行されるべきであることを示したら、ウェブ・サービス要求が処理されるブロック960に処理は進み、ブロック965において実行される。そこから、処理はブロック945の入力に戻り、そこから継続する。
【0073】
しかし、もしブロック945におけるチェックが、ウェブ・サービス要求が存在しないことを示したら、可動性装置が協働するコンピューティング・プラットフォームから切り離されているか否かを決定するためにチェックが実行されるブロック950に処理は進む。もしブロック945におけるチェックが、可動性装置が協働するコンピューティング・プラットフォームから切り離されていたことを示したら、処理はブロック955において終了する。しかし、もしブロック950におけるチェックが、可動性装置が切り離されていないことを示したら、処理はブロック945の入力に戻り、そこから継続する。また、もしブロック935におけるチェックが、可動性装置デスクトップ環境設定に対する変更がなかったことを示したら、処理はブロック945の入力に戻り、そこから継続する。
【0074】
要約すると、本発明の装置及び方法は、可動性装置を提供する。しかし、本発明は、種々の変更、及び代替構造を受け入れる余地があることが分かる。本発明を本明細書に記載された特定の構造に限定する意図はない。逆に、本発明は、本発明の範囲内の全ての変更、代替構造、及び同等物をカバーする。
【0075】
また、本発明が(有線、及び無線コンピュータ環境の両方を含む)多様なコンピュータ環境、部分的コンピューティング環境、及び現実の環境で利用されることを明記する。本明細書に記載された種々の技術は、ハードウェア、ソフトウェア、又は両方の組合せで利用される。本発明の技術は、プロセッサ、(揮発性、及び非揮発性メモリ、及び/又は記憶装置要素を含む)プロセッサによって読み取り可能な記憶媒体、少なくとも1つの入力装置、及び少なくとも1つの出力装置を含むプログラム可能なコンピュータを維持するコンピューティング環境で実施されることが好ましい。種々の命令セットと協働するコンピューティング・ハードウェア論理回路がデータに適用され、上記機能を実行し出力情報を生成する。出力情報は、1又は複数の出力装置に適用される。典型的なコンピューティング・ハードウェアによって使用されるプログラムは、コンピュータ・システムと対話するための高レベル手続き言語、又はオブジェクト指向プログラミング言語を含む種々のプログラミング言語で実施されることが好ましい。もし所望するなら、図示された本発明の装置及び方法は、アセンブリ言語、又は機械語で実施される。何れにしても、言語はコンパイラ型言語、又はインタープリタ型言語である。その種の各コンピュータ・プログラムは、記憶媒体(又は、記憶装置)が上記手続きを実行するためにコンピュータによって読み取られるときにコンピュータを設定して動作させるための一般の(又は、特定目的の)プログラム可能なコンピュータによって読み取り可能な記憶媒体(又は、記憶装置)(例えば、ROM、又は磁気ディスク)に記憶されることが好ましい。また、本発明の装置は、コンピュータ・プログラムで構成されたコンピュータ読み取り可能な記憶媒体として実施されるとも考えられ、記憶媒体は、コンピュータを特定の予め定められた方法で動作させるように構成される。
【0076】
以上、本発明の好ましい実施例について図示し記載したが、特許請求の範囲によって定められる本発明の範囲から逸脱することなく種々の変形及び変更がなし得ることは、当業者には明らかであろう。
【図面の簡単な説明】
【0077】
図面を参照して、可動性装置プラットフォーム及び方法が更に記載される。
【図1】本発明の装置及び方法の実施例による典型的なコンピューティング環境のブロック図である。
【図2】本発明の装置及び方法による典型的なコンピューティング・ネットワーク環境のブロック図である。
【図3】本発明の装置及び方法による典型的なコンピューティング構成要素の間の対話を示すブロック図である。
【図4】本発明の装置及び方法による可動性装置プラットフォームの実施例のブロック図である。
【図5】本発明の装置及び方法による典型的な可動性装置のソフトウェア・アーキテクチャのブロック図である。
【図6】本発明の装置及び方法による典型的な可動性装置のハードウェア・アーキテクチャのブロック図である。
【図7】本発明の装置及び方法による典型的な可動性装置のためのユーザ及び装置認証スタックのブロック図である。
【図8】本発明の装置及び方法による典型的な可動性装置のための複数の作業領域の図示される実施例のブロック図である。
【図9】本発明の装置及び方法による典型的な可動性装置を構成するときに実行される処理の流れ図である。
【符号の説明】
【0078】
100 コンピューティング・システム
105 バス
110 中央処理装置(CPU)
112 相互接続
115 コプロセッサ
120 メモリ制御装置
125 ランダム・アクセス・メモリ(RAM)
130 読出し専用メモリ(ROM)
135 周辺機器制御装置
140 プリンタ
145 キーボード
150 マウス
155 データ記憶ドライブ
160,435,519 通信ネットワーク
163 ディスプレイ制御装置
165 ディスプレイ
170 ネットワーク・アダプタ
180,504 オペレーティングシステム
180’ コンピューティング・アプリケーション
200,410,415 コンピューティング環境
205 サーバ
210 タブレット・パーソナル・コンピュータ
215 携帯電話
220 電話
225 携帯情報端末
300,400 可動性装置プラットフォーム
305 通信インターフェース
310,405,500,600,700 可動性装置(MD)
420 可動性装置管理サーバ(MDMS)
425 変換エンジン
430 ウェブ・サービス
440 サード・パーティ・ウェブ・サービス・プロバイダ
445 暗号化エンジン
505 MDプレゼンテーション・モジュール
510 MDオペレーティングシステム・モジュール
515 アプリケーション・フレームワーク
520 アプリケーション・モデル
525 デスクトップ環境
530 アプリケーション
535 Javaバイトコード・ローダ
540 HTTPサーバ
545 SOAPサーバ
550 標準ライブラリ
555 アプリケーション
560 スキン
565 テーマ
570 SOAPサービス
575 Javaサーバ・ページ(JSP)アプリケーション・イメージ
580 ライブラリ
605 コンピューティング環境通信コネクタ
610 通信インターフェース物理トランシーバ
615 可動性装置コア
620 通信インターフェース・コア
625 処理装置プロセッサ
630 RAM/ROM
635 周辺機器インターフェース
640 NANDフラッシュ
645 暗号化モジュール
705,710,715,720,725,730 作業領域

【特許請求の範囲】
【請求項1】
ウェブ・サービスを処理するための可動性装置であって、
少なくとも1つのウェブ・サービスを実行するために動作する処理装置、
前記可動性装置を少なくとも1つの協働するコンピューティング環境に接続する通信インターフェース、
前記処理装置と協働して、ウェブ・サービス・データ、及びトランザクション情報を記憶するメモリ記憶装置ユニット、並びに
少なくとも1つの暗号化されたウェブ・サービスを実行するために前記処理装置で動作可能なオペレーティングシステムを含むことを特徴とする可動性装置。
【請求項2】
フラッシュメモリ、通信インターフェース、自動制御装置、及び入力用周辺機器の何れかを含む周辺機器を受け入れて協働するために動作する周辺機器インターフェース・モジュールを更に含むことを特徴とする、請求項1に記載の可動性装置。
【請求項3】
前記処理装置に結合され、ウェブ・サービス処理の一部として利用されるNANDフラッシュメモリを更に含むことを特徴とする、請求項1に記載の可動性装置。
【請求項4】
前記可動性装置が前記少なくとも1つの協働するコンピューティング環境と通信するときに、前記少なくとも1つの協働するコンピューティング環境にデスクトップ・コンピューティング環境を提供するために動作可能なモバイル・デスクトップ・コンピューティング・アプリケーションを更に含むことを特徴とする、請求項1に記載の可動性装置。
【請求項5】
前記可動性装置に対する参加ユーザの選択、及び設定をカスタマイズするために動作可能なユーザ管理モジュールを更に含むことを特徴とする、請求項4に記載の可動性装置。
【請求項6】
可動性装置が自動化された機器構成、及び前記少なくとも1つのコンピューティング環境との協働を開始することを可能にする前記オペレーティングシステムを用いて動作する自動実行モジュールを更に含むことを特徴とする、請求項1に記載の可動性装置。
【請求項7】
前記少なくとも1つのコンピューティング環境が、前記少なくとも1つのコンピューティング環境に固有のオペレーティングシステムを含むことを特徴とする、請求項6に記載の可動性装置。
【請求項8】
前記可動性装置の前記オペレーティングシステムが、前記少なくとも1つのコンピューティング環境に固有の前記オペレーティングシステムを制御することを特徴とする、請求項7に記載の可動性装置。
【請求項9】
ユーザ認証情報を使用して参加ユーザを認証するために動作するユーザ認証及び管理モジュールを更に含むことを特徴とする、請求項8に記載の可動性装置。
【請求項10】
前記ユーザ認証情報が、ユーザ識別情報、及びユーザ・パスワード情報の何れかを含むことを特徴とする、請求項9に記載の可動性装置。
【請求項11】
前記可動性装置を、協働する可動性装置管理サーバを用いて認証するために動作する可動性装置プラットフォーム認証及び検証モジュールを更に含むことを特徴とする、請求項1に記載の可動性装置。
【請求項12】
前記可動性装置が前記可動性装置管理サーバと協働して、ウェブ・サービスを得ることを特徴とする、請求項11に記載の可動性装置。
【請求項13】
前記可動性装置を認証すると直ぐに、前記可動性装置管理サーバがウェブ・サービスを前記可動性装置に提供することを特徴とする、請求項12に記載の可動性装置。
【請求項14】
ウェブ・サービスを処理するために前記処理装置と協働するコプロセッサを更に含むことを特徴とする、請求項1に記載の可動性装置。
【請求項15】
ウェブ・サービス・トランザクションを暗号化、及び復号化するために使用する暗号化モジュールを更に含むことを特徴とする、請求項14に記載の可動性装置。
【請求項16】
前記オペレーティングシステムが、種々のコンピューティング・アプリケーションを実行するために動作可能なJava仮想マシン(JVM)を更に含むことを特徴とする、請求項1に記載の可動性装置。
【請求項17】
前記コンピューティング・アプリケーションが、電子メール・コンピューティング・アプリケーション、ワープロ・コンピューティング・アプリケーション、ブラウザ・コンピューティング・アプリケーション、モバイル・デスクトップ環境、表計算・コンピューティング・アプリケーション、及びウェブ・サービスとして提供される他のコンピューティング・アプリケーションの何れかを含むことを特徴とする、請求項16に記載の可動性装置。
【請求項18】
前記可動性装置で複数の作業領域を動作させることを可能にするために動作する作業領域モジュールを更に含むことを特徴とする、請求項17に記載の可動性装置。
【請求項19】
前記作業領域モジュールが、可動性装置認証情報を使用して各作業領域へのアクセスを制御するために動作することを特徴とする、請求項18に記載の可動性装置。
【請求項20】
各作業領域に対する構成情報が、前記メモリ記憶装置ユニットに記憶されることを特徴とする、請求項19に記載の可動性装置。
【請求項21】
ネットワーク化されたコンピューティング環境を介してウェブ・サービスと安全に通信するための方法であって、
ウェブ・サービスを処理するために動作可能な可動性装置を提供し、
前記可動性装置と協働する可動性装置管理サーバの間に通信リンクを介して通信を確立し、及び
前記可動性装置管理サーバによって提供された暗号化されたウェブ・サービスを、前記可動性装置において実行する諸ステップを含むことを特徴とする方法。
【請求項22】
前記可動性装置を前記可動性装置管理サーバによって認証し、前記可動性装置が適切なアクセス権、及び前記可動性装置管理サーバによって提供された要求されたウェブ・サービスを受信する特権を有することを保証するステップを更に含むことを特徴とする、請求項21に記載の方法。
【請求項23】
前記可動性装置管理サーバから認証された可動性装置に、要求されたウェブ・サービスを伝達するステップを更に含むことを特徴とする、請求項22に記載の方法。
【請求項24】
前記可動性装置と協働するコンピューティング環境の間に通信リンクを確立するステップを更に含むことを特徴とする、請求項21に記載の方法。
【請求項25】
協働するコンピューティング環境でウェブ・サービスを安全に実行するためのシステムであって、
ウェブ・サービス、及び関連するウェブ・サービス・トランザクション・データを処理するための第1手段、
ウェブ・サービス、及び関連するウェブ・サービス・トランザクション・データを記憶するための第2手段、並びに
前記第1手段、及び前記第2手段を協働するコンピューティング環境に接続するための第3手段を含むことを特徴とするシステム。
【請求項26】
前記システムを前記協働するコンピューティング環境を用いて認証するための第4手段を更に含むことを特徴とする、請求項25に記載のシステム。
【請求項27】
ウェブ・サービスを提供する可動性装置管理サーバと通信するための第5手段を更に含むことを特徴とする、請求項26に記載のシステム。
【請求項28】
前記第3手段を通して前記協働するコンピューティング環境でコンピューティング・アプリケーションを実行するための第6手段を更に含むことを特徴とする、請求項25に記載のシステム。
【請求項29】
協働するコンピューティング環境で動作させるために可動性装置を構成するための方法であって、
自動実行オペレーションを前記可動性装置で起動して、前記可動性装置が自らを自動的に構成して前記協働するコンピューティング環境に関連付けることを可能にし、
ユーザ認証情報を得て、
ユーザ認証情報を検証して、及び
正常にユーザ認証されると直ぐ、前記可動性装置が前記協働するコンピューティング環境と協働して、ウェブ・サービスを実行する諸ステップを含むことを特徴とする方法。
【請求項30】
前記協働するコンピューティング環境で、電子メール、ワープロ、表計算、ブラウザ、デスクトップ環境、及びユーザ管理アプリケーションの何れかを含むコンピューティング・アプリケーションを実行するステップを更に含むことを特徴とする、請求項29に記載の方法。
【請求項31】
ウェブ・サービス、及び関連するウェブ・サービス・トランザクションを前記可動性装置で記憶するステップを更に含むことを特徴とする、請求項30に記載の方法。
【請求項32】
コンピュータに以下の方法を実行するように指示するためのコンピュータ読み取り可能な命令を有するコンピュータ読み取り可能な媒体であって、前記方法が、
自動実行オペレーションを前記可動性装置で起動して、前記可動性装置が自らを自動的に構成して前記協働するコンピューティング環境に関連付けることを可能にし、
ユーザ認証情報を得て、
ユーザ認証情報を検証して、及び
正常にユーザ認証されると直ぐ、前記可動性装置が前記協働するコンピューティング環境と協働して、ウェブ・サービスを実行する諸ステップを含むことを特徴とする媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公表番号】特表2007−507768(P2007−507768A)
【公表日】平成19年3月29日(2007.3.29)
【国際特許分類】
【出願番号】特願2006−527963(P2006−527963)
【出願日】平成16年4月30日(2004.4.30)
【国際出願番号】PCT/US2004/013505
【国際公開番号】WO2005/036305
【国際公開日】平成17年4月21日(2005.4.21)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
【出願人】(506103762)レルム システムズ インコーポレイテッド (3)
【Fターム(参考)】