(57)【要約】  少なくとも１つの通信リンクを介し付属の計算手段を有する少なくとも１つの対応するユーザインタフェースと結合される配信プロバイダを有する配信システムの１以上のソフトウェアアプリケーションを実行する方法が提供される。本方法は、（ａ）前記少なくとも１つのユーザインタフェースに係る少なくとも１人のユーザから、少なくとも１つの所望のソフトウェアアプリケーションを実行するための１以上のリクエストを受信するステップと、（ｂ）前記少なくとも１つの所望のソフトウェアアプリケーションが存在するか判断するため、前記少なくとも１つのユーザインタフェースに係るメモリをチェックするステップと、（ｃ）前記少なくとも１つのソフトウェアアプリケーションが前記メモリに既に格納され、検証されていると判明すると、前記少なくとも１つの所望のソフトウェアアプリケーションを前記メモリから前記少なくとも１つのユーザインタフェースに係る計算手段にロードし、その後に前記計算手段において前記ソフトウェアアプリケーションを実行するステップと、（ｄ）前記少なくとも１つのアプリケーションが前記メモリに格納されていないと判明すると、前記配信プロバイダから前記少なくとも１つの所望のソフトウェアアプリケーションを受信し、該少なくとも１つのアプリケーションを前記計算手段にロードし、該計算手段において前記少なくとも１つのアプリケーションを検証し、その後に、前記計算手段において検証されると、前記少なくとも１つのアプリケーションを実行するステップと、を有する。
2007528048.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つの通信リンクを介し付属の計算手段を有する少なくとも１つの対応するユーザインタフェースと結合される配信プロバイダを有する配信システムの１以上のソフトウェアアプリケーションを実行する方法であって、
（ａ）前記少なくとも１つのユーザインタフェースに係る少なくとも１人のユーザから、少なくとも１つの所望のソフトウェアアプリケーションを実行するための１以上のリクエストを受信するステップと、
（ｂ）前記少なくとも１つの所望のソフトウェアアプリケーションが存在するか判断するため、前記少なくとも１つのユーザインタフェースに係るメモリをチェックするステップと、
（ｃ）前記少なくとも１つのソフトウェアアプリケーションが前記メモリに既に格納され、検証されていると判明すると、前記少なくとも１つの所望のソフトウェアアプリケーションを前記メモリから前記少なくとも１つのユーザインタフェースに係る計算手段にロードし、その後に前記計算手段において前記ソフトウェアアプリケーションを実行するステップと、
（ｄ）前記少なくとも１つのアプリケーションが前記メモリに格納されていないと判明すると、前記配信プロバイダから前記少なくとも１つの所望のソフトウェアアプリケーションを受信し、該少なくとも１つのアプリケーションを前記計算手段にロードし、該計算手段において前記少なくとも１つのアプリケーションを検証し、その後に、前記計算手段において検証されると、前記少なくとも１つのアプリケーションを実行するステップと、
を有することを特徴とする方法。
【請求項２】
請求項１記載の方法であって、
前記ステップ（ｄ）において、前記少なくとも１つのソフトウェアアプリケーションは、検証されると、以降の可能性のある再利用のため前記メモリに格納されることを特徴とする方法。
【請求項３】
請求項２記載の方法であって、
各ユーザインタフェースには、ユーザリクエストされた頻度の低いソフトウェアアプリケーションをより最近にユーザリクエストされたソフトウェアアプリケーションにより上書きし、これにより、少なくとも１つのより頻度の高いユーザリクエストされたソフトウェアアプリケーションのためのメモリ容量の再利用を可能にするよう動作可能なメモリ管理手段が設けられることを特徴とする方法。
【請求項４】
請求項１記載の方法であって、
前記ステップ（ｂ）において、前記メモリに格納されている少なくとも１つの検証されたソフトウェアアプリケーションが、類似性をチェックするため、前記配信プロバイダから配信された少なくとも１つの対応するソフトウェアアプリケーションと比較され、
（ａ）前記メモリに格納されている少なくとも１つの検証されたアプリケーションが、前記少なくとも１つの格納及び検証されたアプリケーションと少なくとも１つの配信されたアプリケーションとの間の対応が特定されると、前記計算手段において実行され、
（ｂ）前記少なくとも１つの配信されたアプリケーションが有効性についてチェックされ、検証が成功すると前記メモリに格納され、その後に前記計算手段において実行され、
これにより、当該方法は、新規の対応する少なくとも１つのアプリケーションが前記配信プロバイダから配信されると、前記メモリに格納されている少なくとも１つのアプリケーションを更新するよう動作可能であることを特徴とする方法。
【請求項５】
請求項１記載の方法であって、
前記少なくとも１つのユーザインタフェース及び対応する少なくとも１つの通信リンクは、前記所望のソフトウェアアプリケーションに対する１以上のユーザリクエストを、該リクエストされた所望のアプリケーションを前記少なくとも１つのユーザインタフェースに配信するよう応答する前記配信プロバイダに伝えるよう動作可能であることを特徴とする方法。
【請求項６】
請求項１記載の方法であって、
前記配信プロバイダは、前記少なくとも１つのユーザインタフェースにおいて付属のメモリに選択的にロードするため繰り返しの時間的方法により、前記少なくとも１つの通信リンクを介し１以上のソフトウェアアプリケーションを配信するよう動作可能であることを特徴とする方法。
【請求項７】
請求項６記載の方法であって、
前記配信プロバイダは、擬似連続的方法により前記１以上のソフトウェアアプリケーションを配信するよう動作可能であることを特徴とする方法。
【請求項８】
請求項１記載の方法であって、
前記配信システムは、前記少なくとも１つのユーザインタフェースが付属の表示手段と結合された少なくとも１つのセットトップボックスと対応し、前記少なくとも１つの通信リンクが無線リンク、光ファイバリンク及び導電性有線通信リンクの少なくとも１つにより実現されるデジタルテレビ配信システムであることを特徴とする方法。
【請求項９】
請求項８記載の方法であって、
前記表示手段は、ブラウン管、画素プラズマディスプレイ、画素バックライト付液晶表示ディスプレイ及び画素プロジェクション液晶表示ディスプレイの少なくとも１つを有することを特徴とする方法。
【請求項１０】
請求項１記載の方法であって、
前記少なくとも１つの所望のソフトウェアアプリケーションは、前記少なくとも１つのユーザインタフェースにおいて前記少なくとも１人のユーザに提示された少なくとも１つのグラフィック表示シンボルの使用により選択されることを特徴とする方法。
【請求項１１】
請求項１０記載の方法であって、
前記少なくとも１つのグラフィックシンボルは、少なくとも１つのグラフィックアイコンとして実現されることを特徴とする方法。
【請求項１２】
請求項１記載の方法であって、
前記少なくとも１つのユーザインタフェースは、対応するグラフィックディスプレイが設けられた少なくとも１つのモバイル電話として実現されることを特徴とする方法。
【請求項１３】
請求項１記載の方法であって、
前記メモリは、電源オフにされたときデータを保持するよう動作可能な永久メモリとして実現されることを特徴とする方法。
【請求項１４】
請求項１３記載の方法であって、
前記メモリは、ソリッドステートメモリと磁気ディスクメモリの少なくとも１つを用いる不揮発性メモリとして実現されることを特徴とする方法。
【請求項１５】
請求項１記載の方法であって、
前記少なくとも１つのソフトウェアアプリケーションは、１以上のＪａｖａ  Ｘｌｅｔとして実現されることを特徴とする方法。
【請求項１６】
請求項１記載の方法であって、
前記ステップ（ｄ）において、ソフトウェアにより実現されるセキュリティマネージャによって検証が実行され、検証されたソフトウェアアプリケーションは、前記計算手段において与えられるソフトウェアにより実現されるバーチャルマシーン上で実行されることを特徴とする方法。
【請求項１７】
請求項１記載の方法であって、
前記検証された少なくとも１つのソフトウェアアプリケーションのダウンロード、検証及び前記メモリへの格納は、前記計算手段における連続する同時的なバックグラウンドアクションとして実行されることを特徴とする方法。
【請求項１８】
少なくとも１つの通信リンクを介し少なくとも１つの対応するユーザインタフェースと結合される配信プロバイダを有し、１以上のソフトウェアアプリケーションを実行する配信システムであって、
各ユーザインタフェースは、
（ａ）該ユーザインタフェースに係る少なくとも１人のユーザから、少なくとも１つの所望のソフトウェアアプリケーションを実行するための１以上のリクエストを受信するインタフェース手段と、
（ｂ）少なくとも１つのソフトウェアアプリケーションを格納するメモリと、
（ｃ）前記少なくとも１つの所望のソフトウェアアプリケーションが既に検証され、前記メモリに格納されているか判断し、前記１以上のソフトウェアアプリケーションが前記メモリに格納されていない場合、前記配信プロバイダから受信した１以上のソフトウェアアプリケーションを検証し、前記１以上のユーザリクエストに応答して、１以上の検証されたソフトウェアアプリケーションを実行し、前記少なくとも１人のユーザからの前記１以上のリクエストに対するより迅速な一時的応答を前記少なくとも１人のユーザに提供するため、前記メモリに格納されている１以上の検証されたソフトウェアアプリケーションが、前記配信プロバイダから受信可能な対応する１以上のソフトウェアアプリケーションの検証に優先して実行されるようにする計算手段と、
を有することを特徴とするシステム。
【請求項１９】
請求項１８記載のシステムであって、
前記計算手段は、以降の可能性のある再利用のため前記メモリにおいて検証されると、前記少なくとも１つのソフトウェアアプリケーションを格納するよう動作可能であることを特徴とするシステム。
【請求項２０】
請求項１９記載のシステムであって、
各ユーザインタフェースには、ユーザリクエストされた頻度の低いソフトウェアアプリケーションをより最近にユーザリクエストされたソフトウェアアプリケーションにより上書きし、これにより、少なくとも１つのより頻度の高いユーザリクエストされたソフトウェアアプリケーションのためのメモリ容量の再利用を可能にするよう動作可能なメモリ管理手段が設けられることを特徴とするシステム。
【請求項２１】
請求項１８記載のシステムであって、
前記計算手段は、類似性をチェックするため、前記メモリに格納されている少なくとも１つの検証されたソフトウェアアプリケーションと前記配信プロバイダから配信された少なくとも１つの対応するソフトウェアアプリケーションとを比較し、
（ａ）前記メモリに格納されている少なくとも１つの検証されたアプリケーションが、前記少なくとも１つの格納及び検証されたアプリケーションと少なくとも１つの配信されたアプリケーションとの間の対応が特定されると、前記計算手段において実行され、
（ｂ）前記少なくとも１つの配信されたアプリケーションが有効性についてチェックされ、検証が成功すると前記メモリに格納され、その後に前記計算手段において実行され、
これにより、前記計算手段は、新規の対応する少なくとも１つのアプリケーションが前記配信プロバイダから配信されると、前記メモリに格納されている少なくとも１つのアプリケーションを更新するよう動作可能であることを特徴とするシステム。
【請求項２２】
請求項１８記載のシステムであって、
前記少なくとも１つのユーザインタフェース及び対応する少なくとも１つの通信リンクは、前記所望のソフトウェアアプリケーションに対する１以上のユーザリクエストを、該リクエストされた所望のアプリケーションを前記少なくとも１つのユーザインタフェースに配信するよう応答する前記配信プロバイダに伝えるよう動作可能であることを特徴とするシステム。
【請求項２３】
請求項１８記載のシステムであって、
前記配信プロバイダは、前記少なくとも１つのユーザインタフェースにおいて付属のメモリに選択的にロードするため繰り返しの時間的方法により、前記少なくとも１つの通信リンクを介し１以上のソフトウェアアプリケーションを配信するよう動作可能であることを特徴とするシステム。
【請求項２４】
請求項２３記載のシステムであって、
前記配信プロバイダは、擬似連続的方法により前記１以上のソフトウェアアプリケーションを配信するよう動作可能であることを特徴とするシステム。
【請求項２５】
請求項１８記載のシステムであって、
当該配信システムは、前記少なくとも１つのユーザインタフェースが付属の表示手段と結合された少なくとも１つのセットトップボックスと対応し、前記少なくとも１つの通信リンクが無線リンク、光ファイバリンク及び導電性有線通信リンクの少なくとも１つにより実現されるデジタルテレビ配信システムであることを特徴とするシステム。
【請求項２６】
請求項２５記載のシステムであって、
前記表示手段は、ブラウン管、画素プラズマディスプレイ、画素バックライト付液晶表示ディスプレイ及び画素プロジェクション液晶表示ディスプレイの少なくとも１つを有することを特徴とするシステム。
【請求項２７】
請求項１８記載のシステムであって、
前記少なくとも１つの所望のソフトウェアアプリケーションは、前記少なくとも１つのユーザインタフェースにおいて前記少なくとも１人のユーザに提示された少なくとも１つのグラフィック表示シンボルの使用により選択可能であることを特徴とするシステム。
【請求項２８】
請求項２７記載のシステムであって、
前記少なくとも１つのグラフィックシンボルは、少なくとも１つのグラフィックアイコンとして実現されることを特徴とするシステム。
【請求項２９】
請求項１８記載のシステムであって、
前記少なくとも１つのユーザインタフェースは、対応するグラフィックディスプレイが設けられた少なくとも１つのモバイル電話として実現されることを特徴とするシステム。
【請求項３０】
請求項１８記載のシステムであって、
前記メモリは、電源オフにされたときデータを保持するよう動作可能な永久メモリとして実現されることを特徴とするシステム。
【請求項３１】
請求項３０記載のシステムであって、
前記メモリは、ソリッドステートメモリと磁気ディスクメモリの少なくとも１つを用いる不揮発性メモリとして実現されることを特徴とするシステム。
【請求項３２】
請求項１８記載のシステムであって、
前記少なくとも１つのソフトウェアアプリケーションは、１以上のＪａｖａ  Ｘｌｅｔとして実現されることを特徴とするシステム。
【請求項３３】
請求項１８記載のシステムであって、
前記計算手段は、ソフトウェアにより実現されるセキュリティマネージャによって検証を実行し、前記計算手段において与えられるソフトウェアにより実現されるバーチャルマシーンによって検証されたソフトウェアアプリケーションを実行するよう動作可能であることを特徴とするシステム。
【請求項３４】
請求項１８記載のシステムであって、
前記計算手段は、前記検証された少なくとも１つのソフトウェアアプリケーションのダウンロード、検証及び前記メモリへの格納を連続する同時的なバックグラウンドアクションとして実行するよう動作可能であることを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置におけるソフトウェアアプリケーションを実行する方法に関し、特に以下に限定されるものではないが、本発明は、Ｘｌｅｔとして知られているようなＪａｖａＴＭソフトウェアと共に実現されるソフトウェアアプリケーションを実行する方法に関する。このようなＸｌｅｔの実行は、家庭内環境におけるインタラクティブデジタルテレビ（ＤＴＶ）装置と共に使用されるのに適したセットトップボックス（ＳＴＢ）などのマルチメディアホームプラットフォーム（ＭＨＰ）などの装置における実行が可能である。さらに、本発明はまた、Ｘｌｅｔソフトウェアアプリケーションなどのソフトウェアアプリケーションの実行時に、上記方法を実現可能な装置に関する。
【背景技術】
【０００２】
「ＤＶＢ−ＭＨＰ／ＪａｖａＴＶＴＭ  Ｄａｔａ  Ｔｒａｎｓｐｏｒｔ  Ｍｅｃｈａｎｉｓｍ」というタイトルの論文が、Ｊ．Ｊｏｎｅｓによりオーストラリアのシドニーでの「４０ｔｈ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｔｅｃｈｎｏｌｏｇｙ  ａｎｄ  Ｏｂｊｅｃｔ−Ｏｒｉｅｎｔａｔｅｄ  Ｌａｎｇｕａｇｅｓ  ａｎｄ  Ｓｙｓｔｅｍｓ（ＴＯＯＬＳ  Ｐａｃｉｆｉｃ  ２００２）において発表された。この論文では、広範な技術的機会を提供することが可能なＪａｖａ  ＤＶＢ−ＭＰＨ規格が記載されている。このような規格の採用は、インタラクティブテレビなどに関してデジタルテレビの技術分野に特に関係するものである。３５カ国の３００以上の放送局、メーカー、ネットワーク運営者、ソフトウェア開発者、規制団体の産業主導型コンソーシアムが、現在デジタルテレビ及びデータサービスの提供のためグローバルな規格の設計に取り組んでいる。このような取り組みは、「ＤＶＢ」プロジェクトとの省略形により呼ばれている「デジタルビデオブロードキャスティングプロジェクト」として現在知られている。
【０００３】
ＤＶＢプロジェクトは、適切なソフトウェアアプリケーション環境言語としてＪａｖａＴＭ技術を指定している。ＪａｖａＴＭは、ハイレベルオブジェクト指向プログラミング言語である。使用において、Ｊａｖａソフトウェアソースは、バーチャルマシーンによる解釈のため、プラットフォームに独立なバイトコードに変換される。セットトップボックス（ＳＴＢ）にダウンロードされたソフトウェアアプリケーションは、典型的には、インタラクティブテレビ環境における使用に特に仕様されたアプリケーションプログラミングインタフェース（ＡＰＩ）から構成されるＪａｖａＴＭソフトウェアアプリケーションである。
【０００４】
当該規格の一部、すなわち、ＭＨＰ１．０．１は、音声及び映像サービスのデジタル配信が実行可能なソフトウェアアプリケーションと合成されている第１プロファイルを規定している。ソフトウェアアプリケーションは、１以上のテレビ視聴者がローカルにやりとりすることを可能にし、たとえば、インタラクションチャネルが設けられることを必要としない。さらに、当該規格はまた、拡張された放送により１以上にユーザに提供される特徴に加えて、放送サービスから独立又は関連する範囲のインタラクティブサービスが提供され、このようなインタラクティブサービスが追加的なインタラクションチャネルの提供を必要する第２プロファイルを規定する。
【０００５】
マルチメディアホームプラットフォーム（ＭＨＰ）の状況では、通常の意味では完全なＪａｖａＴＭアプリケーションであるとは従来はみなされていないＭＨＰソフトウェアアプリケーションが利用される。これらのＭＨＰソフトウェアアプリケーションは、それらが所与のプラットフォームにロードされ、ライフサイクルマネージャの監視の下で実行されるという点で、Ａｐｐｌｅｔと類似している。たとえば、当該プラットフォームは、セットトップボックス（ＳＴＢ）であり、ライフサイクルマネージャは、専用ソフトウェアにより実現される。ＭＨＰソフトウェアアプリケーションは、便宜上「Ｘｌｅｔ」と呼ばれる。
【０００６】
従って、本発明者は、ＭＨＰ配信がＸｌｅｔなどのＪａｖａＴＭアプリケーションの送信に関するものであると理解している。これらのＸｌｅｔを、ＤＳＭ−ＣＣ（Ｄｉｇｉｔａｌ  Ｍｅｄｉａ  Ｃｏｍｍａｎｄ  ａｎｄ  Ｃｏｎｔｒｏｌ）によりＭＨＰに準拠した製品にダウンロードすることが可能である。
【０００７】
さらに、本発明者は、例えば、配信ソフトウェアアプリケーション用の「カルーセル方式」の繰り返しパターンが用いられる場合、Ｘｌｅｔアプリケーションはしばしば連続配信されるが、ほとんど変更されることはないと理解している。例えば、家庭においてユーザは、テレビにリンクしたセットトップボックス（ＳＴＢ）を所有する。ユーザは、ＳＴＢと共にテレビを用いることにより、１以上の所望のサービスに対応するテレビ画面上のラベル又はシンボルを選択し、その後でシンボルの「ザッピング（ｚａｐｐｉｎｇ）」と通常呼ばれているシンボルの呼び出しが可能である。このようなシンボルの「ザッピング」により、対応するＸｌｅｔが検出される。ここで、ユーザがＸｌｅｔの使用を所望する場合、当該Ｘｌｅｔに係るクラス及び画像が、衛星接続及び／又は光ファイバリンクなどの通信媒体を介しＳＴＢにダウンロードされる。ダウンロードに続いて、ＳＴＢにおいてソフトウェア的に実現されるセキュリティマネージャが、ダウンロードされたＸｌｅｔ、すなわち、関連する画像及びクラスを、ＸｌｅｔがＳＴＢに設けられているバーチャルマシーンにロードされ、そこで実行される前にチェックするよう動作可能である。セキュリティマネージャが、例えば、１以上のソフトウェアウイルスにより汚染された安全でないクラスや関連する画像を特定する状況では、セキュリティマネージャは、バーチャルマシーンがＸｌｅｔを実行するのをやめるよう動作可能である。
【０００８】
本発明者は、セキュリティマネージャが上述のようなそれのセキュリティチェックタスクを実行するのにかなりの時間を要するということを理解している。このような遅延は、本発明者が少なくとも部分的に解決することを可能にする方法を考案することの要因となった重大な問題である。
【０００９】
上記問題は、当該技術分野では認識されていないようである。例えば、米国の公開された特許出願ＵＳ２００２／０１２０９４５Ａ１では、デジタルテレビ（ＤＴＶ）セットトップボックスと共に用いられるソフトウェアシステムが記載されている。当該システムは、第１及び第２アーキテクチャである２つの標準的ＤＡＳＥアーキテクチャとセットトップボックスとの互換性を有するように特別に設計されたソフトウェアバスアプリケーションプログラミングインタフェース（ＡＰＩ）を利用する。第１のアーキテクチャでは、手続的なアプリケーションエンジンが、宣言的アプリケーションエンジンを備える。第２のアーキテクチャでは、関連する手続を含む手続的アプリケーションエンジンが含まれる。各アプリケーションエンジンは、機能セルルータを用いてＤＴＶ配信からセットトップボックスによりダウンロードされるソフトウェアアプリケーションから投入されるすべてのＤＡＳＥインフラストラクチャＡＰＩを傍受するアプリケーションエンジンマネージャを関連付けしている。すべてのＡＰＩがアプリケーションマネージャを介し送信され、すべてのアプリケーションエンジンは、それに含まれるソフトウェアバスＡＰＩを実現するのに必要とされる。また、ソフトウェアコードの一行を単に変更することにより、追加的なアプリケーションの容易なインストール処理を可能にするよう動作可能な特別に設計されたソフトウェアインタフェースが備えられる。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
本発明の第１の課題は、ソフトウェアアプリケーションのセキュリティチェック時により迅速に動作する、デジタルテレビ（ＤＴＶ）に付属するセットトップボックスなどにおけるソフトウェアアプリケーションを実行する方法を提供することである。
【００１１】
本発明の第２の課題は、上記方法に従って動作可能な装置を提供することである。
【課題を解決するための手段】
【００１２】
本発明の第１の特徴によると、少なくとも１つの通信リンクを介し付属の計算手段を有する少なくとも１つの対応するユーザインタフェースと結合される配信プロバイダを有する配信システムの１以上のソフトウェアアプリケーションを実行する方法であって、
（ａ）前記少なくとも１つのユーザインタフェースに係る少なくとも１人のユーザから、少なくとも１つの所望のソフトウェアアプリケーションを実行するための１以上のリクエストを受信するステップと、
（ｂ）前記少なくとも１つの所望のソフトウェアアプリケーションが存在するか判断するため、前記少なくとも１つのユーザインタフェースに係るメモリをチェックするステップと、
（ｃ）前記少なくとも１つのソフトウェアアプリケーションが前記メモリに既に格納され、検証されていると判明すると、前記少なくとも１つの所望のソフトウェアアプリケーションを前記メモリから前記少なくとも１つのユーザインタフェースに係る計算手段にロードし、その後に前記計算手段において前記ソフトウェアアプリケーションを実行するステップと、
（ｄ）前記少なくとも１つのアプリケーションが前記メモリに格納されていないと判明すると、前記配信プロバイダから前記少なくとも１つの所望のソフトウェアアプリケーションを受信し、該少なくとも１つのアプリケーションを前記計算手段にロードし、該計算手段において前記少なくとも１つのアプリケーションを検証し、その後に、前記計算手段において検証されると、前記少なくとも１つのアプリケーションを実行するステップと、
を有することを特徴とする方法が提供される。
【００１３】
上記方法は、本発明の課題の少なくとも１つを解決可能であると点で効果的である。
【００１４】
好ましくは、前記ステップ（ｄ）において、前記少なくとも１つのソフトウェアアプリケーションは、検証されると、以降の可能性のある再利用のため前記メモリに格納される。このような再利用は、より反応性が高く迅速なユーザインタフェースの使用を可能にする。
【００１５】
好ましくは、例えば各ユーザインタフェースの過度のメモリを搭載する必要性を回避するため、各ユーザインタフェースには、ユーザリクエストされた頻度の低いソフトウェアアプリケーションをより最近にユーザリクエストされたソフトウェアアプリケーションにより上書きし、これにより、少なくとも１つのより頻度の高いユーザリクエストされたソフトウェアアプリケーションのためのメモリ容量の再利用を可能にするよう動作可能なメモリ管理手段が設けられる。
【００１６】
好ましくは、各ユーザインタフェースをソフトウェアアプリケーションの更新に対して反応性を高めるため、本方法の前記ステップ（ｂ）において、前記メモリに格納されている少なくとも１つの検証されたソフトウェアアプリケーションが、類似性をチェックするため、前記配信プロバイダから配信された少なくとも１つの対応するソフトウェアアプリケーションと比較され、
（ａ）前記メモリに格納されている少なくとも１つの検証されたアプリケーションが、前記少なくとも１つの格納及び検証されたアプリケーションと少なくとも１つの配信されたアプリケーションとの間の対応が特定されると、前記計算手段において実行され、
（ｂ）前記少なくとも１つの配信されたアプリケーションが有効性についてチェックされ、検証が成功すると前記メモリに格納され、その後に前記計算手段において実行され、
これにより、当該方法は、新規の対応する少なくとも１つのアプリケーションが前記配信プロバイダから配信されると、前記メモリに格納されている少なくとも１つのアプリケーションを更新するよう動作可能とされる。
【００１７】
好ましくは、少なくとも１つの通信リンクにおいて双方向通信がサポートされている場合、前記少なくとも１つのユーザインタフェース及び対応する少なくとも１つの通信リンクは、前記所望のソフトウェアアプリケーションに対する１以上のユーザリクエストを、該リクエストされた所望のアプリケーションを前記少なくとも１つのユーザインタフェースに配信するよう応答する前記配信プロバイダに伝えるよう動作可能とされる。
【００１８】
好ましくは、例えば代わりに又は追加的に、前記配信プロバイダは、前記少なくとも１つのユーザインタフェースにおいて付属のメモリに選択的にロードするため繰り返しの時間的方法により、前記少なくとも１つの通信リンクを介し１以上のソフトウェアアプリケーションを配信するよう動作可能とされる。このような「カルーセル」的なソフトウェアアプリケーションの配信は、一方向の少なくとも１つの通信リンクと同時にユーザインタラクティブデジタルテレビ（ＤＴＶ）をサポートすることが可能である。より好ましくは、例えば許容可能な短いユーザリクエスト応答遅延を与えるため、配信プロバイダは、擬似連続的方法により１以上のソフトウェアアプリケーションを配信するよう動作可能である。
【００１９】
好ましくは、本方法では、前記配信システムは、前記少なくとも１つのユーザインタフェースが付属の表示手段と結合された少なくとも１つのセットトップボックスと対応し、前記少なくとも１つの通信リンクが無線リンク、光ファイバリンク及び導電性有線通信リンクの少なくとも１つにより実現されるデジタルテレビ配信システムである。より好ましくは、メーカーの異なるコスト／サイズに対応するため、前記表示手段は、ブラウン管、画素プラズマディスプレイ、画素バックライト付液晶表示ディスプレイ及び画素プロジェクション液晶表示ディスプレイの少なくとも１つを有する。
【００２０】
好ましくは、利便性の高いユーザとのやりとりをサポートするため、前記少なくとも１つの所望のソフトウェアアプリケーションは、前記少なくとも１つのユーザインタフェースにおいて前記少なくとも１人のユーザに提示された少なくとも１つのグラフィック表示シンボルの使用により選択される。より好ましくは、前記少なくとも１つのグラフィックシンボルは、少なくとも１つのグラフィックアイコンとして実現される。
【００２１】
好ましくは、デジタルテレビ（ＤＴＶ）に加えて又はその代わりに、前記少なくとも１つのユーザインタフェースは、対応するグラフィックディスプレイが設けられた少なくとも１つのモバイル電話として実現される。
【００２２】
１以上のユーザリクエストに対して電源オンされたとき迅速なスタートアップを提供するため、前記メモリは、電源オフにされたときデータを保持するよう動作可能な永久メモリとして実現される。より好ましくは、前記メモリは、ソリッドステートメモリと磁気ディスクメモリの少なくとも１つを用いる不揮発性メモリとして実現される。
【００２３】
好ましくは、広範な一般的許容性のため、前記少なくとも１つのソフトウェアアプリケーションは、１以上のＪａｖａ  Ｘｌｅｔとして実現される。Ｊａｖａは、国際的に知られており、広範に利用される最新のコンピュータ言語である。
【００２４】
好ましくは、本方法の前記ステップ（ｄ）において、ソフトウェアにより実現されるセキュリティマネージャによって検証が実行され、検証されたソフトウェアアプリケーションは、前記計算手段において与えられるソフトウェアにより実現されるバーチャルマシーン上で実行される。
【００２５】
好ましくは、計算手段を効率的に使用しながら、より予測性の高い一様かつ安定的な動作を提供するため、前記検証された少なくとも１つのソフトウェアアプリケーションのダウンロード、検証及び前記メモリへの格納は、前記計算手段における連続する同時的なバックグラウンドアクションとして実行される。
【００２６】
本発明の第２の特徴によると、少なくとも１つの通信リンクを介し少なくとも１つの対応するユーザインタフェースと結合される配信プロバイダを有し、１以上のソフトウェアアプリケーションを実行する配信システムであって、
各ユーザインタフェースは、
（ａ）該ユーザインタフェースに係る少なくとも１人のユーザから、少なくとも１つの所望のソフトウェアアプリケーションを実行するための１以上のリクエストを受信するインタフェース手段と、
（ｂ）少なくとも１つのソフトウェアアプリケーションを格納するメモリと、
（ｃ）前記少なくとも１つの所望のソフトウェアアプリケーションが既に検証され、前記メモリに格納されているか判断し、前記１以上のソフトウェアアプリケーションが前記メモリに格納されていない場合、前記配信プロバイダから受信した１以上のソフトウェアアプリケーションを検証し、前記１以上のユーザリクエストに応答して、１以上の検証されたソフトウェアアプリケーションを実行し、前記少なくとも１人のユーザからの前記１以上のリクエストに対するより迅速な一時的応答を前記少なくとも１人のユーザに提供するため、前記メモリに格納されている１以上の検証されたソフトウェアアプリケーションが、前記配信プロバイダから受信可能な対応する１以上のソフトウェアアプリケーションの検証に優先して実行されるようにする計算手段と、
を有することを特徴とするシステムが提供される。
【００２７】
好ましくは、当該システムにおいて、前記計算手段は、以降の可能性のある再利用のため前記メモリにおいて検証されると、前記少なくとも１つのソフトウェアアプリケーションを格納するよう動作可能とされる。
【００２８】
好ましくは、各ユーザインタフェースには、ユーザリクエストされた頻度の低いソフトウェアアプリケーションをより最近にユーザリクエストされたソフトウェアアプリケーションにより上書きし、これにより、少なくとも１つのより頻度の高いユーザリクエストされたソフトウェアアプリケーションのためのメモリ容量の再利用を可能にするよう動作可能なメモリ管理手段が設けられる。
【００２９】
好ましくは、当該システムにおいて、前記計算手段は、類似性をチェックするため、前記メモリに格納されている少なくとも１つの検証されたソフトウェアアプリケーションと前記配信プロバイダから配信された少なくとも１つの対応するソフトウェアアプリケーションとを比較し、
（ａ）前記メモリに格納されている少なくとも１つの検証されたアプリケーションが、前記少なくとも１つの格納及び検証されたアプリケーションと少なくとも１つの配信されたアプリケーションとの間の対応が特定されると、前記計算手段において実行され、
（ｂ）前記少なくとも１つの配信されたアプリケーションが有効性についてチェックされ、検証が成功すると前記メモリに格納され、その後に前記計算手段において実行され、
これにより、前記計算手段は、新規の対応する少なくとも１つのアプリケーションが前記配信プロバイダから配信されると、前記メモリに格納されている少なくとも１つのアプリケーションを更新するよう動作可能とされる。
【００３０】
好ましくは、当該システムにおいて、前記少なくとも１つのユーザインタフェース及び対応する少なくとも１つの通信リンクは、前記所望のソフトウェアアプリケーションに対する１以上のユーザリクエストを、該リクエストされた所望のアプリケーションを前記少なくとも１つのユーザインタフェースに配信するよう応答する前記配信プロバイダに伝えるよう動作可能とされる。
【００３１】
好ましくは、当該システムにおいて、前記配信プロバイダは、前記少なくとも１つのユーザインタフェースにおける選択的なロードのため、繰り返しの時間的方法により、前記少なくとも１つの通信リンクを介し１以上のソフトウェアアプリケーションを配信するよう動作可能とされる。
【００３２】
好ましくは、当該配信システムは、前記少なくとも１つのユーザインタフェースが付属の表示手段と結合された少なくとも１つのセットトップボックスと対応し、前記少なくとも１つの通信リンクが無線リンク、光ファイバリンク及び導電性有線通信リンクの少なくとも１つにより実現されるデジタルテレビ配信システムである。より好ましくは、前記表示手段は、ブラウン管、画素プラズマディスプレイ、画素バックライト付液晶表示ディスプレイ及び画素プロジェクション液晶表示ディスプレイの少なくとも１つを有する。
【００３３】
好ましくは、前記少なくとも１つの所望のソフトウェアアプリケーションは、前記少なくとも１つのユーザインタフェースにおいて前記少なくとも１人のユーザに提示された少なくとも１つのグラフィック表示シンボルの使用により選択可能とされる。より好ましくは、前記少なくとも１つのグラフィックシンボルは、少なくとも１つのグラフィックアイコンとして実現される。
【００３４】
好ましくは、デジタルテレビ（ＤＴＶ）に追加して又はその代わりに、前記少なくとも１つのユーザインタフェースは、対応するグラフィックディスプレイが設けられた少なくとも１つのモバイル電話として実現される。
【００３５】
好ましくは、前記メモリは、電源オフにされたときデータを保持するよう動作可能な永久メモリとして実現される。より好ましくは、前記メモリは、ソリッドステートメモリと磁気ディスクメモリの少なくとも１つを用いる不揮発性メモリとして実現される。
【００３６】
好ましくは、前記少なくとも１つのソフトウェアアプリケーションは、１以上のＪａｖａ  Ｘｌｅｔとして実現される。
【００３７】
好ましくは、前記計算手段は、ソフトウェアにより実現されるセキュリティマネージャによって検証を実行し、前記計算手段において与えられるソフトウェアにより実現されるバーチャルマシーンによって検証されたソフトウェアアプリケーションを実行するよう動作可能とされる。
【００３８】
好ましくは、前記計算手段は、前記検証された少なくとも１つのソフトウェアアプリケーションのダウンロード、検証及び前記メモリへの格納を連続する同時的なバックグラウンドアクションとして実行するよう動作可能とされる。
【００３９】
本発明の特徴は、本発明の範囲から逸脱することなく任意の組み合わせにより組み合わせ可能であるということは理解されるであろう。
【発明を実施するための最良の形態】
【００４０】
本発明を説明するため、図１及び２を参照して、デジタルテレビ（ＤＴＶ）の概要がまず説明される。
【００４１】
まず図１を参照するに、全般的に１０により示される従来技術によるＤＴＶ配信ネットワークが示される。当該ネットワーク１０は、ＤＴＶ信号を配信するためのインフラストラクチャを有するＤＴＶ配信プロバイダ２０を有する。このインフラストラクチャは、例えば、アンプ、リジェネレータ、イコライザ及びフィルタの１以上などのインラインコンポーネント、信号スイッチングユニット、光ファイバ通信リンク、マイクロウェーブワイヤレスリンクの１以上などを有する。配信プロバイダ２０は、ユーザ１〜ｎにＤＴＶサービスを提供するためのｎ個の出力を有する。各出力は、好ましくは、同軸高周波数ワイヤリンク、広帯域幅光ファイバリンク及びワイヤレスラジオリンクの１以上である通信リンク３０を介し接続される。さらに、各ユーザは、ユーザ６０により視聴可能なテレビモニタ５０と対応するリンク３０との間で接続されるセットトップボックス（ＳＴＢ）４０と関連付けされる。モニタ５０は、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）ディスプレイ、画素ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）、ＬＣＤプロジェクションユニット及びプラズマディスプレイの１以上であることが好ましい。さらに、モニタ５０はまた、例えば、ミニチュアコンピュータキーボード及び／またはコンピュータマウス、トラックボールなどのユーザインタフェースコントロールパネル及び対応する音声システムを有する。
【００４２】
ＳＴＢ４０は、高速信号処理ハードウェアと共にコンピュータハードウェアを有する。コンピュータハードウェアは、適切なデジタルバスを介し揮発性及び不揮発性記憶装置に結合される少なくとも１つのプロセッサを有し、不揮発性記憶装置は、後述されるように、永久的メモリを提供することが可能である。ＳＴＢ４０は、特にＸｌｅｔを受信し、ユーザ６０に対応する映像及び／または音声サービスを提供するよう実行可能な実質的に汎用的なコンピュータエミュレーションであるバーチャルマシーンとして機能することを可能にするよう実行可能なソフトウェアを有する。
【００４３】
次に図２を参照するに、各ＳＴＢ４０内部で実行される処理ステップのフローチャートとして、１００により全体的に示される処理ステップが示される。当該ステップ１００は、シンボル選択ステップ１１０（シンボルの選択）、Ｘｌｅｔステップに対するリクエスト１２０（Ｘｌｅｔに対するリクエスト）、Ｘｌｅｔステップの受付１３０（Ｘｌｅｔの受付）、Ｘｌｅｔセキュリティ／検証チェックステップ１４０（Ｘｌｅｔのセキュリティチェック）、判定ステップ１５０（Ｘｌｅｔは安全に実行可能か？）及び最後のＸｌｅｔ実行ステップ１６０（Ｘｌｅｔの実行）を有する。これらのステップ１１０〜１６０は、図２に与えられるような時間的シーケンスにより実行される。
【００４４】
図１及び２を参照して、配信ネットワーク１０の動作が説明される。
【００４５】
配信プロバイダ２０は、リンク３０の１以上を介し各自のユーザ６０にデジタル信号を出力するよう動作可能である。デジタル信号は、デジタル番組、実行可能ソフトウェア及びソフトウェア関連データの少なくとも１つを有する。
【００４６】
各ユーザ６０は、例えば、好適な番組チャネルを選択するため、プロバイダ２０から送信される与えられたデジタルデータストリームを選択するようそれの対応するＳＴＢ４０に指示可能である。さらに、各ユーザ６０はまた、後述されるように、実行用にユーザのＳＴＢ４０に送信される１以上のソフトウェアアプリケーションを選択することができる。
【００４７】
各ＳＴＢ４０は、それのユーザ６０からアプリケーションリクエストを受信可能であり、ユーザ６０はモニタ５０上で所望の選択肢を選択する。例えば、当該選択肢は、ユーザ６０がモニタ５０上に表示されるマウスアイコンを所望のアイコンソフトウェアアプリケーションシンボルに移動することによって、ステップ１１０において選択される。
【００４８】
第１のインタラクティブ動作モードでは、ユーザ６０はその後、ステップ１２０において当該リクエストをＳＴＢ４０を介しプロバイダ２０に転送する。例えば、ユーザ６０は、ＳＴＢ４０にリンク３０を介しリクエストを配信プロバイダ２０に送信させるスイッチまたは「実行」ボタンを押下する。その後ステップ１３０において、プロバイダ２０は、モニタ５０への表示のためにＳＴＢ４０における最終的な実行のため、例えば、１以上のＸｌｅｔなどの１以上の対応するソフトウェアアプリケーションをダウンロードすることにより応答する。
【００４９】
配信プロバイダ２０が「カルーセル」形式により繰り返しかつ連続的にソフトウェアアプリケーションを出力する第２のインタラクティブ動作モードでは、ＳＴＢ４０は、ＳＴＢ４０に伝搬される入力信号から、モニタ５０への表示のためＳＴＢ４０において最終的に実行される選択されたＸｌｅｔを分離することによって、ユーザ６０からのリクエストに応答する。
【００５０】
ステップ１４０と１５０において、ＳＴＢ４０と格納されているデータの劣化を回避するため、ＳＴＢ４０はまた、配信プロバイダ２０から上述のようなＸｌｅｔなどの１以上の受信したソフトウェアアプリケーションを検証するため、セキュリティマネージャとして知られる検証ソフトウェアを実行する。このような検証は、ソフトウェアアプリケーションが真正なソースから与えられたことを保証し、及び／又は当該ソフトウェアアプリケーションがＳＴＢ４０の動作に悪影響を与える可能性のあるコンピュータウイルスや同様の不具合を有する。
【００５１】
Ｘｌｅｔが１以上のＳＴＢ４０において受信されると、上述のセキュリティマネージャソフトウェアが１以上のＳＴＢ４０上で実行されることによって、まず検証される。ステップ１５０において、Ｘｌｅｔが真正でないと判断されると、それは実行されない。逆にステップ１５０において、Ｘｌｅｔがセキュリティマネージャにより検証が成功すると、それはＳＴＢ４０により与えられるバーチャルマシーン上にロードされ、その後にステップ１６０において、天気予報、投資銀行のパフォーマンスレポート、株式市場レポート及び／又はテレビゲームなどの対応するサービスをユーザ６０に提供するようステップ１６０において実行される。
【００５２】
本発明者は、モニタ５０上で特定されるソフトウェアアプリケーションアイコンなどが応答及び機能するため出現するまでの期間ユーザ６０が待機しなければならないという結果により、ＳＴＢ４０のセキュリティマネージャが、ステップ１４０において比較的にゆっくりとそれの検証機能を実行することを認識している。さらに、ソフトウェアアプリケーションが比較的大きなものであって、リンク３０を介し利用可能な帯域幅が制限されているとき、リンク３０を介し配信プロバイダ２０からそれの関連するＳＴＢ４０まで、ステップ１３０においてアプリケーションをロードするのにかなりの時間を要する。このような遅延は、ユーザ６０を当惑させ、苛つかせる可能性もある。
【００５３】
ソフトウェアアプリケーションがＳＴＢ４０の内部で実行されると、それらは従来は、ネットワークプロバイダ２０から与えられる新たな以降のソフトウェアアプリケーションにより消去及び／又は上書きされていた。
【００５４】
上述のように、ネットワーク１０に一方向リンク３０が設けられる場合、ネットワークプロバイダ１０は、ユーザ６０のスレットがユーザのＳＴＢ４０にステップ１２０及び１３０において、Ｘｌｅｔなどの対応する選択されたソフトウェアアプリケーションを特定させ、真正である場合には以降の実行のためステップ１４０及び１５０における検証のため、ＳＴＢ４０のメモリにロードさせなかった場合、各ＳＴＢ４０において通常は無視されるソフトウェアアプリケーションを繰り返し送信する。
【００５５】
本発明者は、配信プロバイダ２０から与えられたソフトウェアアプリケーションが上述の第２のインタラクティブモードにより繰り返し配信される、すなわち、ほとんど変更されず、データ「カルーセル」形式に効果的に連続配信される。ユーザ６０が上述のようなソフトウェアアプリケーションアイコンを「ザップ」する場合、対応するＸｌｅｔが特定される。ユーザがＸｌｅｔの実行を所望する場合、Ｘｌｅｔに係る画像及びクラスが、プロバイダ２０からユーザ６０のＳＴＢ４０にダウンロードされる。次に、当該クラスは、Ｘｌｅｔが最終的に実行されるまでに、セキュリティマネージャが各クラスを検証するロード処理段階においてバーチャルマシーンによりロードされる。このような検証には、ＳＴＢ４０における比較的大きな実行時間を要する。
【００５６】
本発明者は、本発明に対して、Ｘｌｅｔの１以上のＳＴＢ４０へのダウンロードを２段階の処理、すなわち、格納処理と実行処理とみなすことが望ましいということを認識していた。このようなストレージは、パワーダウン状態、すなわち、電力がＳＴＢ４０から切断されているときにデータを保持する磁気ハードディスクメモリ及び／又はソリッドステートフラッシュメモリなどの不揮発性永久ストレージであることが特に望ましい。このような永久ストレージを提供するための利用として、他のタイプの不揮発性永久メモリがまた可能である。
【００５７】
従って、本発明の方法では、まずＸｌｅｔが１以上のＳＴＢ４０上で実行され、ＳＴＢ４０は各自のセキュリティマネージャを呼び出し、関連するすべてのクラスにおいてＸｌｅｔを検証し、その後に検証したＸｌｅｔをＳＴＢ４０の永久メモリに格納するようプログラムされる。ユーザ６０がユーザ４０のモニタ５０上の所望のＸｌｅｔアイコンを呼び出す以降の例では、対応するＳＴＢ４０はまず、所望されたＸｌｅｔがすでにＳＴＢ４０の永久ストレージに格納されているか判断するためチェックする。その後、ＳＴＢ４０は、検証され格納されたＸｌｅｔが、例えば、Ｘｌｅｔを配信するためそれの「カルーセル」モードによる出力として、配信プロバイダ２０から連続的に出力されるものと同様のものであるということを確認するためチェックする。配信され格納されたＸｌｅｔが同一である場合、ＳＴＢ４０は、これら２つのＸｌｅｔが共に有効であり、その後に格納されているＸｌｅｔの実行に移行することを特定する。所望の格納されたＸｌｅｔが、例えば、プロバイダ２０により実現されるソフトウェアの更新により配信プロバイダ２０からの出力と異なる場合、ＳＴＢ４０は、プロバイダ２０から所望の選択されたＸｌｅｔをダウンロードするよう動作可能であり、その後に、永久ストレージへのロード前にセキュリティマネージャによる検証チェックを受け、その後にバーチャルマシーンにおいて前述のように実行される。
【００５８】
完全な検証されたＸｌｅｔを格納する代わりに、ＳＴＢ４０は、入力された受信Ｘｌｅｔがバーチャルマシーンにおける実行前にチェックサムを用いることにより、迅速に検証可能となるように、検証された所望のＸｌｅｔに対応するチェックサムなどの検証データを格納することが可能である。このような本発明の実現形態は、ＳＴＢ４０の内部のメモリ容量をより少なくしか要求しない。
【００５９】
本発明の方法が、図３を参照してさらに説明される。
【００６０】
図３において、本発明の実施例に対応する処理ステップのフローチャートが示される。当該処理ステップは、２００により全体的に示される。ステップ２００は、シンボル選択ステップ２１０（シンボルの選択）、ソフトウェアアプリケーションチェックステップ２２０（Ｘｌｅｔはすでにロードされ、ＳＴＢにおいてセキュリティチェックされているか？）、永久メモリからのＸｌｅｔロードステップ２３０（ＳＴＢストレージからのＸｌｅｔのロード）、Ｘｌｅｔ実行ステップ２４０（Ｘｌｅｔの実行）、Ｘｌｅｔに対するリクエストステップ２５０（Ｘｌｅｔに対するリクエスト）、Ｘｌｅｔ受付ステップ２６０（Ｘｌｅｔの受付）、Ｘｌｅｔセキュリティ検証ステップ２７０（Ｘｌｅｔのセキュリティチェック）、Ｘｌｅｔ検証チェックステップ２８０（Ｘｌｅｔは有効か？）、及び最後の永久メモリへのＸｌｅｔ格納ステップ２９０（Ｘｌｅｔの格納）を有する。ステップ２００は、ユーザが選択したＸｌｅｔがステップ２４０における以降の実行準備ができたＳＴＢ４０の永久ストレージにおいてすでに利用可能であるか、ステップ２５０においてリクエストされるか、ステップ２６０において受付されるか、ステップ２７０において上述のセキュリティマネージャにより検証されるか、ステップ２８０において検証チェックされるか、最後に有効である場合にはステップ２４０及び２９０において格納され、以降において実行されるか否かに依存して、ステップ２２０の分岐処理により示されるような時系列的に実行される。
【００６１】
ステップ２７０と２８０のセキュリティ検証は、ＳＴＢ４０により実行される上述のセキュリティマネージャソフトウェアにおいて実行される。さらに、検証されたＸｌｅｔの実行は、ＳＴＢ４０のコンピューティングハードウェアに設けられるバーチャルマシーンにより実行される。
【００６２】
好ましくは、各ＳＴＢ４０は、関連する永久メモリに検出されたすべてのＸｌｅｔを格納するよう動作可能である。このようなＸｌｅｔの格納は、好ましくは、各ＳＴＢ４０の内部の連続的に実行されるバックグラウンドアクションである。ＳＴＢ４０が各自の永久メモリの容量を使い尽くすのを防ぐため、各ＳＴＢ４０は、メモリにおいてジャーナル（ｊｏｕｒｎａｌ）形式などにより内部のＸｌｅｔレコードを維持するよう構成される。各ＳＴＢ４０は、それのＸｌｅｔレコードを用いて、最も使用されていないＸｌｅｔと実行されていないＸｌｅｔとを決定し、メモリスペースを解放するためそれらを永久ストレージから削除し、これにより、メモリ枯渇を回避するよう動作可能である。従って好ましくは、例えば、付属するＳＴＢ４０の永久メモリにまだ格納されていないユーザ６０により選択された新たなＸｌｅｔは、ＳＴＢ４０の永久メモリに既に格納され、最も使用されていないＸｌｅｔを置換する。
【００６３】
好ましくは、各ＳＴＢ４０は、各モジュールがクラス及びファイルの１以上を有するいくつかのモジュールをダウンロードするため、ＤＳＮ−ＣＣ（Ｄｉｇｉｔａｌ  Ｓｔｏｒａｇｅ  Ｍｅｄｉａ  Ｃｏｍｍａｎｄ  ａｎｄ  Ｃｏｎｔｒｏｌ）を利用する。モジュールのバージョンは、ＤＴＶから知られるＤＩＩ（Ｄｏｗｎｌｏａｄ  Ｉｎｆｏ  Ｉｎｄｉｃａｔｉｏｎ）において効果的に特定される。好ましくは、このようなＤＩＩ情報は、対応するＸｌｅｔと共にＳＴＢ４０の永久メモリに効果的に格納される。従って、ユーザ６０が実行されるべきＸｌｅｔをリクエストすると、ＤＳＭ−ＣＣは、当該Ｘｌｅｔが既に格納されているか、そしてそれが有効であるか判断するためチェックする。Ｘｌｅｔが有効でないとわかると、当該Ｘｌｅｔはプロバイダ２０からダウンロードされ、上述のように検証及び実行される。
【００６４】
従って、各ＳＴＢ４０は、格納されているＸｌｅｔが以前に実行されていないか、あるいは一時的に更新されている場合、上述のセキュリティマネージャを呼び出すよう動作可能なクラスローダソフトウェアを有する。
【００６５】
上述の本発明の実施例が本発明の範囲から逸脱することなく変更可能であるということは、理解されるであろう。
【００６６】
例えば、上述の本発明の方法が、ＳＴＢを含むＤＴＶシステムにおいて利用可能であっても、本方法はまた、ＳＴＢ４０とそのモニタ５０が二次元グラフィック画像を表示するのに適した液晶ディスプレイを有するモバイル電話などの携帯型モバイル電話により置き換えられるモバイル電話ネットワークに適用可能である。
【００６７】
ＳＴＢ４０と付属のモニタ５０が対応するハウジングに空間的に共存させることも可能であるが、２つを相互に着脱可能なアイテムに限定するものではないということが理解されるであろう。
【００６８】
上記では、「含む」、「有する」、「搭載する」などの表現は、非排他的なものであると解釈され、すなわち、そのような表現は他のコンポーネント又はアイテムが与えられることを排除するものではない。さらに、単数形の表現は複数有するとも解釈されるであろう。
【図面の簡単な説明】
【００６９】
【図１】図１は、複数のセットトップボックスにリンクされるデジタルテレビ放送ネットワークの概略図である。
【図２】図２は、セットトップボックス（ＳＴＢ）のＸｌｅｔソフトウェアアプリケーションをダウンロード及び実行するための従来技術による方法の概略図である。
【図３】図３は、セットトップボックス（ＳＴＢ）のＸｌｅｔソフトウェアアプリケーションをダウンロード及び実行するための本発明の方法の実施例の概略図である。
【図１】
2007528048.tif 000003
【図２】
2007528048.tif 000004
【図３】
2007528048.tif 000005
【手続補正書】
【提出日】平成18年1月30日(2006.1.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
少なくとも１つの通信リンクを介し付属の計算手段を有する少なくとも１つの対応するユーザインタフェースと結合される配信プロバイダを有する配信システムの１以上のソフトウェアアプリケーションを実行する方法であって、
（ａ）前記少なくとも１つのユーザインタフェースに係る少なくとも１人のユーザから、少なくとも１つの所望のソフトウェアアプリケーションを実行するための１以上のリクエストを受信するステップと、
（ｂ）前記少なくとも１つの所望のソフトウェアアプリケーションが存在するか判断するため、前記少なくとも１つのユーザインタフェースに係るメモリをチェックするステップと、
（ｃ）前記少なくとも１つのソフトウェアアプリケーションが前記メモリに既に格納され、検証されていると判明すると、前記少なくとも１つの所望のソフトウェアアプリケーションを前記メモリから前記少なくとも１つのユーザインタフェースに係る計算手段にロードし、その後に前記計算手段において前記ソフトウェアアプリケーションを実行するステップと、
（ｄ）前記少なくとも１つのアプリケーションが前記メモリに格納されていないと判明すると、前記配信プロバイダから前記少なくとも１つの所望のソフトウェアアプリケーションを受信し、該少なくとも１つのアプリケーションを前記計算手段にロードし、該計算手段において前記少なくとも１つのアプリケーションを検証し、その後に、前記計算手段において検証されると、前記少なくとも１つのアプリケーションを実行するステップと、
を有することを特徴とする方法。
【請求項２】
請求項１記載の方法であって、
前記ステップ（ｄ）において、前記少なくとも１つのソフトウェアアプリケーションは、検証されると、以降の可能性のある再利用のため前記メモリに格納されることを特徴とする方法。
【請求項３】
請求項２記載の方法であって、
各ユーザインタフェースには、ユーザリクエストされた頻度の低いソフトウェアアプリケーションをより最近にユーザリクエストされたソフトウェアアプリケーションにより上書きし、これにより、少なくとも１つのより頻度の高いユーザリクエストされたソフトウェアアプリケーションのためのメモリ容量の再利用を可能にするよう動作可能なメモリ管理手段が設けられることを特徴とする方法。
【請求項４】
請求項１記載の方法であって、
前記ステップ（ｂ）において、前記メモリに格納されている少なくとも１つの検証されたソフトウェアアプリケーションが、類似性をチェックするため、前記配信プロバイダから配信された少なくとも１つの対応するソフトウェアアプリケーションと比較され、
（ａ）前記メモリに格納されている少なくとも１つの検証されたアプリケーションが、前記少なくとも１つの格納及び検証されたアプリケーションと少なくとも１つの配信されたアプリケーションとの間の対応が特定されると、前記計算手段において実行され、
（ｂ）前記少なくとも１つの配信されたアプリケーションが有効性についてチェックされ、検証が成功すると前記メモリに格納され、その後に前記計算手段において実行され、
これにより、当該方法は、新規の対応する少なくとも１つのアプリケーションが前記配信プロバイダから配信されると、前記メモリに格納されている少なくとも１つのアプリケーションを更新するよう動作可能であることを特徴とする方法。
【請求項５】
請求項１記載の方法であって、
前記少なくとも１つのユーザインタフェース及び対応する少なくとも１つの通信リンクは、前記所望のソフトウェアアプリケーションに対する１以上のユーザリクエストを、該リクエストされた所望のアプリケーションを前記少なくとも１つのユーザインタフェースに配信するよう応答する前記配信プロバイダに伝えるよう動作可能であることを特徴とする方法。
【請求項６】
請求項１記載の方法であって、
前記配信プロバイダは、前記少なくとも１つのユーザインタフェースにおいて付属のメモリに選択的にロードするため繰り返しの時間的方法により、前記少なくとも１つの通信リンクを介し１以上のソフトウェアアプリケーションを配信するよう動作可能であることを特徴とする方法。
【請求項７】
請求項６記載の方法であって、
前記配信プロバイダは、擬似連続的方法により前記１以上のソフトウェアアプリケーションを配信するよう動作可能であることを特徴とする方法。
【請求項８】
請求項１記載の方法であって、
前記配信システムは、前記少なくとも１つのユーザインタフェースが付属の表示手段と結合された少なくとも１つのセットトップボックスと対応し、前記少なくとも１つの通信リンクが無線リンク、光ファイバリンク及び導電性有線通信リンクの少なくとも１つにより実現されるデジタルテレビ配信システムであることを特徴とする方法。
【請求項９】
請求項８記載の方法であって、
前記表示手段は、ブラウン管、画素プラズマディスプレイ、画素バックライト付液晶表示ディスプレイ及び画素プロジェクション液晶表示ディスプレイの少なくとも１つを有することを特徴とする方法。
【請求項１０】
請求項１記載の方法であって、
前記少なくとも１つの所望のソフトウェアアプリケーションは、前記少なくとも１つのユーザインタフェースにおいて前記少なくとも１人のユーザに提示された少なくとも１つのグラフィック表示シンボルの使用により選択されることを特徴とする方法。
【請求項１１】
請求項１０記載の方法であって、
前記少なくとも１つのグラフィックシンボルは、少なくとも１つのグラフィックアイコンとして実現されることを特徴とする方法。
【請求項１２】
請求項１記載の方法であって、
前記少なくとも１つのユーザインタフェースは、対応するグラフィックディスプレイが設けられた少なくとも１つのモバイル電話として実現されることを特徴とする方法。
【請求項１３】
請求項１記載の方法であって、
前記メモリは、電源オフにされたときデータを保持するよう動作可能な永久メモリとして実現されることを特徴とする方法。
【請求項１４】
請求項１３記載の方法であって、
前記メモリは、ソリッドステートメモリと磁気ディスクメモリの少なくとも１つを用いる不揮発性メモリとして実現されることを特徴とする方法。
【請求項１５】
請求項１記載の方法であって、
前記少なくとも１つのソフトウェアアプリケーションは、１以上のＪａｖａ  Ｘｌｅｔとして実現されることを特徴とする方法。
【請求項１６】
請求項１記載の方法であって、
前記ステップ（ｄ）において、ソフトウェアにより実現されるセキュリティマネージャによって検証が実行され、検証されたソフトウェアアプリケーションは、前記計算手段において与えられるソフトウェアにより実現されるバーチャルマシーン上で実行されることを特徴とする方法。
【請求項１７】
請求項１記載の方法であって、
前記検証された少なくとも１つのソフトウェアアプリケーションのダウンロード、検証及び前記メモリへの格納は、前記計算手段における連続する同時的なバックグラウンドアクションとして実行されることを特徴とする方法。
【請求項１８】
少なくとも１つの通信リンクを介し少なくとも１つの対応するユーザインタフェースと結合される配信プロバイダを有し、１以上のソフトウェアアプリケーションを実行する配信システムであって、
各ユーザインタフェースは、
（ａ）該ユーザインタフェースに係る少なくとも１人のユーザから、少なくとも１つの所望のソフトウェアアプリケーションを実行するための１以上のリクエストを受信するインタフェース手段と、
（ｂ）少なくとも１つのソフトウェアアプリケーションを格納するメモリと、
（ｃ）前記少なくとも１つの所望のソフトウェアアプリケーションが既に検証され、前記メモリに格納されているか判断し、前記１以上のソフトウェアアプリケーションが前記メモリに格納されていない場合、前記配信プロバイダから受信した１以上のソフトウェアアプリケーションを検証し、前記１以上のユーザリクエストに応答して、１以上の検証されたソフトウェアアプリケーションを実行し、前記少なくとも１人のユーザからの前記１以上のリクエストに対するより迅速な一時的応答を前記少なくとも１人のユーザに提供するため、前記メモリに格納されている１以上の検証されたソフトウェアアプリケーションが、前記配信プロバイダから受信可能な対応する１以上のソフトウェアアプリケーションの検証に優先して実行されるようにする計算手段と、
を有することを特徴とするシステム。
【国際調査報告】
2007528048.tif 000006
2007528048.tif 000007
2007528048.tif 000008