特許第5726208号(P5726208)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ トムソン ライセンシングの特許一覧

特許5726208ソフトウェアアプリケーションの実行のための方法、システム及び装置
<>
  • 特許5726208-ソフトウェアアプリケーションの実行のための方法、システム及び装置 図000002
  • 特許5726208-ソフトウェアアプリケーションの実行のための方法、システム及び装置 図000003
  • 特許5726208-ソフトウェアアプリケーションの実行のための方法、システム及び装置 図000004
  • 特許5726208-ソフトウェアアプリケーションの実行のための方法、システム及び装置 図000005
  • 特許5726208-ソフトウェアアプリケーションの実行のための方法、システム及び装置 図000006
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5726208
(24)【登録日】2015年4月10日
(45)【発行日】2015年5月27日
(54)【発明の名称】ソフトウェアアプリケーションの実行のための方法、システム及び装置
(51)【国際特許分類】
   G06F 9/445 20060101AFI20150507BHJP
【FI】
   G06F9/06 640A
【請求項の数】12
【全頁数】10
(21)【出願番号】特願2012-548455(P2012-548455)
(86)(22)【出願日】2011年1月17日
(65)【公表番号】特表2013-517551(P2013-517551A)
(43)【公表日】2013年5月16日
(86)【国際出願番号】EP2011050527
(87)【国際公開番号】WO2011086180
(87)【国際公開日】20110721
【審査請求日】2014年1月16日
(31)【優先権主張番号】10305054.8
(32)【優先日】2010年1月18日
(33)【優先権主張国】EP
(73)【特許権者】
【識別番号】501263810
【氏名又は名称】トムソン ライセンシング
【氏名又は名称原語表記】Thomson Licensing
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【弁理士】
【氏名又は名称】大貫 進介
(72)【発明者】
【氏名】マエス,イヴ
(72)【発明者】
【氏名】エリュアール,マルク
【審査官】 石川 亮
(56)【参考文献】
【文献】 特開2009−238155(JP,A)
【文献】 特開2003−122581(JP,A)
【文献】 特開2010−152878(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/445
(57)【特許請求の範囲】
【請求項1】
第1ソフトウェアアプリケーションを実行するよう構成される第1装置を有するシステムにおいて前記第1ソフトウェアアプリケーションをダウンロードする方法であって、
前記第1装置は、前記第1ソフトウェアアプリケーションの識別子を格納する第2装置に接続され、
当該方法は、前記第2装置において、
前記第1装置の第1コンフィギュレーション情報を取得するステップと、
サーバへの送信のため、前記識別子と前記第1コンフィギュレーション情報とを前記第1装置に送信するステップと、
前記識別子と前記第1コンフィギュレーション情報とに対応する前記ソフトウェアアプリケーションを前記サーバから受信するステップと、
前記ソフトウェアアプリケーションを前記第1装置に転送するステップと、
を有する方法。
【請求項2】
前記転送するステップの前に、前記第1装置の第2コンフィギュレーション情報が前記第1コンフィギュレーション情報に一致するか検証するステップをさらに有し、
前記転送するステップは、肯定的な検証の場合にのみ実行される、請求項1記載の方法。
【請求項3】
前記第2コンフィギュレーション情報は、前記第1装置から受信される、請求項2記載の方法。
【請求項4】
前記第1コンフィギュレーション情報は、
コンフィギュレーション選択アプリケーションを前記第1装置に転送し、
前記第1装置の第1コンフィギュレーション情報を生成するため、前記コンフィギュレーション選択アプリケーションを実行した前記第1装置から前記第1コンフィギュレーション情報を受信する、
ことによって取得される、請求項1記載の方法。
【請求項5】
前記第1コンフィギュレーション情報と前記ソフトウェアアプリケーションとを格納するステップをさらに有する、請求項1記載の方法。
【請求項6】
前記サーバとの接続のための接続データを前記第1装置に送信するステップをさらに有する、請求項1記載の方法。
【請求項7】
第1ソフトウェアアプリケーションを実行するためのシステムにおける第1装置であって、
前記システムはさらに、前記第1ソフトウェアアプリケーションを実行するよう構成される第2装置を有し、
当該第1装置は、前記第2装置に接続され、
当該第1装置は、
前記第1ソフトウェアアプリケーションの識別子を格納するメモリと、
プロセッサと、
を有し、
前記プロセッサは、
前記第2装置の第1コンフィギュレーション情報を取得し、
サーバへの送信のため、前記識別子と前記第1コンフィギュレーション情報とを前記第2装置に送信し、
前記識別子と前記第1コンフィギュレーション情報とに対応する前記第1ソフトウェアアプリケーションを前記サーバから受信し、
前記第1ソフトウェアアプリケーションを前記第2装置に転送する、
よう構成される第1装置。
【請求項8】
前記プロセッサはさらに、前記第2装置の第2コンフィギュレーション情報が前記第1コンフィギュレーション情報に一致していることを検証するよう構成され、
前記転送は、肯定的な検証の場合にのみ実行される、請求項7記載の第1装置。
【請求項9】
前記プロセッサはさらに、前記第2装置から前記第2コンフィギュレーション情報を受信するよう構成される、請求項8記載の第1装置。
【請求項10】
前記プロセッサは、
前記第2装置にコンフィギュレーション選択アプリケーションを転送し、
前記第2装置の第1コンフィギュレーション情報を生成するため、前記コンフィギュレーション選択アプリケーションを実行した前記第2装置から前記第1コンフィギュレーション情報を受信する、
ことによって前記第1コンフィギュレーション情報を取得するよう構成される、請求項7記載の第1装置。
【請求項11】
前記メモリはさらに、前記第1コンフィギュレーション情報と前記ソフトウェアアプリケーションとを格納するためのものである、請求項7記載の第1装置。
【請求項12】
前記プロセッサはさらに、前記サーバとの接続のための接続データを前記第2装置に送信するよう構成される、請求項7記載の第1装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般にソフトウェアに関し、特にソフトウェアの配信に関する。
【背景技術】
【0002】
本セクションは、以下に開示及び/又は請求される本発明の各種態様に関する各種技術態様を読者に紹介することを意図する。本開示は、本発明の各種態様のより良い理解を実現するため、読者に背景情報を提供するのに役立つと信じられる。従って、これらの説明はこの観点で参照されるべきものであり、従来技術の自認として参照されるべきでないことが理解されるべきである。
【0003】
もちろん、通常はユーザに所望のバージョンを選択させ(オペレーティングシステムに依存して)、DVD、USBキーなどからソフトウェアをダウンロード又はインストールすることに基づき、ソフトウェアを配信する多数の既存の方法がある。第1の変形は、正確なソフトウェアイメージをターゲットコンピュータにダウンロードすることであるが、これは、ターゲットコンピュータのコンフィギュレーションとソフトウェアイメージが意図されるコンフィギュレーションとの間の最も些細な相違がある場合に問題を生じさせる。第2の変形は、ユーザがターゲットコンピュータのコンフィギュレーションを手動により入力するか、又はインストレーションプログラムにこれを自動的に実行させるようユーザに要求するインストレーションプログラムを実行することである。この第2の変形は、ターゲットコンピュータに正確に一致するソフトウェアイメージを生じさせる。
【0004】
基本的なスキームに対する各種付加機能が、その本質を変更することなく、例えば、US2008/0046708、WO2008/154426、US2006/0218549、US2006/075486、US2008/250476などに提供される。
【0005】
これらの手段による欠点は、それらがあまりフレキシブルでないことである。従って、ソフトウェアインストレーションのためのよりフレキシブルな手段が必要とされることが理解できる。本発明は、このような手段を提供する。
【発明の概要】
【0006】
第1の態様では、本発明は、第1ソフトウェアアプリケーションを実行するよう構成される第1装置を有するシステムにおいて前記第1ソフトウェアアプリケーションをダウンロードする方法であって、前記第1装置は、前記第1ソフトウェアアプリケーションの識別子を格納する第2装置に接続される方法に関する。前記第2装置は、前記第1装置の第1コンフィギュレーション情報を取得し、サーバへの送信のため、前記識別子と前記第1コンフィギュレーション情報とを前記第1装置に送信し、前記識別子と前記第1コンフィギュレーション情報とに対応する前記ソフトウェアアプリケーションを前記サーバから受信し、前記ソフトウェアアプリケーションを前記第1装置に転送する。
【0007】
第1の好適な実施例では、第2装置は、前記転送するステップの前に、前記第1装置の第2コンフィギュレーション情報が前記第1コンフィギュレーション情報に一致するか検証し、肯定的な検証の場合にのみ、第1ソフトウェアアプリケーションは転送される。第2コンフィギュレーション情報が第1装置から受信されることは効果的である。
【0008】
第2の好適な実施例では、前記第1コンフィギュレーション情報は、コンフィギュレーション選択アプリケーションを前記第1装置に転送し、前記第1装置の第1コンフィギュレーション情報を生成するため、前記コンフィギュレーション選択アプリケーションを実行した前記第1装置から前記第1コンフィギュレーション情報を受信することによって取得される。
【0009】
第3の好適な実施例では、第2装置は、前記第1コンフィギュレーション情報と前記ソフトウェアアプリケーションとを格納する。
【0010】
第4の好適な実施例では、第2装置は、前記サーバとの接続のための接続データを前記第1装置に送信する。
【0011】
第2の態様では、本発明は、第1ソフトウェアアプリケーションを実行するためのシステムにおける第1装置に関する。前記システムはさらに、前記第1ソフトウェアアプリケーションを実行するよう構成される第2装置を有する。当該第1装置は、前記第2装置に接続される。当該第1装置は、前記第1ソフトウェアアプリケーションの識別子を格納するメモリと、前記第2装置の第1コンフィギュレーション情報を取得し、サーバへの送信のため、前記識別子と前記第1コンフィギュレーション情報とを前記第2装置に送信し、前記識別子と前記第1コンフィギュレーション情報とに対応する前記第1ソフトウェアアプリケーションを前記サーバから受信し、前記第1ソフトウェアアプリケーションを前記第2装置に転送するよう構成されるプロセッサとを有する。
【0012】
第1の好適な実施例では、前記プロセッサはさらに、当該第1装置の第2コンフィギュレーション情報が前記第1コンフィギュレーション情報に一致していることを検証するよう構成され、前記転送は、肯定的な検証の場合にのみ実行される。前記プロセッサはさらに、前記実行装置から前記第2コンフィギュレーション情報を受信するよう構成されることが効果的である。
【0013】
第2の好適な実施例では、前記プロセッサは、前記実行装置にコンフィギュレーション選択アプリケーションを転送し、前記実行装置の第1コンフィギュレーション情報を生成するため、前記コンフィギュレーション選択アプリケーションを実行した第2装置から前記第1コンフィギュレーション情報を受信することによって前記第1コンフィギュレーション情報を取得するよう構成される。
【0014】
第3の好適な実施例では、前記メモリはさらに、前記第1コンフィギュレーション情報と前記ソフトウェアアプリケーションとを格納するためのものである。
【0015】
第4の好適な実施例では、前記プロセッサはさらに、前記サーバとの接続のための接続データを第2装置に送信するよう構成される。
【図面の簡単な説明】
【0016】
本発明の好適な特徴が、添付した図面を参照して非限定的な具体例により説明される。
図1図1は、本発明の好適な実施例によるシステムを示す。
図2図2は、本発明の好適な実施例によるソフトウェア配信方法の主要なステップを説明するフローチャートを示す。
図3図3は、本発明の好適な実施例によるソフトウェア配信方法の主要なステップをより詳細に説明する。
図4図4は、本発明の好適な実施例によるソフトウェア配信方法の主要なステップをより詳細に説明する。
図5図5は、本発明の好適な実施例によるソフトウェア配信方法の主要なステップをより詳細に説明する。
【発明を実施するための形態】
【0017】
図1は、本発明を実現する一例となるシステム100を示す。システム100は、ターゲット110、自己最適化されたアプリケーションホルダ(移行、SAH)120及びアプリケーションサーバ130を有する。
【0018】
ターゲット110は、実際には、標準的なパーソナルコンピュータなど、計算を実行可能な何れかのタイプのコンピュータ又は装置とすることが可能である。ターゲット110は、プロセッサ111、RAMメモリ112、SAH120と通信するための第1インタフェース113、及びアプリケーションサーバ130と通信するための第2インタフェース114を有する。アプリケーションサーバ130との通信は、効果的にはインターネットを介し実行される。
【0019】
SAH120は、ターゲット110、プロセッサ121及び不揮発性メモリ123とのリリース可能な接続及び通信のためのインタフェース125を有する。プロセッサ121は、接続データ1211、アプリケーション1212のための識別子及びターゲット110のコンテクストを格納するよう構成される。接続データ1211は、サーバのアドレスと、好ましくは(相互)認証を許可するデータなどのアプリケーションサーバ130との接続を確立するのに必要な情報を有する。コンテクストは、ハードウェアコンフィギュレーション、ソフトウェアコンフィギュレーション又はハードウェア及びソフトウェアコンフィギュレーションに関する情報である。不揮発性メモリ123は、以下でさらに説明される、アプリケーションコード1231、コンテクスト選択アプリケーション1232及びアプリケーションランチャを格納するよう構成される。
【0020】
好適な実施例では、SAH120は、不揮発性メモリ123がフラッシュメモリであり、プロセッサ121は耐タンパ性プロセッサであり、インタフェース125はUSBインタフェースである(ターゲット110の第1インタフェース113はまたUSBインタフェースであることを当然に意味する)セキュアUSBキーとして実現される。
【0021】
アプリケーションサーバ130は、ターゲット110と通信可能な何れかのタイプの適切なサーバであってもよい。サーバ130は、単一のソフトウェアアプリケーション又は複数の異なるソフトウェアアプリケーションをホストするものであってもよい。
【0022】
本発明は、ユーザがアプリケーションを直接的には購入しない従来技術と異なる。その代わりに、ユーザは、アプリケーションのコードでなく、後述されるようなアプリケーションサーバからのダウンロードを可能にする汎用的なアプリケーション及び情報を格納する一意的なSAHを購入する。
【0023】
図2は、本発明の好適な実施例によるソフトウェア配信方法の4つの主要なステップを説明するフローチャートである。4つの各ステップが、以下でより詳細に説明される。まず、ステップ210において、特定のソフトウェアアプリケーションのSAHが生成される。この後、ステップ220において、通常はSAHがユーザにより購入されると、SAHが移転される。その後、ステップ230において、ソフトウェアアプリケーションがダウンロードされ、ステップ240において実行される。
【0024】
図3は、図2に示される方法のSAHの生成ステップ210を示す。図3のステップは、好ましくは、SAHの製造中に実行される。接続データ1211が、ステップ211において、プロセッサ121に格納される。通信データ1211は、サーバ130との通信に利用される。アプリケーション識別子1212がまた、ステップ212において、プロセッサ121に格納される。その後、ステップ213及び214において、コンテクスト選択アプリケーション1232及びアプリケーションランチャ1233がそれぞれ不揮発性メモリ123に格納される。これらのステップは、実際には何れかの順序により実行されてもよいことが理解される。
【0025】
ステップ220のSAH移転中、SAH120が、通常はある種の支払の交換でユーザに提供される。
【0026】
図4は、図2に示される方法のアプリケーションダウンロードステップ230を示す。このステップは、1)SAH120がアプリケーションコード1231を格納しない(図2に示されるケース)、2)パッチ、アップグレード、アドオンなどのアプリケーションコードの新たなバージョンが利用可能であり、3)例えば、ターゲットが変わらなかった場合、又はSAH120が異なるターゲットに接続された場合など、コンテクストが変わった、という3つのケースにより実行されてもよい。
【0027】
ステップ231において、SAH120は、接続データ1211を用いて、ターゲット110を介しサーバ130に接続する。SAH120は、当該アプリケーションを起動するターゲット110にコンテクスト選択アプリケーション1232を提供する。その後、ステップ232において、コンテクスト選択アプリケーション1232は、ターゲット110のコンテクストを自動検出するか、又はユーザがコンテクストを選択するよう要求する。当該コンテクストは、オペレーティングシステムやグラフィックカードの特性など、ターゲットの関連するハードウェア及びソフトウェアコンフィギュレーションである。これは、例えば、US2008/0046708に説明されるように、実行されてもよい。自動的なコンテクスト検出が便利であるが、ユーザによる手動の入力は、ユーザがSAH120が接続されるコンピュータと異なるターゲットのコンテクストを選択することを可能にする。その後、コンテクスト1213は、プロセッサ121にそれを格納するSAH120と、受信したコンテクストを用いて、存在する場合にソフトウェアアプリケーションの既存のバージョンを選択するか、又はターゲット110に対して最適化されるソフトウェアアプリケーションのバージョンを構築するサーバ130とに送信される。その後、このソフトウェアアプリケーション1231は、ステップ234において、それが不揮発性メモリ123に格納され、コンテクスト1213がプロセッサ121に格納されるSAH120に送信される。SAH120はまた、サーバ130からソフトウェアアプリケーションのバージョン識別子を受信する。このバージョン識別子は、例えば、実現形態に依存してなど、アプリケーション識別子1212又はコンテクスト1213のサブフィールドとして格納されるか、又はアプリケーションコード1231のヘッダなどに別に格納されてもよい。
【0028】
好適な実施例では、サーバ130に接続するため、SAH120はまた、認証を許可するデータを利用し、これは、サーバ130がSAH120の真正性を検証し、送信データのインテグリティ及び秘匿性を可能にする。
【0029】
SAHによりエラーが検出される場合、それは、ターゲットとの次の接続までに継続するエラー状態に入る。これは、方法のアトミシティを保証することである。当然ながら、他のエラー管理ポリシーがまた利用されてもよいが、それらは本発明の範囲外である。
【0030】
図5は、図2に示される方法のアプリケーション実行ステップ240を示す。このステップは、ステップ230の完了後に直接実行されてもよいし、又はアプリケーションコード1231を格納するSAH120がコンピュータに接続されると実行されるようにしてもよい。
【0031】
まず、アプリケーションランチャ1233が、ステップ241において、それが実行されるターゲット110に提供される。アプリケーションランチャ1233の主要なタスクは、ソフトウェアアプリケーション1231がターゲット110により実行されてもよいことを検証することである。その後、ステップ242において、アプリケーションランチャ1233がサーバ130との接続を有するか検証される。このようなケースでない場合、本方法は後述される互換性検証ステップ246に移動する。しかしながら、接続がある場合、アプリケーションランチャは、ステップ243において、アプリケーション識別子1212を用いて、SAH120に格納されるソフトウェアアプリケーション1231のバージョンが最新のバージョンであるか、すなわち、サーバにより提供されるバージョンが格納されているものと比較するとき変更されたか確認する。バージョンが同じである場合、すなわち、ダウンロードされるべき新たなものがない場合、本方法は、コンテクストが確認されるステップ244に移行する。当該ステップはまた、接続が存在しないことがステップ242において検出された場合に実行される。
【0032】
ステップ244において、コンテクストは、ターゲット110のコンテクスト(好ましくは、ステップ232と同様に自動計算される)がプロセッサ121に格納されているコンテクスト1213に一致するか(すなわち、コンテクストが同一であるか、又は実現形態に依存してターゲットのコンテクストが格納されているコンテクストと互換している場合)検証する。例えば、アプリケーションがプロセッサのファミリに特に適していることが可能であり、この場合、アプリケーションは、これらのプロセッサと互換的である。この場合、すなわち、コンテクストが一致する場合、ソフトウェアアプリケーションは、不揮発性メモリ123からアップロードされ、ステップ247において実行される。
【0033】
しかしながら、一致しない場合、コンテクストが変更されたか、又は互換的でない。これは、ターゲット110がハードウェア又はソフトウェアを変更した場合、又はSAH120がコンテクストが選択されたものと異なるコンピュータに接続される場合であってもよい。コンテクストが変更され、更新が正常であることをユーザに示すことが好適である。ユーザからの入力を受信すると、ステップ245において、本方法は2つの方向に移る。ユーザが更新を所望する場合、本方法はステップ230に移行し、必要なサブステップを実行する。しかしながら、ユーザがソフトウェアアプリケーションを更新することを所望しない場合、又はこのような更新がサーバとの接続の欠落などにより実行可能でない場合、ステップ246において、ソフトウェアアプリケーションのバージョンがコンテクストに矛盾しないか検証される。
【0034】
ソフトウェアのバージョンがコンテクストに矛盾しない場合、本方法は、ステップ247においてソフトウェアアプリケーションを実行する。他方、ソフトウェアバージョンがコンテクストに矛盾しない場合、これはユーザに示され、本方法は、ステップ248で終了する。
【0035】
好適な実施例では、SAH120は、WO2008/129009に説明される盗難防止機構を実現する。盗難防止機構は、2つの状態の1つでありうるRFIDチップを利用する。第1状態では、RFIDチップは、盗難防止ポータルとやりとり可能であり、さらに、RFIDチップは、それが付属されるサポートの完全な利用に必要な情報を提供することを拒絶する。RFIDチップは、サポートが購入されるとき、すなわち、状態変更装置と接触して置かれるとき、第2状態に移行する。第2状態では、RFIDはもはや盗難防止ポータルとやりとりし、必要な情報を提供する。盗難されたとしてもサポートが作用しないという効果がある。SAHに積要されとき、RFIDは、例えば、接続データ1211とアプリケーション識別子1212とをセキュアに格納可能であり、これらがない場合、SAHは、少なくとも理論的には作用しない。SAHの格納場所は、すなわち、プロセッサ又は不揮発性メモリにおいて好適な手段であるが、この場所は実現形態に応じて変更されてもよいことが理解される。また、本発明は従来技術の手段よりフレキシブルなソフトウェア配信方法を提供できることが理解される。
【0036】
明細書、請求項及び図面(適切である場合には)に開示される各特徴は、独立に又は何れか適切な組み合わせにより提供されてもよい。ハードウェアに実現されるよう開示される特徴はまた、ソフトウェアにより実現されてもよく、又はその反対であってもよい。請求項に記載される参照番号は、単なる例示であり、請求項の範囲に対する限定的な効果を有さない。
図1
図2
図3
図4
図5