JP2003504950A - アプリケーションの実行および試験 - Google Patents
アプリケーションの実行および試験Info
- Publication number
- JP2003504950A JP2003504950A JP2001510089A JP2001510089A JP2003504950A JP 2003504950 A JP2003504950 A JP 2003504950A JP 2001510089 A JP2001510089 A JP 2001510089A JP 2001510089 A JP2001510089 A JP 2001510089A JP 2003504950 A JP2003504950 A JP 2003504950A
- Authority
- JP
- Japan
- Prior art keywords
- decoder
- receiver
- application
- workstation
- file
- 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.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title abstract description 18
- 238000000034 method Methods 0.000 claims abstract description 53
- 238000011161 development Methods 0.000 claims description 32
- 238000004891 communication Methods 0.000 claims description 13
- 230000001419 dependent effect Effects 0.000 claims description 2
- 238000004590 computer program Methods 0.000 claims 3
- 230000006870 function Effects 0.000 description 29
- 230000015654 memory Effects 0.000 description 29
- 230000005540 biological transmission Effects 0.000 description 10
- 230000002452 interceptive effect Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 3
- XSTXAVWGXDQKEL-UHFFFAOYSA-N Trichloroethylene Chemical compound ClC=C(Cl)Cl XSTXAVWGXDQKEL-UHFFFAOYSA-N 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000005034 decoration Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N17/00—Diagnosis, testing or measuring for television systems or their details
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
- Computer And Data Communications (AREA)
- Debugging And Monitoring (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
- Information Transfer Between Computers (AREA)
Abstract
(57)【要約】
例えばアナログまたはデジタルテレビシステム用のアプリケーションを試験するための、受信機/デコーダが開示され、該受信機/デコーダは、ネットワークとメッセージを交換するための手段、およびネットワークから受信されるメッセージに依存してアプリケーションを実行するための手段とを備える。受信機/デコーダは、アプリケーションをデバッグするために使用されてよい。やはり開示されているのは、アプリケーションをワークステーションから受信機/デコーダに転送する方法、および受信機/デコーダでアプリケーションを実行する方法である。
Description
【0001】
本発明は、受信機/デコーダ(例えば、アナログまたはデジタルテレビシステ
ム用)、ワークステーション、およびオーサリングツールに関し、アプリケーシ
ョンを受信機/デコーダに転送する方法、およびアプリケーションを受信機/デ
コーダで実行する方法に関する。 発明は、それが例えばこのようなアプリケーションを立証するために使用され
てもよいが、受信機/デコーダ用のアプリケーションを開発する、試験する、お
よびデバッグするというコンテキストで特定のアプリケーションを有する。
ム用)、ワークステーション、およびオーサリングツールに関し、アプリケーシ
ョンを受信機/デコーダに転送する方法、およびアプリケーションを受信機/デ
コーダで実行する方法に関する。 発明は、それが例えばこのようなアプリケーションを立証するために使用され
てもよいが、受信機/デコーダ用のアプリケーションを開発する、試験する、お
よびデバッグするというコンテキストで特定のアプリケーションを有する。
【0002】
デジタルテレビシステムのケースでは、これらはテレビチャネルを、アナログ
形式よりむしろデジタル形式で視聴者に伝送する。デジタルチャネルは、送信機
終端でデジタルデータストリームに符号化され、デジタルセットトップボックス
(DSTB)内、または統合型デジタルテレビ内のどちらかにあってよいデジタ
ルデコーダを使用して受信機終端で復号される。対話性を可能にするために、ア
ップリンクが、テレビチャネルを送達する同じ媒体を介して、あるいはそれ以外
の場合電話リンクなどの異なる媒体を介して提供されてよい。ここに使用される
ように、用語「デジタルテレビシステム」は、例えば、任意の衛星、地上システ
ム、ケーブルシステムおよびその他のシステムを含む。
形式よりむしろデジタル形式で視聴者に伝送する。デジタルチャネルは、送信機
終端でデジタルデータストリームに符号化され、デジタルセットトップボックス
(DSTB)内、または統合型デジタルテレビ内のどちらかにあってよいデジタ
ルデコーダを使用して受信機終端で復号される。対話性を可能にするために、ア
ップリンクが、テレビチャネルを送達する同じ媒体を介して、あるいはそれ以外
の場合電話リンクなどの異なる媒体を介して提供されてよい。ここに使用される
ように、用語「デジタルテレビシステム」は、例えば、任意の衛星、地上システ
ム、ケーブルシステムおよびその他のシステムを含む。
【0003】
デジタルデコーダは、典型的には、アプリケーションとして知られているプロ
グラムが実行されてよいプロセッサを含む。このようなアプリケーションの例は
、番組表、テレビショッピング、クイズ、ホームバンキング、およびテレビ投票
を含む。このようなアプリケーションは、典型的には、テレビ画面に、ユーザが
その中からある特定のオプションを選択してよいメニューを表示する。アプリケ
ーションで使用されるデータは、テレビチャネルと同じデータストリームでデコ
ーダに伝送されてよい。選択の結果は、、デコーダで実行中のアプリケーション
によって直接的に解釈できるか、あるいはそれは適切な処置を講じることができ
るようにするために、アップリンクを介して伝送できる。
グラムが実行されてよいプロセッサを含む。このようなアプリケーションの例は
、番組表、テレビショッピング、クイズ、ホームバンキング、およびテレビ投票
を含む。このようなアプリケーションは、典型的には、テレビ画面に、ユーザが
その中からある特定のオプションを選択してよいメニューを表示する。アプリケ
ーションで使用されるデータは、テレビチャネルと同じデータストリームでデコ
ーダに伝送されてよい。選択の結果は、、デコーダで実行中のアプリケーション
によって直接的に解釈できるか、あるいはそれは適切な処置を講じることができ
るようにするために、アップリンクを介して伝送できる。
【0004】
アプリケーションは、DSTBまたは統合型デジタルテレビ内に恒久的に常駐
してよいか、あるいはそれらは必要に応じて、および必要とされるときにデジタ
ル媒体を介してダウンロードされてよい。アプリケーションを実行するために、
デコーダは、例えばJavaアプリケーションを実行するための仮想機械(VM
)などの実行時環境を有する。 ユーザに提供されているサービスの数が急速に増加する状態で、アプリケーシ
ョンを、設計、作成、デバッグおよび試験できるようにする、アプリケーション
開発ツールに対する需要がある。このようなアプリケーションツールの例は、C
ANAL+によって供給されるMediahighway Applicati
on Workshopである。
してよいか、あるいはそれらは必要に応じて、および必要とされるときにデジタ
ル媒体を介してダウンロードされてよい。アプリケーションを実行するために、
デコーダは、例えばJavaアプリケーションを実行するための仮想機械(VM
)などの実行時環境を有する。 ユーザに提供されているサービスの数が急速に増加する状態で、アプリケーシ
ョンを、設計、作成、デバッグおよび試験できるようにする、アプリケーション
開発ツールに対する需要がある。このようなアプリケーションツールの例は、C
ANAL+によって供給されるMediahighway Applicati
on Workshopである。
【0005】
既知のアプリケーション開発ツールは、典型的には、アプリケーションをPC
またはUNIX(登録商標)ワークステーションなどのワークステーションで開 発できるようにする。アプリケーションが試験のために準備完了すると、それは DSTBなどのデジタルデコーダにダウンロードされる。 その主題が参照してここに組み込まれる本出願人の名前での国際特許出願番号
WO第98/43165号に開示されるように、受信機/デコーダ型装置に結合
されるワークステーションが、アプリケーションをデバッグするために提供され
てよい。アプリケーションをデバッグするためには、それはリンクを使用してそ
の全体として受信機/デコーダにダウンロードされる。ワークステーションでの
デバッガは、制御信号を受信器/デコーダと受け渡すために2つの追加リンクを
使用して、アプリケーションの動作を監視するおよび/または制御するために使
用される。
またはUNIX(登録商標)ワークステーションなどのワークステーションで開 発できるようにする。アプリケーションが試験のために準備完了すると、それは DSTBなどのデジタルデコーダにダウンロードされる。 その主題が参照してここに組み込まれる本出願人の名前での国際特許出願番号
WO第98/43165号に開示されるように、受信機/デコーダ型装置に結合
されるワークステーションが、アプリケーションをデバッグするために提供され
てよい。アプリケーションをデバッグするためには、それはリンクを使用してそ
の全体として受信機/デコーダにダウンロードされる。ワークステーションでの
デバッガは、制御信号を受信器/デコーダと受け渡すために2つの追加リンクを
使用して、アプリケーションの動作を監視するおよび/または制御するために使
用される。
【0006】
本発明の1つの態様に従って、アプリケーションを記憶するための(例えばメ
モリなどの)手段、記憶されているアプリケーションを実行するための(例えば
、プロセッサ、仮想機械、実行時エンジンまたはその他の任意の適切な実行時手
段または環境などの)手段、および記憶されたアプリケーションをデバッグする
際にワークステーションによって使用するためにリモートワークステーションに
デバッグメッセージをネットワーク上で通信するための(例えば、インタフェー
スなどの)手段とが提供される。
モリなどの)手段、記憶されているアプリケーションを実行するための(例えば
、プロセッサ、仮想機械、実行時エンジンまたはその他の任意の適切な実行時手
段または環境などの)手段、および記憶されたアプリケーションをデバッグする
際にワークステーションによって使用するためにリモートワークステーションに
デバッグメッセージをネットワーク上で通信するための(例えば、インタフェー
スなどの)手段とが提供される。
【0007】
これまで、おもに、簡略な1体のリンクに比較して、受信機/デコーダにネッ
トワーク化機能を提供する上で伴われる余分な複雑さのために、このような装置
は考慮されていなかった。しかしながら、いまでは、本発明に従って、アプリケ
ーションを試験するおよび/またはデバッグするというコンテキストでは、多様
な優位点が、受信機/デコーダにネットワーク機能を提供することから生じてよ
いことが理解されている。
トワーク化機能を提供する上で伴われる余分な複雑さのために、このような装置
は考慮されていなかった。しかしながら、いまでは、本発明に従って、アプリケ
ーションを試験するおよび/またはデバッグするというコンテキストでは、多様
な優位点が、受信機/デコーダにネットワーク機能を提供することから生じてよ
いことが理解されている。
【0008】
受信機/デコーダに、ネットワーク上での通信デバッグメッセージ用の手段を
提供することにより、受信機/デコーダはアプリケーション開発者の環境の一部
となることができ、その結果、例えばファイル、制御信号または情報信号が、ア
プリケーションを試験しながら、受信機/デコーダとワークステーションの間で
交換できる。これは、過去に当てはまったケースよりアプリケーションの試験に
おいて多くの柔軟性を可能にする。
提供することにより、受信機/デコーダはアプリケーション開発者の環境の一部
となることができ、その結果、例えばファイル、制御信号または情報信号が、ア
プリケーションを試験しながら、受信機/デコーダとワークステーションの間で
交換できる。これは、過去に当てはまったケースよりアプリケーションの試験に
おいて多くの柔軟性を可能にする。
【0009】
さらに、リソースは、受信機/デコーダ、ワークステーション、およびネット
ワークに接続されるその他のデバイスの間で共用されてよい。例えば、受信機/
デコーダは、ワークステーション内のハードディスクなどの外部記憶装置にネッ
トワークを介して直接的にアクセスできる。 ネットワーク化機能の提供のため、受信機/デコーダは、アプリケーションが
デバッグされている間、物理的にワークステーションから遠くてよい。ネットワ
ークは、信号の図副に備えることができ、その結果、受信機/デコーダは、それ
以外の場合に可能であるより大きな距離分離されてよい。
ワークに接続されるその他のデバイスの間で共用されてよい。例えば、受信機/
デコーダは、ワークステーション内のハードディスクなどの外部記憶装置にネッ
トワークを介して直接的にアクセスできる。 ネットワーク化機能の提供のため、受信機/デコーダは、アプリケーションが
デバッグされている間、物理的にワークステーションから遠くてよい。ネットワ
ークは、信号の図副に備えることができ、その結果、受信機/デコーダは、それ
以外の場合に可能であるより大きな距離分離されてよい。
【0010】
ここに使用されるような用語「デバッグ」は、好ましくは、アプリケーション
が、エラー、つまりアプリケーション内の「バグ」を特定できるようにするため
に制御および/または監視される。デバッグメッセージは、好ましくは、アプリ
ケーションをデバッグするための制御および/または関しメッセージを含み、そ
のメッセージは受信機/デコーダによって受信または伝送されてよい。例えば、
受信機/デコーダは、それに、アプリケーションまたは受信機/デコーダのステ
ータスについての一定の情報を送信するように命令するコマンドを受信してよく
、コマンドと情報の両方がデバッグメッセージと呼ばれる。このようにして、変
数の監視、実行の開始および停止、関数トレース、受信機/デコーダのステータ
スの監視、およびその他のデバッグ機能などのなどのデバッグ機能が実現されて
よい。受信機/デコーダは、好ましくは、アプリケーションをデバッグするため
のデバッグモードで操作できる。
が、エラー、つまりアプリケーション内の「バグ」を特定できるようにするため
に制御および/または監視される。デバッグメッセージは、好ましくは、アプリ
ケーションをデバッグするための制御および/または関しメッセージを含み、そ
のメッセージは受信機/デコーダによって受信または伝送されてよい。例えば、
受信機/デコーダは、それに、アプリケーションまたは受信機/デコーダのステ
ータスについての一定の情報を送信するように命令するコマンドを受信してよく
、コマンドと情報の両方がデバッグメッセージと呼ばれる。このようにして、変
数の監視、実行の開始および停止、関数トレース、受信機/デコーダのステータ
スの監視、およびその他のデバッグ機能などのなどのデバッグ機能が実現されて
よい。受信機/デコーダは、好ましくは、アプリケーションをデバッグするため
のデバッグモードで操作できる。
【0011】
用語「ネットワーク」は、好ましくは、デバイスにアドレスが割り当てられて
いることを暗示する.これは、好ましくは、論理ネットワーク内に3つ以上のデ
バイスを有する能力を提供し、デバイスはアドレスによって区別されている。こ
れは、例えば、2つのデバイス間の簡略な直列リンクとは異なる。好ましくは、
ネットワークは、受信機/デコーダが、ワークステーションのハードディスクな
どのリモート記憶装置でファイルにアクセスできるようにするプロトコルを有す
る。好ましくは、ネットワークは、宛先アドレスを有すSルパケットという形式
で信号を伝送する。好ましくは、受信機/デコーダは、受信機/デコーダのアド
レス(識別子)を記憶するための手段を含む。
いることを暗示する.これは、好ましくは、論理ネットワーク内に3つ以上のデ
バイスを有する能力を提供し、デバイスはアドレスによって区別されている。こ
れは、例えば、2つのデバイス間の簡略な直列リンクとは異なる。好ましくは、
ネットワークは、受信機/デコーダが、ワークステーションのハードディスクな
どのリモート記憶装置でファイルにアクセスできるようにするプロトコルを有す
る。好ましくは、ネットワークは、宛先アドレスを有すSルパケットという形式
で信号を伝送する。好ましくは、受信機/デコーダは、受信機/デコーダのアド
レス(識別子)を記憶するための手段を含む。
【0012】
アプリケーションが複数のファイルを備える場合、受信機/デコーダは、この
ような手段を持たない受信機/デコーダも提供されてよいが、外部記憶手段から
ファイルの少なくとも1つを選択的に読み取るための(例えば、インタフェース
などの)手段を備えてよい。 デバッグメッセージを通信するための手段は、好ましくは、メッセージに依存
してアプリケーションの実行を制御するために、ネットワークからデバッグメッ
セージを受信するように適応されてよい。(ワークステーションなどの)リモー
トロケーションにいるオペレータは、それによってアプリケーションの実行を制
御することができる。
ような手段を持たない受信機/デコーダも提供されてよいが、外部記憶手段から
ファイルの少なくとも1つを選択的に読み取るための(例えば、インタフェース
などの)手段を備えてよい。 デバッグメッセージを通信するための手段は、好ましくは、メッセージに依存
してアプリケーションの実行を制御するために、ネットワークからデバッグメッ
セージを受信するように適応されてよい。(ワークステーションなどの)リモー
トロケーションにいるオペレータは、それによってアプリケーションの実行を制
御することができる。
【0013】
好ましくは、メッセージは、リモートホストの識別子を含み、デバッグメッセ
ージを通信するための手段は、追加デバッグメッセージをメッセージの中で特定
されるリモートホストと通信するように適応される。 デバッグメッセージを通信するための手段は、また、あるいは代わりに、ネッ
トワークにデバッグメッセージを伝送するように適応されてよく、メッセージは
、好ましくは、アプリケーションの実行に関する情報を含む。リモートロケーシ
ョンにいるオペレータは、それによってアプリケーションの実行を監視できる。
ージを通信するための手段は、追加デバッグメッセージをメッセージの中で特定
されるリモートホストと通信するように適応される。 デバッグメッセージを通信するための手段は、また、あるいは代わりに、ネッ
トワークにデバッグメッセージを伝送するように適応されてよく、メッセージは
、好ましくは、アプリケーションの実行に関する情報を含む。リモートロケーシ
ョンにいるオペレータは、それによってアプリケーションの実行を監視できる。
【0014】
本発明の別の態様では、リモート受信機/デコーダで実行するアプリケーショ
ンをデバッグするためのワークステーションが提供され、ワークステーションは
、好ましくは、受信機/デコーダでのアプリケーションの実行を制御する、およ
び/または監視するために、ネットワーク上でデバッグメッセージを受信機/デ
コーダと通信するための(例えば、インタフェースなどの)手段を備える。
ンをデバッグするためのワークステーションが提供され、ワークステーションは
、好ましくは、受信機/デコーダでのアプリケーションの実行を制御する、およ
び/または監視するために、ネットワーク上でデバッグメッセージを受信機/デ
コーダと通信するための(例えば、インタフェースなどの)手段を備える。
【0015】
発明は、前述された形式のどれかでの受信機/デコーダ、および前述された形
式のどれかでのワークステーションを備えるアプリケーション開発ツールも提供
する。アプリケーション開発ツールは、受信機/デコーダとワークステーション
の間で通信を実現するために動作できるネット代理を含んでよい。 本発明は、前述されたようなアプリケーション開発ツールおよびワークステー
ションおよび受信機/デコーダがその上でメッセージを交換するネットワークを
備えるアプリケーション開発環境も提供する。
式のどれかでのワークステーションを備えるアプリケーション開発ツールも提供
する。アプリケーション開発ツールは、受信機/デコーダとワークステーション
の間で通信を実現するために動作できるネット代理を含んでよい。 本発明は、前述されたようなアプリケーション開発ツールおよびワークステー
ションおよび受信機/デコーダがその上でメッセージを交換するネットワークを
備えるアプリケーション開発環境も提供する。
【0016】
本発明の方法態様では、受信機/デコーダに記憶され、受信機/デコーダで実
行するアプリケーションをデバッグする方法が提供され、該方法は、記憶されて
いるアプリケーションをデバッグする際にワークステーションによって使用する
ためにネットワーク上でデバッグメッセージをリモートワークステーションに通
信することを備える。 受信機/デコーダは、好ましくは、メッセージに依存してアプリケーションの
実行を制御するために、ネットワークからデバッグメッセージを受信してよい。
該メッセージは、リモートホストの識別子を含んでよく、該方法は、メッセージ
の中で特定されるリモートホストと追加デバッグメッセージを通信することを備
える。 方法は、また、または代わりに、ネットワークにデバッグメッセージを伝送す
ることを備えてよく、メッセージは、好ましくはアプリケーションの実行に関す
る情報を含む。
行するアプリケーションをデバッグする方法が提供され、該方法は、記憶されて
いるアプリケーションをデバッグする際にワークステーションによって使用する
ためにネットワーク上でデバッグメッセージをリモートワークステーションに通
信することを備える。 受信機/デコーダは、好ましくは、メッセージに依存してアプリケーションの
実行を制御するために、ネットワークからデバッグメッセージを受信してよい。
該メッセージは、リモートホストの識別子を含んでよく、該方法は、メッセージ
の中で特定されるリモートホストと追加デバッグメッセージを通信することを備
える。 方法は、また、または代わりに、ネットワークにデバッグメッセージを伝送す
ることを備えてよく、メッセージは、好ましくはアプリケーションの実行に関す
る情報を含む。
【0017】
本発明に従って特定された従来の技術での問題点とは、受信機/デコーダでの
試験の結果として、あらゆる変更がアプリケーションに対して加えられる必要が
ある場合に、適切な変更がアプリケーション開発ツールで加えられなければなら
ず、アプリケーションは常駐として再コンパイルされなければならず、それから
常駐アプリケーション全体および仮想機械がデコーダにダウンロードされなけれ
ばならず、そのプロセスが時間を要し、扱いにくい可能性があるという点である
。
試験の結果として、あらゆる変更がアプリケーションに対して加えられる必要が
ある場合に、適切な変更がアプリケーション開発ツールで加えられなければなら
ず、アプリケーションは常駐として再コンパイルされなければならず、それから
常駐アプリケーション全体および仮想機械がデコーダにダウンロードされなけれ
ばならず、そのプロセスが時間を要し、扱いにくい可能性があるという点である
。
【0018】
前述された形式のどれかで受信機/デコーダとは無関係に、あるいは受信機/
デコーダに依存してのどちらかで提供されてよい本発明の別の態様に従って、ア
プリケーションを実行するための手段を備える受信機/デコーダが提供され、ア
プリケーションは複数のファイル、およびリモートワークステーションからファ
イルの少なくとも1つを選択的に読み取るための手段を備える。
デコーダに依存してのどちらかで提供されてよい本発明の別の態様に従って、ア
プリケーションを実行するための手段を備える受信機/デコーダが提供され、ア
プリケーションは複数のファイル、およびリモートワークステーションからファ
イルの少なくとも1つを選択的に読み取るための手段を備える。
【0019】
本発明は、アプリケーションを実行するための手段を備える受信機/デコーダ
も提供し、アプリケーションは、複数のファイル、および外部記憶装置手段から
ファイルの内の少なくとも1つを選択的に読み取るための手段を備える。好まし
くは、外部記憶装置手段は、ネットワークに接続され、受信機/デコーダは、ネ
ットワークからファイルの内の少なくとも1つを選択的に読み取るための手段を
備える。
も提供し、アプリケーションは、複数のファイル、および外部記憶装置手段から
ファイルの内の少なくとも1つを選択的に読み取るための手段を備える。好まし
くは、外部記憶装置手段は、ネットワークに接続され、受信機/デコーダは、ネ
ットワークからファイルの内の少なくとも1つを選択的に読み取るための手段を
備える。
【0020】
ネットワークから選択的にファイルを読み取ることができる受信機/デコーダ
を提供することによって、アプリケーションの部分は、例えば、パーツのいくつ
かの修正に続いて、受信機/デコーダによって読み取られてよい。 任意の態様では、アプリケーションを実行するための手段は、プロセッサ、仮
想機械、実行時エンジン、または別の適切な実行時手段または環境などの実行時
手段であってよく、ネットワークまたは外部記憶装置手段からファイルの内の少
なくとも1つを読み取るための手段は、入出力ポートおよび関連付けられたドラ
イバであってよい。外部記憶手段は、コンピュータのハードディスクまたはネッ
トワークファイル記憶装置、あるいは任意のそれ以外の記憶媒体であってよい。
を提供することによって、アプリケーションの部分は、例えば、パーツのいくつ
かの修正に続いて、受信機/デコーダによって読み取られてよい。 任意の態様では、アプリケーションを実行するための手段は、プロセッサ、仮
想機械、実行時エンジン、または別の適切な実行時手段または環境などの実行時
手段であってよく、ネットワークまたは外部記憶装置手段からファイルの内の少
なくとも1つを読み取るための手段は、入出力ポートおよび関連付けられたドラ
イバであってよい。外部記憶手段は、コンピュータのハードディスクまたはネッ
トワークファイル記憶装置、あるいは任意のそれ以外の記憶媒体であってよい。
【0021】
ここに使用される用語「受信機/デコーダ」は、例えばテレビ信号および/ま
たは無線信号などの、なんらかのそれ以外の手段によって放送または伝送されて
よい、符号化された信号または符号化されていない信号のどちらかを受信するた
めの受信機を言外に意味してよい。用語は、または、受信された信号を復号する
ためのデコーダも言外に意味してよい。このような受信機/デコーダの実施形態
は、例えば、「セットトップボックス」内で受信された信号を複合するために受
信機と一体化したデコーダを含んでよく、このようなデコーダは、物理的に別個
の受信機と組み合わされて機能するか、あるいはこのようなデコーダはウェブブ
ラウザ、ビデオレコーダまたはテレビなどの追加の機能を含む。ここに使用され
るように、用語「受信機/デコーダ」は、アプリケーションを試験する、および
/またはデバッグするために使用されてよい受信機/デコーダ型装置も含む。
たは無線信号などの、なんらかのそれ以外の手段によって放送または伝送されて
よい、符号化された信号または符号化されていない信号のどちらかを受信するた
めの受信機を言外に意味してよい。用語は、または、受信された信号を復号する
ためのデコーダも言外に意味してよい。このような受信機/デコーダの実施形態
は、例えば、「セットトップボックス」内で受信された信号を複合するために受
信機と一体化したデコーダを含んでよく、このようなデコーダは、物理的に別個
の受信機と組み合わされて機能するか、あるいはこのようなデコーダはウェブブ
ラウザ、ビデオレコーダまたはテレビなどの追加の機能を含む。ここに使用され
るように、用語「受信機/デコーダ」は、アプリケーションを試験する、および
/またはデバッグするために使用されてよい受信機/デコーダ型装置も含む。
【0022】
好ましくは、受信機/デコーダは、ファイルが記憶されるロケーションの識別
子を含むメッセージを受信するように適応される。好ましくは、受信機/デコー
ダは、ネットワークまたは外部記憶装置手段から個々のファイルを読み取るよう
に適応され、その結果必要以上のデータは転送されない。 アプリケーションは、必ずしもアプリケーションを実行するために必要とされ
ないいくつかのファイルを含むことがあり、このようにしてアプリケーションの
全体を一度にダウンロードするよりむしろ、受信機/デコーダは、それがアプリ
ケーションを実行するために必要とされるので、好ましくは前記少なくとも1つ
のファイルを読み取るように適応される。
子を含むメッセージを受信するように適応される。好ましくは、受信機/デコー
ダは、ネットワークまたは外部記憶装置手段から個々のファイルを読み取るよう
に適応され、その結果必要以上のデータは転送されない。 アプリケーションは、必ずしもアプリケーションを実行するために必要とされ
ないいくつかのファイルを含むことがあり、このようにしてアプリケーションの
全体を一度にダウンロードするよりむしろ、受信機/デコーダは、それがアプリ
ケーションを実行するために必要とされるので、好ましくは前記少なくとも1つ
のファイルを読み取るように適応される。
【0023】
受信機/デコーダは、更新されたファイルを読み取るように適応されてよく、
その結果、ファイルが修正される場合、受信機/デコーダは修正済みファイルで
更新されるだろう。 外部記憶装置手段は、ワークステーション、例えば、アプリケーションを編集
するために使用されるワークステーションの一部であってよい。外部記憶装置手
段は、ネットワーク上で取り付けられるファイル記憶装置であってもよい。受信
機/デコーダがネットワークスタックを有していない可能性があるという事実を
補償するために、受信機/デコーダは、そのネットワークがワークステーション
上でシミュレーションされたネットワークスタックをスタックするにつれて使用
するように適応されてよい。代わりに、受信機/デコーダは、ネットワークスタ
ックを提供されてよい。
その結果、ファイルが修正される場合、受信機/デコーダは修正済みファイルで
更新されるだろう。 外部記憶装置手段は、ワークステーション、例えば、アプリケーションを編集
するために使用されるワークステーションの一部であってよい。外部記憶装置手
段は、ネットワーク上で取り付けられるファイル記憶装置であってもよい。受信
機/デコーダがネットワークスタックを有していない可能性があるという事実を
補償するために、受信機/デコーダは、そのネットワークがワークステーション
上でシミュレーションされたネットワークスタックをスタックするにつれて使用
するように適応されてよい。代わりに、受信機/デコーダは、ネットワークスタ
ックを提供されてよい。
【0024】
アプリケーションを開始するために、受信機/デコーダは、好ましくは、外部
記憶装置手段からブートファイルをロードするように適応される。 前述された形式のどれかで独立してまたはワークステーションに依存してのど
ちらかで提供されてよい本発明の別の態様に従って、受信機/デコーダ上で実行
されるアプリケーションを記憶するための(ハードディスクまたはその他の記憶
装置媒体などの)記憶装置手段を備えるワークステーションが提供され、該アプ
リケーションは複数のファイル、およびネットワークによってワークステーショ
ンに接続される受信機/デコーダによるファイルの内の少なくとも1つへのアク
セスを可能にするための(例えば、入出力ポートおよび関連付けられたドライバ
などの)手段を備える。
記憶装置手段からブートファイルをロードするように適応される。 前述された形式のどれかで独立してまたはワークステーションに依存してのど
ちらかで提供されてよい本発明の別の態様に従って、受信機/デコーダ上で実行
されるアプリケーションを記憶するための(ハードディスクまたはその他の記憶
装置媒体などの)記憶装置手段を備えるワークステーションが提供され、該アプ
リケーションは複数のファイル、およびネットワークによってワークステーショ
ンに接続される受信機/デコーダによるファイルの内の少なくとも1つへのアク
セスを可能にするための(例えば、入出力ポートおよび関連付けられたドライバ
などの)手段を備える。
【0025】
本発明の別の態様に従って、アプリケーションを記憶するための(ハードディ
スクまたはその他の記憶媒体などの)記憶装置手段を備えるワークステーション
が提供され、該アプリケーションは、複数のファイル、および受信機/デコーダ
によるファイルの少なくとも1つへのアクセスを可能にするための(入出力ポー
トおよび関連付けられたドライバなどの)手段を備える。 前記少なくとも1つのファイルへのアクセスを可能にするための手段は、個々
のファイルを読み取ることができるように適応されてよい。ワークステーション
は、さらに、アプリケーションを編集するための手段を備えてよい。
スクまたはその他の記憶媒体などの)記憶装置手段を備えるワークステーション
が提供され、該アプリケーションは、複数のファイル、および受信機/デコーダ
によるファイルの少なくとも1つへのアクセスを可能にするための(入出力ポー
トおよび関連付けられたドライバなどの)手段を備える。 前記少なくとも1つのファイルへのアクセスを可能にするための手段は、個々
のファイルを読み取ることができるように適応されてよい。ワークステーション
は、さらに、アプリケーションを編集するための手段を備えてよい。
【0026】
前述された形式のどれかで、独立してまたはアプリケーション開発ツールに依
存してのどちらかで提供されてよい発明の別の態様に従って、アプリケーション
を編集するためのワークステーションを備えるアプリケーション開発ツール、お
よび該アプリケーションを実行するための受信機/デコーダが提供され、そこで
は受信機/デコーダは、ネットワークファイル記憶装置からアプリケーションの
少なくとも一部を選択的に読み取るための手段を有し、ワークステーションは、
受信機/デコーダに対する該一部または書く一部の通信を開始するための手段を
有する。
存してのどちらかで提供されてよい発明の別の態様に従って、アプリケーション
を編集するためのワークステーションを備えるアプリケーション開発ツール、お
よび該アプリケーションを実行するための受信機/デコーダが提供され、そこで
は受信機/デコーダは、ネットワークファイル記憶装置からアプリケーションの
少なくとも一部を選択的に読み取るための手段を有し、ワークステーションは、
受信機/デコーダに対する該一部または書く一部の通信を開始するための手段を
有する。
【0027】
本発明の別の態様に従って、アプリケーションを編集するためのワークステー
ション.および該アプリケーションを実行するための受信機/デコーダを備える
アプリケーション開発ツールが提供され、そこでは該受信機/デコーダがワーク
ステーションからアプリケーションの少なくとも一部を選択的に読み取るための
手段を有し、ワークステーションが受信機/デコーダに対して該一部または各一
部を通信するための手段を有する。ワークステーションは、さらに、アプリケー
ションを記憶するためのハードディスクまたはその他の記憶装置媒体などの記憶
装置手段を備えてよい。
ション.および該アプリケーションを実行するための受信機/デコーダを備える
アプリケーション開発ツールが提供され、そこでは該受信機/デコーダがワーク
ステーションからアプリケーションの少なくとも一部を選択的に読み取るための
手段を有し、ワークステーションが受信機/デコーダに対して該一部または各一
部を通信するための手段を有する。ワークステーションは、さらに、アプリケー
ションを記憶するためのハードディスクまたはその他の記憶装置媒体などの記憶
装置手段を備えてよい。
【0028】
前記態様では、アプリケーションは、複数のファイルを備えてよい。受信機/
デコーダは、記憶装置手段から個々のファイルを読み取るように適応されてよい
。受信機/デコーダは、それがアプリケーションを実行することを必要とされる
につれて、ファイルを読み取るように適応されてよい。ワークステーションは、
ファイルを更新するように適応されてよく、受信機/デコーダは、いったん更新
されると前記ファイルを読み取るように適応されてよい。
デコーダは、記憶装置手段から個々のファイルを読み取るように適応されてよい
。受信機/デコーダは、それがアプリケーションを実行することを必要とされる
につれて、ファイルを読み取るように適応されてよい。ワークステーションは、
ファイルを更新するように適応されてよく、受信機/デコーダは、いったん更新
されると前記ファイルを読み取るように適応されてよい。
【0029】
更新されたファイルが受信機/デコーダによって使用されることを保証するた
めに、受信機/デコーダはファイルの最新のバージョンを読み取るように適応さ
れてよい。さらに、または代わりに、ワークステーションは、ファイル、例えば
更新されたファイルの旧バージョンを廃棄するように受信機/デコーダに命令す
るように適応されてよく、その結果受信機/デコーダは、次にそのファイルを必
要とするとき、更新されたファイルがワークステーションから読み出されるだろ
う。
めに、受信機/デコーダはファイルの最新のバージョンを読み取るように適応さ
れてよい。さらに、または代わりに、ワークステーションは、ファイル、例えば
更新されたファイルの旧バージョンを廃棄するように受信機/デコーダに命令す
るように適応されてよく、その結果受信機/デコーダは、次にそのファイルを必
要とするとき、更新されたファイルがワークステーションから読み出されるだろ
う。
【0030】
アプリケーション開発ツールは、さらに、受信機/デコーダとネットワーク間
の通信を実現するために動作できるネット代理を含んでよい。さらに、ワークス
テーションは、典型的には、ネットワークにも接続される。 アプリケーション開発ツールの好ましい実施形態では、ワークステーションは
、さらに、受信機/デコーダ上でのアプリケーションの実行を制御する、および
/または監視するために操作できるデバッガを備える。該デバッガおよびアプリ
ケーションは、ネットワーク上で制御信号を交換してよい。特に、ファイルおよ
び制御信号は、同じネットワーク上で搬送されてよい。
の通信を実現するために動作できるネット代理を含んでよい。さらに、ワークス
テーションは、典型的には、ネットワークにも接続される。 アプリケーション開発ツールの好ましい実施形態では、ワークステーションは
、さらに、受信機/デコーダ上でのアプリケーションの実行を制御する、および
/または監視するために操作できるデバッガを備える。該デバッガおよびアプリ
ケーションは、ネットワーク上で制御信号を交換してよい。特に、ファイルおよ
び制御信号は、同じネットワーク上で搬送されてよい。
【0031】
本発明の方法態様に従って、アプリケーションを、該アプリケーションを編集
するためのワークステーションからアプリケーションを実行するための受信機/
デコーダへ転送する方法が提供され、アプリケーションは複数のファイルを備え
、ワークステーションから受信機/デコーダに個々のファイルを(典型的にはネ
ットワーク上で)転送することを備える。該ファイルは、それがアプリケーショ
ンを実行するために必要とされるときだけ転送されてよい。該方法は、さらに、
ファイルを更新すること、および受信機/デコーダに更新されたファイルを転送
することとを備えてよい。
するためのワークステーションからアプリケーションを実行するための受信機/
デコーダへ転送する方法が提供され、アプリケーションは複数のファイルを備え
、ワークステーションから受信機/デコーダに個々のファイルを(典型的にはネ
ットワーク上で)転送することを備える。該ファイルは、それがアプリケーショ
ンを実行するために必要とされるときだけ転送されてよい。該方法は、さらに、
ファイルを更新すること、および受信機/デコーダに更新されたファイルを転送
することとを備えてよい。
【0032】
別の方法態様に従って、受信機/デコーダでアプリケーションを実行する方法
が提供され、該アプリケーションは複数のファイルを備え、ファイルを、それら
がアプリケーションを実行するために必要とされるにつれて受信機/デコーダに
転送することを備える。
が提供され、該アプリケーションは複数のファイルを備え、ファイルを、それら
がアプリケーションを実行するために必要とされるにつれて受信機/デコーダに
転送することを備える。
【0033】
別の方法態様に従って、受信機/デコーダでアプリケーションを実行する方法
が提供され、該アプリケーションはブートファイルおよび少なくとも1つの追加
ファイルを備え、該方法は、 ブートファイルを受信機/デコーダに(オプションでネットワーク上で)転送
することと、 該ブートファイルを受信機/デコーダ内で実行することと、 該少なくとも1つの追加ファイルを、それが必要とされるときに転送すること
と、 を備える。 ブートファイルの少なくとも1つおよび該少なくとも1つのその他のファイル
が、ネットワークファイル記憶装置から転送されてよい。
が提供され、該アプリケーションはブートファイルおよび少なくとも1つの追加
ファイルを備え、該方法は、 ブートファイルを受信機/デコーダに(オプションでネットワーク上で)転送
することと、 該ブートファイルを受信機/デコーダ内で実行することと、 該少なくとも1つの追加ファイルを、それが必要とされるときに転送すること
と、 を備える。 ブートファイルの少なくとも1つおよび該少なくとも1つのその他のファイル
が、ネットワークファイル記憶装置から転送されてよい。
【0034】
本発明は、前述された方法のどれかを実行するためのプログラムをその上に記
憶していたコンピュータ読取り可能媒体、および前述された方法のどれかを実行
するためのプログラムを備えるコンピュータプログラム製品も提供する。
憶していたコンピュータ読取り可能媒体、および前述された方法のどれかを実行
するためのプログラムを備えるコンピュータプログラム製品も提供する。
【0035】
本発明は、実質的には添付図面に関して、および添付図面で示されるように装
置、および添付図面の図7に関して実質的に記述されるように方法も提供する。 ある態様の特徴はその他の態様に適用されてよい。つまり、装置特徴は、方法
態様に適用されてよいか、方法態様が装置特徴に適用されてよい。
置、および添付図面の図7に関して実質的に記述されるように方法も提供する。 ある態様の特徴はその他の態様に適用されてよい。つまり、装置特徴は、方法
態様に適用されてよいか、方法態様が装置特徴に適用されてよい。
【0036】
デジタルテレビシステムの概要
デジタルテレビシステム1の概要は図1に示される。発明は、圧縮されたデジ
タル信号を伝送するために既知のMPEG−2圧縮システムを使用する大部分は
従来のデジタルテレビシステム2を含む。さらに詳細には、放送センタのMPE
G−2圧縮器3がデジタル信号ストリーム(典型的には、ビデオ信号のストリー
ム)を受信する。該圧縮器3は、リンケージ5によって、マルチプレクサおよび
スクランブラ4に接続される。
タル信号を伝送するために既知のMPEG−2圧縮システムを使用する大部分は
従来のデジタルテレビシステム2を含む。さらに詳細には、放送センタのMPE
G−2圧縮器3がデジタル信号ストリーム(典型的には、ビデオ信号のストリー
ム)を受信する。該圧縮器3は、リンケージ5によって、マルチプレクサおよび
スクランブラ4に接続される。
【0037】
マルチプレクサ4は、複数の追加入力信号を受信し、トランスポートストリー
ムをアセンブルし、言うまでもなく電気通信リンクを含む多岐に渡る形式をとる
ことができるリンケージ7を介して圧縮されたデジタル信号を放送センタの送信
機6に伝送する。該送信機6は、衛星トランスポンダ9に向かってアップリンク
8を介して電磁信号を伝送し、そこではそれらは電子的に処理され、概念上のダ
ウンリンク10を介して、従来はエンドユーザによって所有または賃貸される放
物線地球受信機12の形を取る地球受信機12に一斉送信される。地上放送、ケ
ーブル伝送、組み合わされた衛星/ケーブルリンク、電話網等のデータの伝送用
のその他のトランスポートチャネルも、言うまでもなく可能である。
ムをアセンブルし、言うまでもなく電気通信リンクを含む多岐に渡る形式をとる
ことができるリンケージ7を介して圧縮されたデジタル信号を放送センタの送信
機6に伝送する。該送信機6は、衛星トランスポンダ9に向かってアップリンク
8を介して電磁信号を伝送し、そこではそれらは電子的に処理され、概念上のダ
ウンリンク10を介して、従来はエンドユーザによって所有または賃貸される放
物線地球受信機12の形を取る地球受信機12に一斉送信される。地上放送、ケ
ーブル伝送、組み合わされた衛星/ケーブルリンク、電話網等のデータの伝送用
のその他のトランスポートチャネルも、言うまでもなく可能である。
【0038】
受信機12によって受信される信号は、エンドユーザによって所有されるか、
あるいは賃貸される統合型受信機/デコーダ13に伝送され、エンドユーザのテ
レビセット14に接続される。該受信機/デコーダ13は、圧縮済みのMPEG
−2信号を、テレビセット14用のテレビ信号に復号する。別個の受信機/デコ
ーダは、図1に示されているが、受信機/デコーダは、統合型デジタルテレビの
一部であってもよい。ここで使用されるように、用語「受信機/デコーダ」は、
セットトップボックス、およびそれと統合される受信機/デコーダを有するテレ
ビなどの別個の受信機/デコーダを含む。
あるいは賃貸される統合型受信機/デコーダ13に伝送され、エンドユーザのテ
レビセット14に接続される。該受信機/デコーダ13は、圧縮済みのMPEG
−2信号を、テレビセット14用のテレビ信号に復号する。別個の受信機/デコ
ーダは、図1に示されているが、受信機/デコーダは、統合型デジタルテレビの
一部であってもよい。ここで使用されるように、用語「受信機/デコーダ」は、
セットトップボックス、およびそれと統合される受信機/デコーダを有するテレ
ビなどの別個の受信機/デコーダを含む。
【0039】
マルチチャネルシステムでは、マルチプレクサ4は、数多くの並列ソースから
受信される音声情報およびビデオ情報を取扱、送信機6と対話し、対応する数多
くのチャネルに沿って情報を一斉送信する。視聴覚情報に加えて、メッセージま
たはアプリケーション、あるいはその他の種類のデジタルデータが、伝送された
デジタル音声およびビデオ情報でインタレースされるこれらのチャネルのいくつ
かまたはすべてで導入されてよい。
受信される音声情報およびビデオ情報を取扱、送信機6と対話し、対応する数多
くのチャネルに沿って情報を一斉送信する。視聴覚情報に加えて、メッセージま
たはアプリケーション、あるいはその他の種類のデジタルデータが、伝送された
デジタル音声およびビデオ情報でインタレースされるこれらのチャネルのいくつ
かまたはすべてで導入されてよい。
【0040】
条件付きアクセスシステム15は、マルチプレクサ4および受信機/デコーダ
13に接続され、部分的には放送センタ内にあり、部分的には受信機/デコーダ
内にある。それは、1つまたは複数の放送供給業者からエンドユーザが、デジタ
ルテレビ放送にアクセスできるようにする。商業的なオファー(すなわち、放送
供給業者によって販売される1つまたは複数のテレビ番組)に関係するメッセー
ジを解読することができるスマートカードは、受信機/デコーダ13に挿入でき
る。受信機/デコーダ13およびスマートカードを使用すると、エンドユーザは
、加入モードまたは有料視聴モードのどちらかで商業的なオファーを購入してよ
い。ここで使用されるように、用語「スマートカード」は、あらゆるチップベー
スのカードデバイス、または例えばマイクロプロセッサおよび/またはメモリ記
憶装置などの類似した機能および性能、処理のオブジェクトを含むが、排他的に
含まない。この用語に含まれているのは、例えば、多くの場合TVデコーダシス
テムで使用されるようなキー形デバイスなどのカードに代替の物理形式を有する
デバイスである。
13に接続され、部分的には放送センタ内にあり、部分的には受信機/デコーダ
内にある。それは、1つまたは複数の放送供給業者からエンドユーザが、デジタ
ルテレビ放送にアクセスできるようにする。商業的なオファー(すなわち、放送
供給業者によって販売される1つまたは複数のテレビ番組)に関係するメッセー
ジを解読することができるスマートカードは、受信機/デコーダ13に挿入でき
る。受信機/デコーダ13およびスマートカードを使用すると、エンドユーザは
、加入モードまたは有料視聴モードのどちらかで商業的なオファーを購入してよ
い。ここで使用されるように、用語「スマートカード」は、あらゆるチップベー
スのカードデバイス、または例えばマイクロプロセッサおよび/またはメモリ記
憶装置などの類似した機能および性能、処理のオブジェクトを含むが、排他的に
含まない。この用語に含まれているのは、例えば、多くの場合TVデコーダシス
テムで使用されるようなキー形デバイスなどのカードに代替の物理形式を有する
デバイスである。
【0041】
前述されたように、システムにより伝送される番組は、マルチプレクサ4によ
ってスクランブルされ、条件および暗号化キーがアクセス制御システム15によ
って決定される指定される伝送に適用される。このようにしてスクランブルされ
たデータの伝送は、有料テレビシステムの分野では周知である。典型的には、ス
クランブルされたデータは、データを逆スクランブルするための制御ワードとと
もに伝送され、制御ワードそれ自体は、いわゆる利用キーで暗号化され、暗号化
された形式で伝送される。
ってスクランブルされ、条件および暗号化キーがアクセス制御システム15によ
って決定される指定される伝送に適用される。このようにしてスクランブルされ
たデータの伝送は、有料テレビシステムの分野では周知である。典型的には、ス
クランブルされたデータは、データを逆スクランブルするための制御ワードとと
もに伝送され、制御ワードそれ自体は、いわゆる利用キーで暗号化され、暗号化
された形式で伝送される。
【0042】
それから、スクランブルされたデータおよび暗号化された制御ワードは、暗号
化された制御ワードを解読し、その後で伝送されたデータを逆スクランブルする
ために、デコーダに差し込まれたスマートカードに記憶される利用キーの同等物
にアクセスできるデコーダ13によって受信される。支払済みの加入者は、伝送
の視聴を可能とするように、例えば、放送月次ECM(資格管理メッセージ)の
中で、暗号化された制御ワードを解読するために必要な利用キーを受信するだろ
う。
化された制御ワードを解読し、その後で伝送されたデータを逆スクランブルする
ために、デコーダに差し込まれたスマートカードに記憶される利用キーの同等物
にアクセスできるデコーダ13によって受信される。支払済みの加入者は、伝送
の視聴を可能とするように、例えば、放送月次ECM(資格管理メッセージ)の
中で、暗号化された制御ワードを解読するために必要な利用キーを受信するだろ
う。
【0043】
やはりマルチプレクサ4および受信機/デコーダ13に接続され、再び部分的
に放送センタ内に位置し、部分的にデコーダ内にあるる対話型システム16は、
エンドユユーザに、変復調されたバックチャネル17を介して多様なアプリケー
ションと対話させる。変復調されたバックチャネルは、条件付きアクセスシステ
ム15で使用される通信のためにも使用されてよい。例えば視聴者が伝送センタ
とただちに通信し、ある特定のイベントを見る、アプリケーションをダウンロー
ドする等のための許可を要求できるようにするために、対話型システムが使用さ
れてよい。
に放送センタ内に位置し、部分的にデコーダ内にあるる対話型システム16は、
エンドユユーザに、変復調されたバックチャネル17を介して多様なアプリケー
ションと対話させる。変復調されたバックチャネルは、条件付きアクセスシステ
ム15で使用される通信のためにも使用されてよい。例えば視聴者が伝送センタ
とただちに通信し、ある特定のイベントを見る、アプリケーションをダウンロー
ドする等のための許可を要求できるようにするために、対話型システムが使用さ
れてよい。
【0044】
図2は、本発明のデジタルテレビシステムの対話型テレビシステム16の一般
的なアーキテクチャを示す。 例えば、対話システム16は、エンドユーザが、画面上のカタログから商品を
購入し、ローカルニュースおよび天気図をオンデマンドで照会し、自分達のテレ
ビセットを通してゲームをプレイできるようにする。 対話型システム4000は、概要で4つの主要な要素を備える。 ・放送供給業者が、アプリケーションを作成、開発、デバッグおよび試験できる
ようにするための放送センタまたはそれ以外のどこかにあるオーサリングツール
4004 ・放送供給業者が、エンドユーザに放送されるMPEG−2トランスポートスト
リーム(典型的にはその私用セクション)に挿入するためにマルチプレクサおよ
びスクランブラ4への送達のために、アプリケーションおよびデータを作成、認
証およびフォーマットできるようにするために該オーサリングツール4004に
接続される、放送センタにあるアプリケーションおよびデータサーバ4006 ・アプリケーションを受信、認証、復元し、実行のためにデコーダ13の作業メ
モリの中にロードできるようにするために、エンドユーザによって所有または賃
貸される受信機/デコーダ13内にインストールされる実行可能コードである、
実行時エンジン(RTE)4008を含む仮想機械。該エンジン4008は、ハ
ードウェアおよびオペレーティングシステムから独立している。 ・サーバ4006に、エンドユーザの要求時にMPEG−2トランスポートスト
リームにデータおよびアプリケーションを挿入するように命令する信号を可能に
するための、受信機/デコーダ13とアプリケーションとデータサーバ4006
間の変復調されたバックチャネル17
的なアーキテクチャを示す。 例えば、対話システム16は、エンドユーザが、画面上のカタログから商品を
購入し、ローカルニュースおよび天気図をオンデマンドで照会し、自分達のテレ
ビセットを通してゲームをプレイできるようにする。 対話型システム4000は、概要で4つの主要な要素を備える。 ・放送供給業者が、アプリケーションを作成、開発、デバッグおよび試験できる
ようにするための放送センタまたはそれ以外のどこかにあるオーサリングツール
4004 ・放送供給業者が、エンドユーザに放送されるMPEG−2トランスポートスト
リーム(典型的にはその私用セクション)に挿入するためにマルチプレクサおよ
びスクランブラ4への送達のために、アプリケーションおよびデータを作成、認
証およびフォーマットできるようにするために該オーサリングツール4004に
接続される、放送センタにあるアプリケーションおよびデータサーバ4006 ・アプリケーションを受信、認証、復元し、実行のためにデコーダ13の作業メ
モリの中にロードできるようにするために、エンドユーザによって所有または賃
貸される受信機/デコーダ13内にインストールされる実行可能コードである、
実行時エンジン(RTE)4008を含む仮想機械。該エンジン4008は、ハ
ードウェアおよびオペレーティングシステムから独立している。 ・サーバ4006に、エンドユーザの要求時にMPEG−2トランスポートスト
リームにデータおよびアプリケーションを挿入するように命令する信号を可能に
するための、受信機/デコーダ13とアプリケーションとデータサーバ4006
間の変復調されたバックチャネル17
【0045】
対話型テレビシステムは、受信機/デコーダの機能、およびその中に含まれる
多様なデバイスを制御する「アプリケーション」を使用して動作する。アプリケ
ーションは、「リソースファイル」としてエンジン4008で表される。「モジ
ュール」は、リソースファイルおよびデータの集合である。受信機/デコーダの
「メモリ量」は、モジュール用の記憶装置空間である。モジュールは、MPEG
−2トランスポートシステムから受信機/デコーダ13にダウンロードされてよ
い。
多様なデバイスを制御する「アプリケーション」を使用して動作する。アプリケ
ーションは、「リソースファイル」としてエンジン4008で表される。「モジ
ュール」は、リソースファイルおよびデータの集合である。受信機/デコーダの
「メモリ量」は、モジュール用の記憶装置空間である。モジュールは、MPEG
−2トランスポートシステムから受信機/デコーダ13にダウンロードされてよ
い。
【0046】
受信機/デコーダ
図3を参照すると、受信機/デコーダ13またはセットトップボックスの要素
がここで説明されるだろう。この図に図示されている要素は、機能ブロックとい
う点で説明されるだろう。 受信機/デコーダ13は、関連付けられるメモリ要素を含み、直列インタフェ
ース21、並列インタフェース22、(図1のモデムバックチャネル17に接続
される)モデム23、およびデコーダの前面パネル上のスイッチ接触子24から
入力されるデータを受け入れるように適応される中央処理装置20を備える。
がここで説明されるだろう。この図に図示されている要素は、機能ブロックとい
う点で説明されるだろう。 受信機/デコーダ13は、関連付けられるメモリ要素を含み、直列インタフェ
ース21、並列インタフェース22、(図1のモデムバックチャネル17に接続
される)モデム23、およびデコーダの前面パネル上のスイッチ接触子24から
入力されるデータを受け入れるように適応される中央処理装置20を備える。
【0047】
受信機/デコーダは、さらに、制御装置26を介して赤外線リモコン装置25
から入力を受け取るように適応され、それぞれバンクスマートカードまたは加入
スマートカード29、30を読み取るように適応される2台のスマートカード読
取り装置27、28も所有する。加入スマートカード読取り装置28は、差し込
まれた加入者カード30と、および条件突きアクセス装置29と係合し、暗号化
された放送信号を逆スクランブルできるようにするために、必要な制御ワードを
デマルチプレクサ/解読器30に供給する。デコーダは、装置30によって濾波
され、逆多重化される前に、衛星伝送を受信し、復調するために、従来のチュー
ナ31および復調器32も含む。
から入力を受け取るように適応され、それぞれバンクスマートカードまたは加入
スマートカード29、30を読み取るように適応される2台のスマートカード読
取り装置27、28も所有する。加入スマートカード読取り装置28は、差し込
まれた加入者カード30と、および条件突きアクセス装置29と係合し、暗号化
された放送信号を逆スクランブルできるようにするために、必要な制御ワードを
デマルチプレクサ/解読器30に供給する。デコーダは、装置30によって濾波
され、逆多重化される前に、衛星伝送を受信し、復調するために、従来のチュー
ナ31および復調器32も含む。
【0048】
受信機/デコーダ内でのデータの処理は、通常、中央処理装置20によって取
り扱われる。図4は、受信機/デコーダの中央処理装置20のソフトウェアアー
キテクチャを示す。図4に関して、ソフトウェアアーキテクチャは、実行時エン
ジン4008、デバイスマネージャ4068、および複数のデバイス4062お
よび1つまたは複数のアプリケーション4056を実行するためのデバイスドラ
イバ4066を備える。
り扱われる。図4は、受信機/デコーダの中央処理装置20のソフトウェアアー
キテクチャを示す。図4に関して、ソフトウェアアーキテクチャは、実行時エン
ジン4008、デバイスマネージャ4068、および複数のデバイス4062お
よび1つまたは複数のアプリケーション4056を実行するためのデバイスドラ
イバ4066を備える。
【0049】
この説明で使用されるように、アプリケーションは、好ましくは、受信機/デ
コーダ13の高水準機能を制御するための好ましくはコンピュータの一部である
。例えば、エンドユーザがリモコン装置25の焦点をテレビセット14の画面上
に見られるボタンオブジェクトの上に配置し、妥当性検査キーを押すと、ボタン
に関連付けられた命令シーケンスが実行される。
コーダ13の高水準機能を制御するための好ましくはコンピュータの一部である
。例えば、エンドユーザがリモコン装置25の焦点をテレビセット14の画面上
に見られるボタンオブジェクトの上に配置し、妥当性検査キーを押すと、ボタン
に関連付けられた命令シーケンスが実行される。
【0050】
対話型アプリケーションがメニューを提示し、エンドユーザの要求でコマンド
を実行し、アプリケーションの目的に関係するデータを提供する。アプリケーシ
ョンは常駐アプリケーション、すなわち受信機/デコーダ13のROM(または
FLASHまたはその他の不揮発性メモリ)に記憶される、あるいは受信機/デ
コーダ13のRAMまたはFLASHメモリに一斉送信され、ダウンロードされ
るかのどちらかであってよい。
を実行し、アプリケーションの目的に関係するデータを提供する。アプリケーシ
ョンは常駐アプリケーション、すなわち受信機/デコーダ13のROM(または
FLASHまたはその他の不揮発性メモリ)に記憶される、あるいは受信機/デ
コーダ13のRAMまたはFLASHメモリに一斉送信され、ダウンロードされ
るかのどちらかであってよい。
【0051】
アプリケーションは、受信機/デコーダ13内のメモリロケーションに記憶さ
れ、リソースファイルとして表される。該リソースファイルは、前述された特許
明細書中にさらに詳しく説明されるように、例えば、グラフィクオブジェクト記
述装置ファイル、可変ブロック装置ファイル、命令シーケンスファイル、アプリ
ケーションファイルおよびデータファイルを備えてよい。
れ、リソースファイルとして表される。該リソースファイルは、前述された特許
明細書中にさらに詳しく説明されるように、例えば、グラフィクオブジェクト記
述装置ファイル、可変ブロック装置ファイル、命令シーケンスファイル、アプリ
ケーションファイルおよびデータファイルを備えてよい。
【0052】
受信機/デコーダは、RAMボリューム、FLASHボリューム、およびRO
Mボリュームに分割されるメモリを含むが、この物理的な編成は論理的な編成と
は異なる。メモリは、さらに、多様なインタフェースに関連つけられるメモリボ
リュームに分割されてよい。ある観点からは、メモリは、ハードウェアの一部と
して見なすことができる。別の観点からは、メモリは、ハードウェアは別にして
、示されているシステムの全体をサポートする、または含むとして見なすことが
できる。
Mボリュームに分割されるメモリを含むが、この物理的な編成は論理的な編成と
は異なる。メモリは、さらに、多様なインタフェースに関連つけられるメモリボ
リュームに分割されてよい。ある観点からは、メモリは、ハードウェアの一部と
して見なすことができる。別の観点からは、メモリは、ハードウェアは別にして
、示されているシステムの全体をサポートする、または含むとして見なすことが
できる。
【0053】
中央処理装置20は、仮想機械4007の部分を形成する実行時エンジン40
08で集中化されるとして見なすことができる。これは、一方の側(「高水準」
側)ではアプリケーションに結合され、後述される多様な中間論理装置を介して
他方の側(「低水準」側)では受信機/デコーダハードウェア4061に結合さ
れ、前述されたような多様なポート(すなわち、例えば、直列インタフェース2
1、並列インタフェース22、モデム23および制御装置26)を備える。
08で集中化されるとして見なすことができる。これは、一方の側(「高水準」
側)ではアプリケーションに結合され、後述される多様な中間論理装置を介して
他方の側(「低水準」側)では受信機/デコーダハードウェア4061に結合さ
れ、前述されたような多様なポート(すなわち、例えば、直列インタフェース2
1、並列インタフェース22、モデム23および制御装置26)を備える。
【0054】
特に図4に関して、多様なアプリケーション4057が、仮想機械4007に
結合される。さらに一般的に使用されているアプリケーションのいくつかは、4
057で示されるように、システム内に多かれ少なかれ恒久的ではなく常駐して
よいが、それ以外は、例えばMPEGデータストリームから、あるいは必要に応
じてその他のポートからシステムにダウンロードされるだろう。
結合される。さらに一般的に使用されているアプリケーションのいくつかは、4
057で示されるように、システム内に多かれ少なかれ恒久的ではなく常駐して
よいが、それ以外は、例えばMPEGデータストリームから、あるいは必要に応
じてその他のポートからシステムにダウンロードされるだろう。
【0055】
仮想機械4007は、実行時エンジン4008に加えて、ツールボックス40
58を含むいくつかの常駐ライブラリ機能4006を含む。該ライブラリは、エ
ンジン4008によって使用されるC言語でのその他の機能を含む。これらは、
データ構造、線図等の圧縮、拡大または比較などのデータ操作を含む。該ライブ
ラリ4006は、ハードウェアおよびソフトウェアバージョン番号および使用可
能なRAMスペース、および新規デバイス4062をダウンロードする際に使用
される機能などの受信機/デコーダ13内のファームウェアについての情報も含
む。機能は、FLASHまたはRAMメモリに記憶されているライブラリにダウ
ンロードすることができる。
58を含むいくつかの常駐ライブラリ機能4006を含む。該ライブラリは、エ
ンジン4008によって使用されるC言語でのその他の機能を含む。これらは、
データ構造、線図等の圧縮、拡大または比較などのデータ操作を含む。該ライブ
ラリ4006は、ハードウェアおよびソフトウェアバージョン番号および使用可
能なRAMスペース、および新規デバイス4062をダウンロードする際に使用
される機能などの受信機/デコーダ13内のファームウェアについての情報も含
む。機能は、FLASHまたはRAMメモリに記憶されているライブラリにダウ
ンロードすることができる。
【0056】
実行時エンジン4008は、その結果ポートまたはインタフェースに接続され
るデバイスドライバ4060に結合されるデバイス4062の集合に結合される
デバイスマネージャ4068に結合される。広義には、デバイスドライバは、論
理インタフェースを定義すると見なすことができ、その結果2つの異なるデバイ
スドライバが1つの共通した物理ポートに結合されてよい。デバイスは、通常、
複数のデバイスドライバに結合されるだろう。デバイスが単一のデバイスドライ
バに結合される場合、デバイスは通常通信に必要とされる完全な機能性を組み込
むように設計され、その結果、別個のデバイスドライバに対するニーズは不要に
される。一定のデバイスは、それら自体の中で通信してよい。
るデバイスドライバ4060に結合されるデバイス4062の集合に結合される
デバイスマネージャ4068に結合される。広義には、デバイスドライバは、論
理インタフェースを定義すると見なすことができ、その結果2つの異なるデバイ
スドライバが1つの共通した物理ポートに結合されてよい。デバイスは、通常、
複数のデバイスドライバに結合されるだろう。デバイスが単一のデバイスドライ
バに結合される場合、デバイスは通常通信に必要とされる完全な機能性を組み込
むように設計され、その結果、別個のデバイスドライバに対するニーズは不要に
される。一定のデバイスは、それら自体の中で通信してよい。
【0057】
受信機/デコーダ13の各機能は、受信機/デコーダ13のソフトウェアアー
キテクチャ内のデバイス4062として表される。デバイスは、ローカルまたは
リモートのどちらかである場合がある。ローカルデバイス4064は、スマート
カード、SCARTコネクタ信号、モデム、直列インタフェースと並列インタフ
ェース、MPEGビデオおよび音声プレーや、およびMPEGセクションおよび
テーブル抽出器を含む。リモートロケーションで実行されるリモートデバイス4
066は、ポートおよび手順が、受信機/デコーダ製造メーかにより提供、設計
されるデバイスおよびデバイスドライバによってよりむしろ、システム権限また
は設計者によって定義されなければならないという点でローカルデバイスとは異
なる。
キテクチャ内のデバイス4062として表される。デバイスは、ローカルまたは
リモートのどちらかである場合がある。ローカルデバイス4064は、スマート
カード、SCARTコネクタ信号、モデム、直列インタフェースと並列インタフ
ェース、MPEGビデオおよび音声プレーや、およびMPEGセクションおよび
テーブル抽出器を含む。リモートロケーションで実行されるリモートデバイス4
066は、ポートおよび手順が、受信機/デコーダ製造メーかにより提供、設計
されるデバイスおよびデバイスドライバによってよりむしろ、システム権限また
は設計者によって定義されなければならないという点でローカルデバイスとは異
なる。
【0058】
実行時エンジン4008は、マイクロプロセッサおよび1つの共通したアプリ
ケーションプログラミングインタフェースの制御下で実行する。それらは、すべ
ての受信機/デコーダ13がアプリケーションの観点から同一であるように、あ
らゆる受信機/デコーダ13にインストールされる。 エンジン4008は、受信機/デコーダ13上でアプリケーション4056を
実行する。それは、対話型アプリケーション4056をじっこうし、受信機/デ
コーダ13の外部からイベントを受信し、グラフィックスおよびテキストを表示
し、デバイスにサービスを要求し、特定の計算のためにエンジン4008に接続
されるライブラリ4006の機能を使用する。
ケーションプログラミングインタフェースの制御下で実行する。それらは、すべ
ての受信機/デコーダ13がアプリケーションの観点から同一であるように、あ
らゆる受信機/デコーダ13にインストールされる。 エンジン4008は、受信機/デコーダ13上でアプリケーション4056を
実行する。それは、対話型アプリケーション4056をじっこうし、受信機/デ
コーダ13の外部からイベントを受信し、グラフィックスおよびテキストを表示
し、デバイスにサービスを要求し、特定の計算のためにエンジン4008に接続
されるライブラリ4006の機能を使用する。
【0059】
実行時エンジン4008は、各受信機/デコーダ13内にインストールされる
実行可能コードであり、アプリケーションを解釈、実行するためのインタプリタ
を含む。エンジン4008は、(MS−DOSのような)単一タスクタスクオペ
レーティングシステムを含む任意のオペレーティングシステムに適応可能である
。エンジン4008は、(多様な動作を実行するために、キー押しなどの多様な
イベントを取る)プロセスシーケンサ装置に基づき、異なるハードウェアインタ
フェースからイベント待ち行列を管理するための専用のスケジューラを含む。そ
れは、また、グラフィックスおよびテキストのディスプレイも取り扱う。プロセ
スシーケンサ装置は、動作グループの集合を備える。各イベントは、プロセスシ
ーケンサ装置を、その現在の動作グループから別の動作グループに、イベントの
性格に依存して移動させ、新規動作グループの動作を実行させる。
実行可能コードであり、アプリケーションを解釈、実行するためのインタプリタ
を含む。エンジン4008は、(MS−DOSのような)単一タスクタスクオペ
レーティングシステムを含む任意のオペレーティングシステムに適応可能である
。エンジン4008は、(多様な動作を実行するために、キー押しなどの多様な
イベントを取る)プロセスシーケンサ装置に基づき、異なるハードウェアインタ
フェースからイベント待ち行列を管理するための専用のスケジューラを含む。そ
れは、また、グラフィックスおよびテキストのディスプレイも取り扱う。プロセ
スシーケンサ装置は、動作グループの集合を備える。各イベントは、プロセスシ
ーケンサ装置を、その現在の動作グループから別の動作グループに、イベントの
性格に依存して移動させ、新規動作グループの動作を実行させる。
【0060】
エンジン4008は、受信機/デコーダメモリの中にアプリケーション405
6をロード、およびダウンロードするためのコードローダを備える。最適使用を
保証するために、必要なコードだけがRAMまたはFLASHメモリの中にロー
ドされる。ダウンロードされたデータは、アプリケーション4056の修正、ま
たは許可されていないアプリケーションの実行を防ぐための認証機構によって検
証される。エンジン4008は、さらに、復元器(decompresssor
)を備える。アプリケーションコード(中間コードの形式)は、空間節約および
MPEGシステムからまたは内蔵受信機/デコーダモードを介した高速ダウンロ
ードのために圧縮されるので、コードは、それをRAMの中にロードする前に復
元されなければならない。エンジン4008は、多様な可変値を更新し、ステー
タス変化を決定するためにアプリケーションコードを解釈するためのインタプリ
タ、およびエラーチェッカも備える。
6をロード、およびダウンロードするためのコードローダを備える。最適使用を
保証するために、必要なコードだけがRAMまたはFLASHメモリの中にロー
ドされる。ダウンロードされたデータは、アプリケーション4056の修正、ま
たは許可されていないアプリケーションの実行を防ぐための認証機構によって検
証される。エンジン4008は、さらに、復元器(decompresssor
)を備える。アプリケーションコード(中間コードの形式)は、空間節約および
MPEGシステムからまたは内蔵受信機/デコーダモードを介した高速ダウンロ
ードのために圧縮されるので、コードは、それをRAMの中にロードする前に復
元されなければならない。エンジン4008は、多様な可変値を更新し、ステー
タス変化を決定するためにアプリケーションコードを解釈するためのインタプリ
タ、およびエラーチェッカも備える。
【0061】
オーサリングツール
前述されたように、オーサリングツール4004は、アプリケーションを設計
、作成、試験およびデバッグできるようにするために提供される。該オーサリン
グツールは、Windows NT(登録商標)、Windows(登録商標) 95、またはWindows 98、またはUNIX機械を実行するパーソナ ルコンピュータ(PC)などのワークステーション、あるいは任意のその他のオ ペレーティングシステムを実行するワークステーションで実行される。該オーサ リングツールは、アプリケーション開発者が、ワークステーション画面でそれら を編集することによってアプリケーションを設計し、作成できるようにする。 好ましい実施形態に従って、アプリケーションを試験、デバッグするために、
ワークステーションにリンクされる受信機/デコーダが提供される。受信機/デ
コーダが、アプリケーションを構成する多様なファイルが受信機/デコーダに、
必要に応じて、および必要とされるときにダウンロードできるようにワークステ
ーションにリンクされる。
、作成、試験およびデバッグできるようにするために提供される。該オーサリン
グツールは、Windows NT(登録商標)、Windows(登録商標) 95、またはWindows 98、またはUNIX機械を実行するパーソナ ルコンピュータ(PC)などのワークステーション、あるいは任意のその他のオ ペレーティングシステムを実行するワークステーションで実行される。該オーサ リングツールは、アプリケーション開発者が、ワークステーション画面でそれら を編集することによってアプリケーションを設計し、作成できるようにする。 好ましい実施形態に従って、アプリケーションを試験、デバッグするために、
ワークステーションにリンクされる受信機/デコーダが提供される。受信機/デ
コーダが、アプリケーションを構成する多様なファイルが受信機/デコーダに、
必要に応じて、および必要とされるときにダウンロードできるようにワークステ
ーションにリンクされる。
【0062】
図5を参照すると、概要では、オーサリングツールは、リンク228によって
受信機/デコーダ226にリンクされるワークステーション200を備える。ワ
ークステーション200が、画面210、コンピュータ212、キーボード21
4、およびマウス216を備える。コンピュータ212は、このようなコンピュ
ータでは従来であるハードウェアとソフトウェアのその他の部分だけではなく、
プロセッサ218、メモリ220、ハードディスク222、入出力(I/O)ポ
ート224も備える。受信機/デコーダ226は、テレビ230、またはその他
のディスプレイに接続される。
受信機/デコーダ226にリンクされるワークステーション200を備える。ワ
ークステーション200が、画面210、コンピュータ212、キーボード21
4、およびマウス216を備える。コンピュータ212は、このようなコンピュ
ータでは従来であるハードウェアとソフトウェアのその他の部分だけではなく、
プロセッサ218、メモリ220、ハードディスク222、入出力(I/O)ポ
ート224も備える。受信機/デコーダ226は、テレビ230、またはその他
のディスプレイに接続される。
【0063】
オーサリングツール4004の多様な構成要素は、図6にさらに詳細に示され
る。オーサリングツールは、アプリケーションを構成する多様なファイルを作成
、編集するためのエディタ410、エディタ410によって使用するための既存
のファイルを記憶するライブラリ412、およびエディタ410によって、図4
中の仮想機械4007などの仮想機械によって理解できる中間言語に作成された
ファイルをコンパイルするためのコンパイラ414を備える。「クラスファイル
」と呼ばれるコンパイルされたファイルは、ワークステーション200のハード
ディスク222上のディレクトリであるディレクトリ416に、あるいはワーク
ステーションが接続されるネットワーク上の別のボリュームに保存される。
る。オーサリングツールは、アプリケーションを構成する多様なファイルを作成
、編集するためのエディタ410、エディタ410によって使用するための既存
のファイルを記憶するライブラリ412、およびエディタ410によって、図4
中の仮想機械4007などの仮想機械によって理解できる中間言語に作成された
ファイルをコンパイルするためのコンパイラ414を備える。「クラスファイル
」と呼ばれるコンパイルされたファイルは、ワークステーション200のハード
ディスク222上のディレクトリであるディレクトリ416に、あるいはワーク
ステーションが接続されるネットワーク上の別のボリュームに保存される。
【0064】
受信機/デコーダ226は、図3に図示されるもののような従来の受信機/デ
コーダ内でみつけられるその他の構成部品だけではなく、CP424と関連付け
られるメモリ、入出力(I/O)ポート422も備える。(後述されるような)
ネット代理418は、受信機/デコーダ226が、受信機/デコーダI/Oポー
ト422、シリアルリンク228、およびワークステーションI/Oポート42
0を介してディレクトリ416に記憶されるクラスファイルにアクセスできるよ
うにするために、ワークステーションに提供される。やはり提供されているのは
、受信機/デコーダ226上で実行しているアプリケーションをデバッグするた
めの(後述されるような)デバッガ430である。
コーダ内でみつけられるその他の構成部品だけではなく、CP424と関連付け
られるメモリ、入出力(I/O)ポート422も備える。(後述されるような)
ネット代理418は、受信機/デコーダ226が、受信機/デコーダI/Oポー
ト422、シリアルリンク228、およびワークステーションI/Oポート42
0を介してディレクトリ416に記憶されるクラスファイルにアクセスできるよ
うにするために、ワークステーションに提供される。やはり提供されているのは
、受信機/デコーダ226上で実行しているアプリケーションをデバッグするた
めの(後述されるような)デバッガ430である。
【0065】
アプリケーション開発者は、エディタ410を使用して自分のアプリケーショ
ン用にファイルを作るために、新規ファイルを作成し、および/またはライブラ
リ412に記憶されている既存のファイルを利用する。アプリケーションは、仮
想機械用に設計される、Javaなどの包括的な言語で作成される命令を含むソ
ースファイル、およびアプリケーションによって使用されることになるデータを
含むデータファイルを備える。編集されているファイルは、ワークステーション
画面210に表示され、変更は、キーボード214とマウス216を使用して入
力される。ファイルは、多様な方法で表示されてよい。例えば、グラフィックフ
ァイルは、画面上でグラフィックとして表示されてよいが、リソースファイルの
場合、ファイル中のコードが表示されてよいか、あるいはコードの全体的な構造
またはアーキテクチャの表現が表示されてよい。
ン用にファイルを作るために、新規ファイルを作成し、および/またはライブラ
リ412に記憶されている既存のファイルを利用する。アプリケーションは、仮
想機械用に設計される、Javaなどの包括的な言語で作成される命令を含むソ
ースファイル、およびアプリケーションによって使用されることになるデータを
含むデータファイルを備える。編集されているファイルは、ワークステーション
画面210に表示され、変更は、キーボード214とマウス216を使用して入
力される。ファイルは、多様な方法で表示されてよい。例えば、グラフィックフ
ァイルは、画面上でグラフィックとして表示されてよいが、リソースファイルの
場合、ファイル中のコードが表示されてよいか、あるいはコードの全体的な構造
またはアーキテクチャの表現が表示されてよい。
【0066】
Pantalkとして知られるプログラミング言語を使用する特殊なインプリ
メンテーションでは、アプリケーションは、以下の種類のリソースファイルの1
つまたは複数を備えてよい。 ・ソースファイル − アプリケーションのエントリポイントを定義するため。 ・パネルファイル − 画面を定義するため(グラフィックソースファイルがあ
る)。 ・クラスファイル − アプリケーションによって使用されるデータ構造を定義
するため。 ・オプションでスクリプトファイル ― アプリケーションの動作を定義するた
め。
メンテーションでは、アプリケーションは、以下の種類のリソースファイルの1
つまたは複数を備えてよい。 ・ソースファイル − アプリケーションのエントリポイントを定義するため。 ・パネルファイル − 画面を定義するため(グラフィックソースファイルがあ
る)。 ・クラスファイル − アプリケーションによって使用されるデータ構造を定義
するため。 ・オプションでスクリプトファイル ― アプリケーションの動作を定義するた
め。
【0067】
データファイルの例は、以下の通りである。
・アイコンライブラリファイル − これらは、例えば、ピクセルビットマップ
あたり4ビットの集合体を含む。これらのアイコンは、ボタンまたは装飾として
パネルによって使用される。 ・画像 − これらのファイルは、ピクセルあたり4ビットで、任意のサイズの
単一ビットマップを含み、256色を提供する。この種の画像は、典型的には、
パネルに対する背景として使用される。 ・カラーテーブル − これらは、モジュールが画面上で表示できる色を定義す
るために使用される。 ・ユーザデータファイル − これらのファイルは、アプリケーションによって
使用するためにユーザによって定義される。それらは、ASCIIテキストファ
イルまたはバイナリデータファイルである。
あたり4ビットの集合体を含む。これらのアイコンは、ボタンまたは装飾として
パネルによって使用される。 ・画像 − これらのファイルは、ピクセルあたり4ビットで、任意のサイズの
単一ビットマップを含み、256色を提供する。この種の画像は、典型的には、
パネルに対する背景として使用される。 ・カラーテーブル − これらは、モジュールが画面上で表示できる色を定義す
るために使用される。 ・ユーザデータファイル − これらのファイルは、アプリケーションによって
使用するためにユーザによって定義される。それらは、ASCIIテキストファ
イルまたはバイナリデータファイルである。
【0068】
代替インプリメンテーションでは、Javaなどのその他のプログラミング言
語が使用される。熟練者にとって明らかとなるように、さまざまな言語が、その
言語に適切な異なるアプリケーション構造を生じさせる結果となってよい。
語が使用される。熟練者にとって明らかとなるように、さまざまな言語が、その
言語に適切な異なるアプリケーション構造を生じさせる結果となってよい。
【0069】
アプリケーションの試験
いったんアプリケーションが作成されると、それは、仮想機械によって、コン
パイラ414によって理解される中間言語に変換され、ディレクトリ416内に
クラスファイルとして記憶される。該アプリケーションは、受信機/デコーダ2
26のプロセッサ上でそれを実行することによって試験されてよい。アプリケー
ションを試験するために、ワークステーション200は、通信に使用されなけれ
ばならないサーバの名前およびクラスファイルが記憶されるディレクトリの名前
を含むメッセージという形で受信機/デコーダ226に要求を送信する。
パイラ414によって理解される中間言語に変換され、ディレクトリ416内に
クラスファイルとして記憶される。該アプリケーションは、受信機/デコーダ2
26のプロセッサ上でそれを実行することによって試験されてよい。アプリケー
ションを試験するために、ワークステーション200は、通信に使用されなけれ
ばならないサーバの名前およびクラスファイルが記憶されるディレクトリの名前
を含むメッセージという形で受信機/デコーダ226に要求を送信する。
【0070】
従来の受信機/デコーダとは対照的に、本実施形態の受信機/デコーダ226
は、それが最初にオンにされると、それがネットワークファイルシステム(NF
S)ローダと呼ばれる常駐プログラムを実行するようにプログラミングされる。
このプログラムは、ワークステーション200から受信される要求を待機する。
プログラムは要求を受信すると、それは、指定されたポートを使用して、要求の
中に指定されるディレクトリにアクセスする。ディレクトリ416は、すなわち
アプリケーションを開始するファイルである、ブートファイルの名前を含むst
artup.txtと呼ばれるファイルを含む。NFSローダは、ブートファイ
ルの名前を読み取ってから、そのファイルをワークステーションディレクトリか
らダウンロードし、受信機/デコーダの中のメモリにそれを記憶する。それから
、ブートファイルは、受信機/デコーダの中のプロセッサ424によって実行さ
れる。
は、それが最初にオンにされると、それがネットワークファイルシステム(NF
S)ローダと呼ばれる常駐プログラムを実行するようにプログラミングされる。
このプログラムは、ワークステーション200から受信される要求を待機する。
プログラムは要求を受信すると、それは、指定されたポートを使用して、要求の
中に指定されるディレクトリにアクセスする。ディレクトリ416は、すなわち
アプリケーションを開始するファイルである、ブートファイルの名前を含むst
artup.txtと呼ばれるファイルを含む。NFSローダは、ブートファイ
ルの名前を読み取ってから、そのファイルをワークステーションディレクトリか
らダウンロードし、受信機/デコーダの中のメモリにそれを記憶する。それから
、ブートファイルは、受信機/デコーダの中のプロセッサ424によって実行さ
れる。
【0071】
ブートファイルは、その他のファイルに含まれるルーチンへの呼出しを含んで
よい。このケースでは、プロセッサは、例えば、それがすでに使用されているた
めに、最初に、それが必要とするファイルが、局所的に記憶されているかどうか
を確かめるために、受信機/デコーダメモリの中を見る。ファイルが局所的に記
憶されていない場合には、プロセッサは、ファイルを見つけるために、ワークス
テーションからの要求に指定されるワークステーションディレクトリの中を見る
。それから、ファイルはダウンロードされ、受信機/デコーダによる使用のため
に、受信機/デコーダメモリ(例えば、RAMメモリまたはFLASHメモリ)
に記憶される。このようにして、エディタ410によって作成され、ディレクト
リ416に記憶されたアプリケーションは、受信機/デコーダ226で実行され
る。受信機/デコーダ226からの出力がテレビセット230に表示される。こ
れにより、アプリケーション開発者は、受信機/デコーダおよびテレビで実行さ
れるときにアプリケーションがどのように見えるのかを確認できる。
よい。このケースでは、プロセッサは、例えば、それがすでに使用されているた
めに、最初に、それが必要とするファイルが、局所的に記憶されているかどうか
を確かめるために、受信機/デコーダメモリの中を見る。ファイルが局所的に記
憶されていない場合には、プロセッサは、ファイルを見つけるために、ワークス
テーションからの要求に指定されるワークステーションディレクトリの中を見る
。それから、ファイルはダウンロードされ、受信機/デコーダによる使用のため
に、受信機/デコーダメモリ(例えば、RAMメモリまたはFLASHメモリ)
に記憶される。このようにして、エディタ410によって作成され、ディレクト
リ416に記憶されたアプリケーションは、受信機/デコーダ226で実行され
る。受信機/デコーダ226からの出力がテレビセット230に表示される。こ
れにより、アプリケーション開発者は、受信機/デコーダおよびテレビで実行さ
れるときにアプリケーションがどのように見えるのかを確認できる。
【0072】
図7を参照して、アプリケーションを作成し、試験する際の多様なステップが
説明されるだろう。ステップ450では、アプリケーションはエディタ410を
使用して作成される。ステップ452では、アプリケーションはコンパイルされ
、ステップ454では、コンパイルされたアプリケーションがクラスファイルと
してディレクトリ416に保存される。ステップ456では、要求はワークステ
ーションから受信機/デコーダに送信され、通信に使用されるディレクトリおよ
びポートの名前を指定する。ステップ458では、ブートファイルがディレクト
リから受信機/デコーダの中にロードされ、ステップ460では、ブートファイ
ルが受信機/デコーダのプロセッサで実行される。ステップ462では、新規ク
ラスファイルが必要とされるかどうかがプロセッサによって決定される。新規ク
ラスファイルが必要とされる場合には、ステップ464では、その新規クラスフ
ァイルが受信機/デコーダにロードされ、ステップ466では新規クラスファイ
ルが実行される。追加クラスファイルは、必要に応じて、受信機/デコーダの中
にロードされ、プロセッサによって実行される。
説明されるだろう。ステップ450では、アプリケーションはエディタ410を
使用して作成される。ステップ452では、アプリケーションはコンパイルされ
、ステップ454では、コンパイルされたアプリケーションがクラスファイルと
してディレクトリ416に保存される。ステップ456では、要求はワークステ
ーションから受信機/デコーダに送信され、通信に使用されるディレクトリおよ
びポートの名前を指定する。ステップ458では、ブートファイルがディレクト
リから受信機/デコーダの中にロードされ、ステップ460では、ブートファイ
ルが受信機/デコーダのプロセッサで実行される。ステップ462では、新規ク
ラスファイルが必要とされるかどうかがプロセッサによって決定される。新規ク
ラスファイルが必要とされる場合には、ステップ464では、その新規クラスフ
ァイルが受信機/デコーダにロードされ、ステップ466では新規クラスファイ
ルが実行される。追加クラスファイルは、必要に応じて、受信機/デコーダの中
にロードされ、プロセッサによって実行される。
【0073】
エディタ410は、例えば、試験の結果としてアプリケーションに変更を加え
るために使用されてよい。このような変更の結果として、ディレクトリ416の
中に記憶されるファイルのいくつかまたはすべてが更新されてよい。それから、
更新されたファイルが、ここで記述さえるように、複数の方法の1つで受信機/
デコーダ226に転送されてよい。
るために使用されてよい。このような変更の結果として、ディレクトリ416の
中に記憶されるファイルのいくつかまたはすべてが更新されてよい。それから、
更新されたファイルが、ここで記述さえるように、複数の方法の1つで受信機/
デコーダ226に転送されてよい。
【0074】
ある実施形態では、受信機/デコーダ226内でファイルを更新するために特
殊な準備は行われない。受信機/デコーダがオンにされると、それは、それが必
要とするファイルをディレクトリ416からただダウンロードするだけである。
このケースでは、変更が、すでに受信機/デコーダにダウンロードされたファイ
ルに加えられた場合には、受信機/デコーダは再起動されなければならず、その
結果更新されたファイルがダウンロードされるだろう。これは、例えば、受信機
/デコーダをオフに切り替えてから、再びオンに切り替えることによって行われ
てよい。それから、受信機/デコーダは、アプリケーションを実行するために必
要とされるあらゆる修正済みのファイルを含むすべてのファイルをダウンロード
する。
殊な準備は行われない。受信機/デコーダがオンにされると、それは、それが必
要とするファイルをディレクトリ416からただダウンロードするだけである。
このケースでは、変更が、すでに受信機/デコーダにダウンロードされたファイ
ルに加えられた場合には、受信機/デコーダは再起動されなければならず、その
結果更新されたファイルがダウンロードされるだろう。これは、例えば、受信機
/デコーダをオフに切り替えてから、再びオンに切り替えることによって行われ
てよい。それから、受信機/デコーダは、アプリケーションを実行するために必
要とされるあらゆる修正済みのファイルを含むすべてのファイルをダウンロード
する。
【0075】
別の実施形態では、受信機/デコーダ内のファイルは、ワークステーションか
ら受信機/デコーダに「ファイルアンロード」コマンドを送信することによって
更新される。受信機/デコーダがこのコマンドを受信すると、それは指定された
ファイルを削除する。次回ファイルが必要とされると、それは受信機/デコーダ
内に局所的に存在しないため、ファイルの更新されたバージョンがディレクトリ
416からダウンロードされるだろう。
ら受信機/デコーダに「ファイルアンロード」コマンドを送信することによって
更新される。受信機/デコーダがこのコマンドを受信すると、それは指定された
ファイルを削除する。次回ファイルが必要とされると、それは受信機/デコーダ
内に局所的に存在しないため、ファイルの更新されたバージョンがディレクトリ
416からダウンロードされるだろう。
【0076】
追加実施形態では、受信機/デコーダは、局所的におよびワークステーション
での両方で使用可能であるすべてのファイルの前回の修正の時刻および日付をチ
ェックし、すべてのファイルの最新バージョンを使用する。このようにして、修
正されたファイルは、受信機/デコーダに自動的に転送される。 オーサリングツールネットワーク
での両方で使用可能であるすべてのファイルの前回の修正の時刻および日付をチ
ェックし、すべてのファイルの最新バージョンを使用する。このようにして、修
正されたファイルは、受信機/デコーダに自動的に転送される。 オーサリングツールネットワーク
【0077】
図8は、受信機/デコーダ226に、ワークステーションのハードディスクへ
のアクセスを与えるために使用される多様な層のアーキテクチャ、つまり、当て
はまる場合には、ディレクトリ416を含むネットワークボリュームを示す。受
信機/デコーダには、受信機/デコーダがワークステーションのハードディスク
またはネットワークボリューム上のディレクトリを、それがローカル記憶装置で
あるかのように、使用できるようにするクライアントネットワークファイルシス
テム(NFS)が提供される。本例では、受信機/デコーダはネットワークスタ
ックを含まないため、代理スタック(「NetProxy」)418が、受信機
/デコーダによる使用のためにワークステーションに提供される。この代理は、
受信機/デコーダに接続される、ワークステーションのネットワークスタックと
物理ポートの間にリンクを確立する。
のアクセスを与えるために使用される多様な層のアーキテクチャ、つまり、当て
はまる場合には、ディレクトリ416を含むネットワークボリュームを示す。受
信機/デコーダには、受信機/デコーダがワークステーションのハードディスク
またはネットワークボリューム上のディレクトリを、それがローカル記憶装置で
あるかのように、使用できるようにするクライアントネットワークファイルシス
テム(NFS)が提供される。本例では、受信機/デコーダはネットワークスタ
ックを含まないため、代理スタック(「NetProxy」)418が、受信機
/デコーダによる使用のためにワークステーションに提供される。この代理は、
受信機/デコーダに接続される、ワークステーションのネットワークスタックと
物理ポートの間にリンクを確立する。
【0078】
図8を参照すると、受信機/デコーダ226は、物理層250、データリンク
層252、ネット代理層254、NFS/RPC層256、およびファイルシス
テム層258を含む。 物理層250は、受信機/デコーダ226とワークステーション200間で物
理ポートを提供する。それ自体として、それは(他の可能性の中で)直列ポート
、並列ポートまたはモデムのどれか、またはすべてを含んでよい。 データリンク層252の目的とは、物理層250と代理プロキシ層254間で
、データのフレームの交換を取り扱うことである。それは、交換されるフレーム
の完全性を保証し、さまざまな宛先から到着するフレームを逆多重化するのに役
立つ。
層252、ネット代理層254、NFS/RPC層256、およびファイルシス
テム層258を含む。 物理層250は、受信機/デコーダ226とワークステーション200間で物
理ポートを提供する。それ自体として、それは(他の可能性の中で)直列ポート
、並列ポートまたはモデムのどれか、またはすべてを含んでよい。 データリンク層252の目的とは、物理層250と代理プロキシ層254間で
、データのフレームの交換を取り扱うことである。それは、交換されるフレーム
の完全性を保証し、さまざまな宛先から到着するフレームを逆多重化するのに役
立つ。
【0079】
データリンク層252は、SLPDとして特定されるプロトコルを使用してよ
い。SLPDプロトコルは、図9の中で図で表される5つのフィールドを含むフ
レーム内でデータを取り扱う。このフレームの中に含まれるフィールドは、以下
の通りである。 ・SYNC_WORD(500):SLPDフレームの開始を特定する固定16
ビット値。 ・LENGTH(502):SLPDフレーム内で続くバイトのカウントである
16ビット値。 ・PROTOCOL_ID(504):SLPDフレーム内に含まれるデータの
プロトコルを特定する16ビット値。このフィールドは、データの多重化で使用
される。 ・DATA(506):LENGTHを含む可変長フィールド―4バイトのデー
タがSLPDフレームによって移される。 ・CRC16(508):SLPDフレームの完全性を検証するための16ビッ
トフィールド。フィールドは、フィールドPROTOCOL_IDおよびDAT
Aで計算される16ビット巡回冗長検査値を含む。
い。SLPDプロトコルは、図9の中で図で表される5つのフィールドを含むフ
レーム内でデータを取り扱う。このフレームの中に含まれるフィールドは、以下
の通りである。 ・SYNC_WORD(500):SLPDフレームの開始を特定する固定16
ビット値。 ・LENGTH(502):SLPDフレーム内で続くバイトのカウントである
16ビット値。 ・PROTOCOL_ID(504):SLPDフレーム内に含まれるデータの
プロトコルを特定する16ビット値。このフィールドは、データの多重化で使用
される。 ・DATA(506):LENGTHを含む可変長フィールド―4バイトのデー
タがSLPDフレームによって移される。 ・CRC16(508):SLPDフレームの完全性を検証するための16ビッ
トフィールド。フィールドは、フィールドPROTOCOL_IDおよびDAT
Aで計算される16ビット巡回冗長検査値を含む。
【0080】
データリンク層252の機能性は、以下の公の方法の提供を含む。
MhwNFSRpcComRegisterProtocol:この関数は、
プロトコルに関連付けられる呼び戻し関数を登録する。2つの呼び戻し関数、a
SendCallbackおよびaRevCallbackは、各プロトコルと
関連付けられ、それぞれ、データのフレームの伝送の完了を示すために呼び出さ
れ、他方はデータのフレームの受信を示すために呼び出される。 MhwNFSRpcComUnregisterProtocol:この関数
は、プロトコルに関連付けられる呼び戻し関数を削除するために使用される。
プロトコルに関連付けられる呼び戻し関数を登録する。2つの呼び戻し関数、a
SendCallbackおよびaRevCallbackは、各プロトコルと
関連付けられ、それぞれ、データのフレームの伝送の完了を示すために呼び出さ
れ、他方はデータのフレームの受信を示すために呼び出される。 MhwNFSRpcComUnregisterProtocol:この関数
は、プロトコルに関連付けられる呼び戻し関数を削除するために使用される。
【0081】
MhwNFSRpcComPortInit、MhwNFSRpcComPo
rtClose:それぞれ、(直列ポート、並列ポート、またはモデムデバイス
などの)通信ポートを初期化し、閉じるために、およびポートのコンテキストア
ドレスを得るために使用される。好ましい実施形態では、同じデバイスのために
この関数を複数回呼び出すことが許可されている。デバイスの初期化は、第1呼
出し以外では達成されない。データリンク層252は、デバイスごとにMhwN
FSRpcComPortInitに対して行われる呼出し回数をカウンタの中
に記憶する。それ以降の呼出しが、デバイスのためにMhwNFSRpcCom
PortCloseに行われるたびに、そのデバイス用のカウンタが減分される
。ポートは、そのカウンタがゼロに到達するまで実際には閉じられない。
rtClose:それぞれ、(直列ポート、並列ポート、またはモデムデバイス
などの)通信ポートを初期化し、閉じるために、およびポートのコンテキストア
ドレスを得るために使用される。好ましい実施形態では、同じデバイスのために
この関数を複数回呼び出すことが許可されている。デバイスの初期化は、第1呼
出し以外では達成されない。データリンク層252は、デバイスごとにMhwN
FSRpcComPortInitに対して行われる呼出し回数をカウンタの中
に記憶する。それ以降の呼出しが、デバイスのためにMhwNFSRpcCom
PortCloseに行われるたびに、そのデバイス用のカウンタが減分される
。ポートは、そのカウンタがゼロに到達するまで実際には閉じられない。
【0082】
MhwNFSRpcComInit、MhwNFSRpcComClose:
これらの関数は、それぞれ、データリンク層252を初期化する、および正しく
閉じるために呼び出される。 MhwNFSRpcComDatagramSend:この関数は、通信ポー
トを介してSLPDフレームを伝送する。伝送の完了時、SLPDフレームで特
定されるプロトコルの呼び戻し関数aSendCallbackは、フレームが
送信されたことをクライアントに示すために呼び出される。
これらの関数は、それぞれ、データリンク層252を初期化する、および正しく
閉じるために呼び出される。 MhwNFSRpcComDatagramSend:この関数は、通信ポー
トを介してSLPDフレームを伝送する。伝送の完了時、SLPDフレームで特
定されるプロトコルの呼び戻し関数aSendCallbackは、フレームが
送信されたことをクライアントに示すために呼び出される。
【0083】
ネット代理層254は、デコーダ内でのネットワークスタックの不在を補償す
るソフトウェア層である。ネット代理254層は、中間データリンク層252,
262および受信機/デコーダ226およびワークステーション200内の物理
層250,260を通してワークステーション20内のネット代理層264と通
信する。ワークウステーション200の中では、ネット代理層264によって受
信されるすべてのメッセージが、UDPソケット268を介するリモートホスト
へのオンワード伝送のためにネットワークスタック266に渡される。同様に、
UDPソケット268によって受信されるすべてのメッセージは、受信機/デコ
ーダ226に転送される。受信機/デコーダ内のNFS/RPC層256は、受
信機/デコーダのファイルシステム258とNetProxy層の間にインタフ
ェースを提供するが、ワークステーション内のNFS/RPC層270は、ワー
クステーションのファイルシステムおよびネットワークスタックの間にインタフ
ェースを提供する。
るソフトウェア層である。ネット代理254層は、中間データリンク層252,
262および受信機/デコーダ226およびワークステーション200内の物理
層250,260を通してワークステーション20内のネット代理層264と通
信する。ワークウステーション200の中では、ネット代理層264によって受
信されるすべてのメッセージが、UDPソケット268を介するリモートホスト
へのオンワード伝送のためにネットワークスタック266に渡される。同様に、
UDPソケット268によって受信されるすべてのメッセージは、受信機/デコ
ーダ226に転送される。受信機/デコーダ内のNFS/RPC層256は、受
信機/デコーダのファイルシステム258とNetProxy層の間にインタフ
ェースを提供するが、ワークステーション内のNFS/RPC層270は、ワー
クステーションのファイルシステムおよびネットワークスタックの間にインタフ
ェースを提供する。
【0084】
ネット代理層(受信機/デコーダ226内にあるのか、ワークステーション2
00内にあるのかに関係なく)は、ホスト名および任意の長さのデータパケット
を含むデータパケットを取り扱う。ネット代理層は、以下の公の方法を提供する
。 NFSRpcProxyInit、NFSRpcProxyClose:これ
らの関数は、それぞれ、ネット代理層を初期化し、閉じる。 NFSRpcProxyBindHostName、NFSRpcProxy
UnbindHostName:これらの関数の第1がホスト名を物理インタフ
ェースに関連付ける。後者は、過去に登録されたホスト名を、ネット代理によっ
て維持されるホストのリストから削除する。 NFSRpcProxyBindResolveName:この関数は、名前
で特定されるホストのアドレスを入手する。 NFSRpcProxyRpcSend:この関数は、リモートホストでRP
C呼出しを行うために使用される。 NFS/RPC層は、RFC1057、RFC1094、および関連ISO規
格に準拠して、RPCコマンドを呼び出すために必要な機能性を実現する。
00内にあるのかに関係なく)は、ホスト名および任意の長さのデータパケット
を含むデータパケットを取り扱う。ネット代理層は、以下の公の方法を提供する
。 NFSRpcProxyInit、NFSRpcProxyClose:これ
らの関数は、それぞれ、ネット代理層を初期化し、閉じる。 NFSRpcProxyBindHostName、NFSRpcProxy
UnbindHostName:これらの関数の第1がホスト名を物理インタフ
ェースに関連付ける。後者は、過去に登録されたホスト名を、ネット代理によっ
て維持されるホストのリストから削除する。 NFSRpcProxyBindResolveName:この関数は、名前
で特定されるホストのアドレスを入手する。 NFSRpcProxyRpcSend:この関数は、リモートホストでRP
C呼出しを行うために使用される。 NFS/RPC層は、RFC1057、RFC1094、および関連ISO規
格に準拠して、RPCコマンドを呼び出すために必要な機能性を実現する。
【0085】
修正された実施形態は図10に示される。この実施形態では、ディレクトリ4
16は、ワークステーション200から遠いNFSサーバ600上のネットワー
クボリュームに記憶される。開発ワークステーション620で作業している開発
者は、サーバ600へのネットワーク612接続にを介してディレクトリ416
内のファイルへのアクセスを取得できる。開発者のワークステーション620と
は別個のネット代理610が、受信機/デコーダ226がネットワークへのアク
セスを取得できるために提供される。
16は、ワークステーション200から遠いNFSサーバ600上のネットワー
クボリュームに記憶される。開発ワークステーション620で作業している開発
者は、サーバ600へのネットワーク612接続にを介してディレクトリ416
内のファイルへのアクセスを取得できる。開発者のワークステーション620と
は別個のネット代理610が、受信機/デコーダ226がネットワークへのアク
セスを取得できるために提供される。
【0086】
図10の装置では、受信機/デコーダは、前記図に関して前述されたように構
成される。ネット代理610は、PCワークステーションなどのハードウェアで
実行中のソフトウェアとして便利に実現できる。典型的には、開発ワークステー
ションは、Unixワークステーションなどのより強力な開発機械である。受信
機/デコーダ226の実行環境は、開発者のワークステーション620、共通フ
ァイルサーバ600、および(図示されていない)その他のローカルまたはリモ
ート開発者のワークステーションを含む、ネット代理610を通して、ネットワ
ーク612に接続される多様なボリュームの中の多くのディレクトリでファイル
をアクセスできることが理解されるだろう。
成される。ネット代理610は、PCワークステーションなどのハードウェアで
実行中のソフトウェアとして便利に実現できる。典型的には、開発ワークステー
ションは、Unixワークステーションなどのより強力な開発機械である。受信
機/デコーダ226の実行環境は、開発者のワークステーション620、共通フ
ァイルサーバ600、および(図示されていない)その他のローカルまたはリモ
ート開発者のワークステーションを含む、ネット代理610を通して、ネットワ
ーク612に接続される多様なボリュームの中の多くのディレクトリでファイル
をアクセスできることが理解されるだろう。
【0087】
デバッガ
再び図6を参照すると、ワークステーション200は、受信機/デコーダ22
6の事項時実行環境でコードの実行を監視し、制御するソフトウェアの形式でデ
バッグツール430を含む。前記に引用された国際特許出願番号WO第98/4
3165号に開示されたように、開発ワークステーションで実行中のデバッガは
、実行環境で実行中のプログラムの実行を制御する、および/または監視するた
めに、受信機/デコーダ226に実行環境と制御メッセージを交換することがで
きる。
6の事項時実行環境でコードの実行を監視し、制御するソフトウェアの形式でデ
バッグツール430を含む。前記に引用された国際特許出願番号WO第98/4
3165号に開示されたように、開発ワークステーションで実行中のデバッガは
、実行環境で実行中のプログラムの実行を制御する、および/または監視するた
めに、受信機/デコーダ226に実行環境と制御メッセージを交換することがで
きる。
【0088】
本実施形態では、デバッガが、受信機/デコーダ226で実行中のアプリケー
ションの動作を制御できるために、制御メッセージは、ネット代理418または
610によって、ネットワークと受信機/デコーダ226の間で実行される。リ
モートデバッグセッションの開始時に、デバッガ430は、呼出しパラメータと
してリモートホストのホスト命で呼び出される。これにより、データパケットは
、指定されたリモートホストに送信され、それから、ネット代理418または6
10を介して、受信機/デコーダ226に送信される。データパケットは、それ
にデバッグモードに入るように命令する実行環境用のコマンド信号を含み、さら
に、デバッグ制御信号が送信されなければならないホストの名前(通常、開発者
のワークステーションのホスト名)を含む。デバッグ動作中、実行環境は、受信
機/デコーダのネット代理を通しておよびローカル通信ポートを通して制御信号
を送受するだろう。
ションの動作を制御できるために、制御メッセージは、ネット代理418または
610によって、ネットワークと受信機/デコーダ226の間で実行される。リ
モートデバッグセッションの開始時に、デバッガ430は、呼出しパラメータと
してリモートホストのホスト命で呼び出される。これにより、データパケットは
、指定されたリモートホストに送信され、それから、ネット代理418または6
10を介して、受信機/デコーダ226に送信される。データパケットは、それ
にデバッグモードに入るように命令する実行環境用のコマンド信号を含み、さら
に、デバッグ制御信号が送信されなければならないホストの名前(通常、開発者
のワークステーションのホスト名)を含む。デバッグ動作中、実行環境は、受信
機/デコーダのネット代理を通しておよびローカル通信ポートを通して制御信号
を送受するだろう。
【0089】
デバッグ動作中、受信機/デコーダ上で実行するアプリケーションは、デバッ
ガに送信されるコマンドに従って監視、制御される。該アプリケーションを形成
するクラスファイルは、試験動作に関連して前述されたのと同じように、それら
が必要とされると受信機/デコーダにダウンロードされる。更新済みファイルは
、試験動作に関係して記述された方法のどれかで受信機/デコーダに転送されて
もよい。
ガに送信されるコマンドに従って監視、制御される。該アプリケーションを形成
するクラスファイルは、試験動作に関連して前述されたのと同じように、それら
が必要とされると受信機/デコーダにダウンロードされる。更新済みファイルは
、試験動作に関係して記述された方法のどれかで受信機/デコーダに転送されて
もよい。
【0090】
多様なデバッグ動作は、デバッガ430によって実行されてよい。例えば、デ
バッガ430は、アプリケーション内で変数を監視することができ、監視される
変数のリストはこの目的のために定義される。定義された変数の値は、アプリケ
ーションの実行中に定義されるポイントで表示できる、および/または変数の値
が値の変化に関して(変数名とともに)表示できる。さらに、デバッガ430は
、受信機/デコーダ内で可変値を修正するために使用できる。これは、オペレー
タに、変数を他の値に設定することがどのような影響を持つのかをほぼ即座に確
かめる能力を与える。これらの変数制御関数は、言うまでもなく、(すべてのデ
バッガ関数はクリアできるので)デバッガによってクリアすることもできる。 同様に、デバッガ430は、例えば、モジュール、可変ブロック装置ファイル
、およびオブジェクトなどのその他の種類のエンティティが、アプリケーション
の実行中にいつ遭遇されるのかを信号で知らせるように受信機/デコーダを設定
することもできる。
バッガ430は、アプリケーション内で変数を監視することができ、監視される
変数のリストはこの目的のために定義される。定義された変数の値は、アプリケ
ーションの実行中に定義されるポイントで表示できる、および/または変数の値
が値の変化に関して(変数名とともに)表示できる。さらに、デバッガ430は
、受信機/デコーダ内で可変値を修正するために使用できる。これは、オペレー
タに、変数を他の値に設定することがどのような影響を持つのかをほぼ即座に確
かめる能力を与える。これらの変数制御関数は、言うまでもなく、(すべてのデ
バッガ関数はクリアできるので)デバッガによってクリアすることもできる。 同様に、デバッガ430は、例えば、モジュール、可変ブロック装置ファイル
、およびオブジェクトなどのその他の種類のエンティティが、アプリケーション
の実行中にいつ遭遇されるのかを信号で知らせるように受信機/デコーダを設定
することもできる。
【0091】
デバッガ430は、ブレークポイントを挿入(し、それらを削除)することに
よってアプリケーションの実行を制御することもできる。さらに具体的には、実
行は、定義されたポイントおよび/または定義されたサブルーチンの間、あるい
は完全アプリケーションの間のどちらかで、中断されずに実行し、ブレークポイ
ントまで実行し、停止し、ブレークポイントまで実行し、所望されるときは急ぎ
(再開し)、サブルーチン呼出しまで実行するか、サブルーチンから戻るか、あ
るいはステップごとに進行する(つまり、オペレータに応答してのみ各ステート
メントから急ぐ)ことができる(サブルーチンとは、アプリケーションによって
呼び出される、または実行できるステートメントのシーケンスである命令シーケ
ンスであってよい)。
よってアプリケーションの実行を制御することもできる。さらに具体的には、実
行は、定義されたポイントおよび/または定義されたサブルーチンの間、あるい
は完全アプリケーションの間のどちらかで、中断されずに実行し、ブレークポイ
ントまで実行し、停止し、ブレークポイントまで実行し、所望されるときは急ぎ
(再開し)、サブルーチン呼出しまで実行するか、サブルーチンから戻るか、あ
るいはステップごとに進行する(つまり、オペレータに応答してのみ各ステート
メントから急ぐ)ことができる(サブルーチンとは、アプリケーションによって
呼び出される、または実行できるステートメントのシーケンスである命令シーケ
ンスであってよい)。
【0092】
デバッガ430は、続行する、ロードする、戻る、またはジャンプする、ある
いは1つまたは複数の指定されたルーチンまたはそのタイプの実行をオ開始する
か、終了する、あるいは中断するなどの多岐に渡る動作の1つまたは複数を検出
し、信号で知らせるトレース関数を動作できる。
いは1つまたは複数の指定されたルーチンまたはそのタイプの実行をオ開始する
か、終了する、あるいは中断するなどの多岐に渡る動作の1つまたは複数を検出
し、信号で知らせるトレース関数を動作できる。
【0093】
デバッガ430は、アプリケーションの実行中に所望のポイントで受信機/デ
コーダおよびアプリケーションのステータスを監視、報告することもできる。そ
のステータスが監視、および報告できる要素の間には以下がある。つまり、メモ
リサイズ、自由なメモリ、バッファプール特徴、システムバージョン番号、等、
(RAM、フラッシュ、およびROMなどの)メモリ全体またはその指定された
部分のメモリコンテンツ(メモリダンプ)、取り付けられるボリューム、ロード
されるモジュール(およびカレントモジュール)、および変数ブロック装置ファ
イル(数、使用されるメモリ、変数ブロック装置ファイルのリスト)、命令シー
ケンスステータス(名前、実行中および/または中断される数、使用されるメモ
リ等)、および戻りスタックコンテンツ(つまり、戻されるサブルーチンのリス
ト)である。
コーダおよびアプリケーションのステータスを監視、報告することもできる。そ
のステータスが監視、および報告できる要素の間には以下がある。つまり、メモ
リサイズ、自由なメモリ、バッファプール特徴、システムバージョン番号、等、
(RAM、フラッシュ、およびROMなどの)メモリ全体またはその指定された
部分のメモリコンテンツ(メモリダンプ)、取り付けられるボリューム、ロード
されるモジュール(およびカレントモジュール)、および変数ブロック装置ファ
イル(数、使用されるメモリ、変数ブロック装置ファイルのリスト)、命令シー
ケンスステータス(名前、実行中および/または中断される数、使用されるメモ
リ等)、および戻りスタックコンテンツ(つまり、戻されるサブルーチンのリス
ト)である。
【0094】
好ましい実施形態で使用できるデバッガ機能の例は、以下の表に示される。
コマンド 記述
next その関数に従わないコードの行の実行
step その関数に従うコードの行の実行
cont 停止ポイントまたはプログラムの最後まで実行を続行する
until<line number> 指定された行番号まで実行を続行する
finish 現在の機能の最後まで実行を続行する break<string> ブレークポイントを挿入する break<string if<condition> 条件付きブレークポ
イントを挿入する breakcount<number><string> カウンタとともにブ
レークポイントを挿入する(プログラムは、ブレークポイントが指定された回数
通過した後に停止するだろう) breakcount<number><string>if<conditi
n> カウンタとともに、条件付きブレークポイントを挿入する delete<breakpoint number> ブレークポイントを削
除する disable<breakpoint number> ブレークポイントを
非活性化する enable<breakpoint number> ブレークポイントを活
性化する command<breakpoint number> ブレークポイントと
コマンドを関連付ける watchexception<exception> 例外が提起されるとき
にブレークポイントを挿入する Unwatchexexception<watchexception nu
mber> 例外に関連付けられるブレークポイントを抑制する info ブレークポイントのリストおよびステータスを表示する print<expression> 式の値を印刷する set<expression1><expression2> 式2の値を式
1に設定する whatis<expression> 式の種類を示す inherit<expression> 式の母クラスのリストを表示する fields<expression> 式のフィールドのリストを表示する methods<expression> 式の方法のリストを表示する dump<format><address><count> メモリのセクシ
ョンのコンテンツを表示する where カレントスレッドのスタックを表示する up カレントフレームを呼び出すフレームを選択する down 呼び出されたフレームを選択する threads スレッドおよびその主要な属性のリストを表示する getthr スレッドの属性の詳細なリストを表示する monitors スレッドのモニタのリストを表示する getmon モニタの属性の詳細なリストを表示する dbginfo トレースレベルが定義されるモジュールを一覧表示する dbgset モジュールのトレースレベルを修正する fs<action>parameters ファイルシステムから情報を得る
ために使用される
finish 現在の機能の最後まで実行を続行する break<string> ブレークポイントを挿入する break<string if<condition> 条件付きブレークポ
イントを挿入する breakcount<number><string> カウンタとともにブ
レークポイントを挿入する(プログラムは、ブレークポイントが指定された回数
通過した後に停止するだろう) breakcount<number><string>if<conditi
n> カウンタとともに、条件付きブレークポイントを挿入する delete<breakpoint number> ブレークポイントを削
除する disable<breakpoint number> ブレークポイントを
非活性化する enable<breakpoint number> ブレークポイントを活
性化する command<breakpoint number> ブレークポイントと
コマンドを関連付ける watchexception<exception> 例外が提起されるとき
にブレークポイントを挿入する Unwatchexexception<watchexception nu
mber> 例外に関連付けられるブレークポイントを抑制する info ブレークポイントのリストおよびステータスを表示する print<expression> 式の値を印刷する set<expression1><expression2> 式2の値を式
1に設定する whatis<expression> 式の種類を示す inherit<expression> 式の母クラスのリストを表示する fields<expression> 式のフィールドのリストを表示する methods<expression> 式の方法のリストを表示する dump<format><address><count> メモリのセクシ
ョンのコンテンツを表示する where カレントスレッドのスタックを表示する up カレントフレームを呼び出すフレームを選択する down 呼び出されたフレームを選択する threads スレッドおよびその主要な属性のリストを表示する getthr スレッドの属性の詳細なリストを表示する monitors スレッドのモニタのリストを表示する getmon モニタの属性の詳細なリストを表示する dbginfo トレースレベルが定義されるモジュールを一覧表示する dbgset モジュールのトレースレベルを修正する fs<action>parameters ファイルシステムから情報を得る
ために使用される
【0095】
いくつかの状況では、複数のホストが受信機/デコーダ226と通信中である
ことが望ましいことがある。例えば、実行環境は、ネットワークプリンタへ実時
間でデバッグ情報を送信するために構成されてよい。 代替実施形態では、受信機/デコーダ226は、ネットワークスタックを備え
られ、前述されたNetProxy層は不要にされる。 ワークステーションおよび受信機/デコーダは、オーサリングツールに関して
前述されてきた。しかしながら、受信機/デコーダおよびワークステーションは
、アプリケーションの立証などのその他の目的のも使用されてよい。 本出願人の名前での同時係続欧州特許出願番号第99401744.0号に説
明されるデバイスシミュレータは、本発明とともに使用されてよい。その特許出
願の主題は、参照してここに組み込まれている。 本発明が、純粋にれいによって前述され、詳細の修正が発明の範囲内で加える
ことができることが理解されるだろう。 説明中に開示されるそれぞれの特徴、および(該当する場合)クレームと図面
は、独立して、または適切な組み合わせで提供されてよい。 クレーム中に出現する参照番号は、例証としてだけであり、クレームの範囲に
制限的な影響を及ぼさないものとする。 本発明の好ましい特徴は、ここで、添付図面に関して、純粋に例証として説明
されるだろう。
ことが望ましいことがある。例えば、実行環境は、ネットワークプリンタへ実時
間でデバッグ情報を送信するために構成されてよい。 代替実施形態では、受信機/デコーダ226は、ネットワークスタックを備え
られ、前述されたNetProxy層は不要にされる。 ワークステーションおよび受信機/デコーダは、オーサリングツールに関して
前述されてきた。しかしながら、受信機/デコーダおよびワークステーションは
、アプリケーションの立証などのその他の目的のも使用されてよい。 本出願人の名前での同時係続欧州特許出願番号第99401744.0号に説
明されるデバイスシミュレータは、本発明とともに使用されてよい。その特許出
願の主題は、参照してここに組み込まれている。 本発明が、純粋にれいによって前述され、詳細の修正が発明の範囲内で加える
ことができることが理解されるだろう。 説明中に開示されるそれぞれの特徴、および(該当する場合)クレームと図面
は、独立して、または適切な組み合わせで提供されてよい。 クレーム中に出現する参照番号は、例証としてだけであり、クレームの範囲に
制限的な影響を及ぼさないものとする。 本発明の好ましい特徴は、ここで、添付図面に関して、純粋に例証として説明
されるだろう。
【図1】
図1は典型的なデジタルテレビシステムのアーキテクチャを示す。
【図2】
図2は図1のデジタルテレビシステムの対話型システムのアーキテクチャを示
す。
す。
【図3】
図3は図1のシステムの受信機/デコーダの概略図である。
【図4】
図4は受信機/デコーダの層化されたアーキテクチャの機能ブロック図である
。
。
【図5】
図5はオーサリングツールの概要を示す。
【図6】
図6は図5の該オーサリングツールの主要な構成要素を示す。
【図7】
図7は図5の該オーサリングツールの動作を示す。
【図8】
図8は図5の該オーサリングツールの入出力層のアーキテクチャを示す。
【図9】
図9はネットワークデータフレームを示す図である。
【図10】
図10は発明の別の態様の機能図である。
─────────────────────────────────────────────────────
フロントページの続き
(81)指定国 EP(AT,BE,CH,CY,
DE,DK,ES,FI,FR,GB,GR,IE,I
T,LU,MC,NL,PT,SE),OA(BF,BJ
,CF,CG,CI,CM,GA,GN,GW,ML,
MR,NE,SN,TD,TG),AP(GH,GM,K
E,LS,MW,MZ,SD,SL,SZ,TZ,UG
,ZW),EA(AM,AZ,BY,KG,KZ,MD,
RU,TJ,TM),AE,AG,AL,AM,AT,
AU,AZ,BA,BB,BG,BR,BY,BZ,C
A,CH,CN,CR,CU,CZ,DE,DK,DM
,DZ,EE,ES,FI,GB,GD,GE,GH,
GM,HR,HU,ID,IL,IN,IS,JP,K
E,KG,KP,KR,KZ,LC,LK,LR,LS
,LT,LU,LV,MA,MD,MG,MK,MN,
MW,MX,MZ,NO,NZ,PL,PT,RO,R
U,SD,SE,SG,SI,SK,SL,TJ,TM
,TR,TT,TZ,UA,UG,US,UZ,VN,
YU,ZA,ZW
(72)発明者 ボウドカネ,マモウド
フランス国 エフ−75516 パリ セデッ
クス 15 プレイス ラオール ダウトリ
ー 34,カナル プラス テクノロジーズ
ソシエテ アノニム内
(72)発明者 ビンセント,ディディア
フランス国 エフ−75516 パリ セデッ
クス 15 プレイス ラオール ダウトリ
ー 34,カナル プラス テクノロジーズ
ソシエテ アノニム内
Fターム(参考) 5B042 GA08 GB02 HH04 HH06
5C025 DA01 DA05
5C061 BB01 CC05
Claims (51)
- 【請求項1】 アプリケーションを記憶するための手段、記憶されているア
プリケーションを実行するための手段、および該記憶されているアプリケーショ
ンをデバッグするためにワークステーションによる使用のためにリモートワーク
ステーションにデバッグメッセージをネットワーク上で通信するための手段とを
備える受信機/デコーダ。 - 【請求項2】 デバッグメッセージを通信するための手段は、メッセージに
依存して、受信機/デコーダによってアプリケーションの実行を制御するために
、ネットワークからデバッグメッセージを受信するように適応される、請求項1
に記載の受信機/デコーダ。 - 【請求項3】 メッセージが、リモートホストの識別こw含み、デバッグメ
ッセージを通信するための手段が、メッセージの中で特定されるリモートほすと
と追加デバッグメッセージを通信するように適応される、請求項2に記載の受信
機/デコーダ。 - 【請求項4】 デバッグメッセージを通信するための手段が、受信機/デコ
ーダによってアプリケーションの実行に関する情報を含むデバッグメッセージを
伝送するように適応される、任意の前記請求項に記載の受信機/デコーダ。 - 【請求項5】 アプリケーションが複数のファイルを備え、受信機/デコー
ダが、リモートワークステーションからファイルの内の少なくとも1つを選択的
に読み取るための手段を備える、任意の前記請求項に記載の受信機/デコーダ。 - 【請求項6】 アプリケーションを実行するための手段を備え、該アプリケ
ーションが複数のファイルを備え、ファイルの少なくとも1つを外部記憶装置手
段から選択的に読み取るための手段を備える、受信機/デコーダ。 - 【請求項7】 外部記憶装置手段がリモートワークステーションの一部であ
る、請求項6に記載の受信機/デコーダ。 - 【請求項8】 受信機/デコーダが、リモートワークステーションから個々
のファイルを読み取るように適応される、請求項5または7に記載の受信機/デ
コーダ。 - 【請求項9】 受信機/デコーダが、リモートワークステーションでそのネ
ットワークス宅としてシミュレーションされるネットワークすタックを使用する
ように適応される、請求項8に記載の受信機/デコーダ。 - 【請求項10】 受信機/デコーダは、リモートワークステーションからブ
ートファイルをロードするように適応される、請求項5と7から9のどれかに記
載の受信機/デコーダ。 - 【請求項11】 受信機/デコーダは、それがアプリケーションを実行する
ために必要とされるにつれて、前記少なくとも1つのファイルを読み取るように
適応される、請求項5から10のどれかに記載の受信機/デコーダ。 - 【請求項12】 受信器/デコーダが、更新されたファイルを読み取るよう
に適応される、請求項5から11のどれかに記載の受信機/デコーダ。 - 【請求項13】 記憶され、リモート受信機/デコーダ上で実行中のアプリ
ケーションをデバッグするためのワークステーションであり、ネットワーク上で
受信機/デコーダとデバッグメッセージを通信するための手段を備えるワークス
テーション。 - 【請求項14】 受信機/デコーダで実行されるアプリケーションを記憶す
るための記憶手段を備え、該アプリケーションが複数のファイル、およびネット
ワークによってワークステーションに接続される受信機/デコーダによるファイ
ルの少なくとも1つへのアクセスを可能にするための手段を備える、請求項13
に記載のワークステーション。 - 【請求項15】 受信機/デコーダで実行するためのアプリケーションを記
憶するための記憶装置手段を備え、該アプリケーションが、複数のファイル、お
よびネットワークによってワークステーションに接続される受信機/デコーダに
よるファイルの少なくとも1つへのアクセスを可能にするための手段を備える、
ワークステーション。 - 【請求項16】 前記少なくとも1つのファイルへのアクセスを可能にする
ための手段が、個別ファイルを読み取ることができるように適応される、請求項
14または請求項15に記載のワークステーション。 - 【請求項17】 さらに、アプリケーションを編集するための手段を備える
、請求項14から17のどれかに記載のワークステーション。 - 【請求項18】 請求項1から12のどれかに記載の受信機/デコーダおよ
び請求項13から17のどれかに記載のワークステーションを備えるアプリケー
ション開発ツール。 - 【請求項19】 受信機/デコーダとワークステーションの間で通信を実現
するために動作できるネット代理を含む、請求項18に記載のアプリケーション
開発ツール。 - 【請求項20】 アプリケーションを編集するためのワークステーション、
および該アプリケーションを実行するための受信機/デコーダを備えるアプリケ
ーション開発ツールであって、そこでは、受信機/デコーダが、ワークステーシ
ョンからアプリケーションの少なくとも一部を選択的に読み取るための手段を有
し、ワークステーションが、受信機/デコーダに各部を通信するための手段を有
する、アプリケーション開発ツール。 - 【請求項21】 ワークステーションが、さらに、アプリケーションを記憶
するための記憶装置手段を備える、請求項20に記載のアプリケーション開発ツ
ール。 - 【請求項22】 アプリケーションが複数のファイルを備える、請求項20
または請求項21に記載のアプリケーション開発ツール。 - 【請求項23】 受信機/デコーダは、記憶装置手段から個々のファイルを
読み取るように適応される、請求項22に記載のアプリケーション開発ツール。 - 【請求項24】 受信機/デコーダは、それがアプリケーションを実行する
ために必要とされるにつれて、ファイルを読み取るように適応される、請求項2
2または請求項23に記載のアプリケーション開発ツール。 - 【請求項25】 ワークステーションが、ファイルを更新するように適応さ
れ、受信機/デコーダがいったん更新されると前記ファイルを読み取るように適
応される、請求項22から24のどれかに記載のアプリケーション開発ツール。 - 【請求項26】 受信機/デコーダが、ファイルの最新のバージョンを読み
取るように適応される、請求項22から25のどれかに記載のアプリケーション
開発ツール。 - 【請求項27】 ワークステーションが、ファイルを廃棄するように受信機
/デコーダに命令するように適応される、請求項22から26のどれかに記載の
アプリケーション開発ツール。 - 【請求項28】 請求項26または請求項27に記載のアプリケーション開
発ツール、およびワークステーションと受信機/デコーダがその上で通信するネ
ットワークを備える、アプリケーション開発環境。 - 【請求項29】 記憶され、受信機/デコーダで実行中のアプリケーション
をデバッグする方法であって、記憶されているアプリケーションをデバッグする
際に、ワークステーションにより使用するために、受信機/デコーダからリモー
トワークステーションへネットワーク上でデバッグメッセージを通信することを
備える該方法。 - 【請求項30】 デバッグメッセージが、メッセージに依存してアプリケー
ションの実行を制御するために、ネットワーク上で受信機/デコーダによって受
信される、請求項29に記載の方法。 - 【請求項31】 メッセージが、リモートホストの識別子を含み、方法が、
メッセージの中で特定されるリモートホストと追加デバッグメッセージを通信す
ることを備える、請求項30に記載の方法。 - 【請求項32】 受信機/デコーダから、アプリケーションの実行に関する
情報を含むデバッグメッセージを伝送することを備える、請求項29から31の
どれかに記載の方法。 - 【請求項33】 アプリケーションが複数のファイルを備え、方法が、リモ
ートワークステーションからファイルの内の少なくとも1つを選択的に読み取る
ことを備える、請求項29から32のどれかに記載の方法。 - 【請求項34】 アプリケーションを編集するためのワークステーションか
らアプリケーションを実行するための受信機/デコーダにアプリケーションを転
送する方法であって、アプリケーションが複数のファイルを備え、ワークステー
ションから受信機/デコーダに個々のファイルを転送することを備える該方法。 - 【請求項35】 それがアプリケーションを実行することを必要とされると
きにファイルが転送される、請求項34に記載の方法。 - 【請求項36】 ファイルを更新すること、および更新されたファイルを受
信機/デコーダに転送することを備える、請求項34または請求項35に記載の
方法。 - 【請求項37】 受信機/デコーダでアプリケーションを実行するための方
法であって、該アプリケーションが複数のファイルを備え、それがアプリケーシ
ョンを実行することを必要とされるにつれて、受信機/デコーダにファイルを転
送することを備える、該方法。 - 【請求項38】 受信機/デコーダ上でアプリケーションを実行する方法で
あって、該アプリケーションが、ブートファイルおよび少なくとも1つの追加フ
ァイルを備え、 受信機/デコーダにブートファイルを転送することと、 受信機/デコーダ内でブートファイルを実行することと、 それが必要とされるときに、少なくとも1つの追加ファイルを転送することと
、 を備える、該方法。 - 【請求項39】 ブートファイルの少なくとも1つまたは該少なくとも1つ
の追加ファイルが、ネットワーク上で転送される、請求項38に記載の方法。 - 【請求項40】 ブートファイルの少なくとも1つ、および少なくとも1つ
のそれ以外のファイルが、ネットワークファイル記憶装置から転送される、請求
項39に記載される方法。 - 【請求項41】 その上に、請求項29から40のどれかの方法を実行する
ためのプログラムを記憶していたコンピュータ読取り可能媒体。 - 【請求項42】 請求項29から40のどれかの方法を実行するためのプロ
グラムを備える、コンピュータプログラム。 - 【請求項43】 請求項29から40のどれかの方法を実行するためのコン
ピュータプログラムを実現する信号。 - 【請求項44】 実質的にここに記述されるような受信機/デコーダ。
- 【請求項45】 実質的にここに記述されるようなワークステーション。
- 【請求項46】 実質的にここに記述されるようなアプリケーション開発ツ
ール。 - 【請求項47】 実質的にここに記述されるようなアプリケーション開発環
境。 - 【請求項48】 実質的にここに記述されるようなアプリケーションをデバ
ッグする方法。 - 【請求項49】 該アプリケーションを編集するワークステーションから、
実質的にここに記述されるようなアプリケーションを実行するための受信機/デ
コーダにアプリケーションを転送するための方法。 - 【請求項50】 実質的にここに記述されるような受信機/デコーダでアプ
リケーションを実行する方法。 - 【請求項51】 実質的にここに記述されるようなコンピュータ読取り可能
媒体、コンピュータプログラム製品または信号。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP99401746A EP1067455A1 (en) | 1999-07-09 | 1999-07-09 | Running and testing applications |
EP99401746.5 | 1999-07-09 | ||
EP00102043.7 | 2000-02-02 | ||
EP00102043A EP1067458A1 (en) | 1999-07-09 | 2000-02-02 | Running and testing applications |
PCT/IB2000/000995 WO2001004751A2 (en) | 1999-07-09 | 2000-07-05 | Running and testing applications |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003504950A true JP2003504950A (ja) | 2003-02-04 |
Family
ID=26070490
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001510089A Pending JP2003504950A (ja) | 1999-07-09 | 2000-07-05 | アプリケーションの実行および試験 |
Country Status (13)
Country | Link |
---|---|
EP (2) | EP1067458A1 (ja) |
JP (1) | JP2003504950A (ja) |
KR (1) | KR20020027467A (ja) |
CN (1) | CN1372662A (ja) |
AU (1) | AU5560600A (ja) |
CA (1) | CA2377486A1 (ja) |
CZ (1) | CZ200243A3 (ja) |
HK (1) | HK1044602A1 (ja) |
IL (1) | IL147382A0 (ja) |
NO (1) | NO20020023L (ja) |
PL (1) | PL352186A1 (ja) |
TR (1) | TR200200009T2 (ja) |
WO (1) | WO2001004751A2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005011342A (ja) * | 2003-06-20 | 2005-01-13 | Microsoft Corp | プラグ可能構成要素におけるブレークポイントのデバッグ |
Families Citing this family (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050035970A1 (en) * | 1999-08-03 | 2005-02-17 | Wirtschafter Jenny Dana | Methods and apparatuses for authoring declarative content for a remote platform |
ATE330210T1 (de) * | 2002-06-14 | 2006-07-15 | Mettler Toledo Gmbh | Objektorientiertes verfahren, system und software für eine gravimetrisches messinstrument |
EP1515542A1 (en) * | 2003-09-12 | 2005-03-16 | Sony NetServices GmbH | Method to provide logging information of an application in a digital broadcast system |
US20050096935A1 (en) * | 2003-11-03 | 2005-05-05 | Data I/O Corporation | Remote development support system and method |
CN102253882B (zh) * | 2004-12-31 | 2014-11-26 | 英特尔公司 | 远程记录机制 |
US8806435B2 (en) | 2004-12-31 | 2014-08-12 | Intel Corporation | Remote logging mechanism |
US7675854B2 (en) | 2006-02-21 | 2010-03-09 | A10 Networks, Inc. | System and method for an adaptive TCP SYN cookie with time validation |
US8312507B2 (en) | 2006-10-17 | 2012-11-13 | A10 Networks, Inc. | System and method to apply network traffic policy to an application session |
US8584199B1 (en) | 2006-10-17 | 2013-11-12 | A10 Networks, Inc. | System and method to apply a packet routing policy to an application session |
US9960967B2 (en) | 2009-10-21 | 2018-05-01 | A10 Networks, Inc. | Determining an application delivery server based on geo-location information |
KR101104166B1 (ko) * | 2009-11-26 | 2012-01-12 | 애니포인트 미디어 그룹 | 컴퓨팅 장치 및 미디어 재생 장치를 이용한 사용자 애플리케이션 테스트 시스템 및 테스트 방법 |
KR101104165B1 (ko) * | 2009-11-26 | 2012-01-13 | 애니포인트 미디어 그룹 | 사용자 애플리케이션의 테스트가 가능한 미디어 재생 장치 및 이를 이용한 사용자 애플리케이션의 테스트 방법 |
KR101084289B1 (ko) * | 2009-11-26 | 2011-11-16 | 애니포인트 미디어 그룹 | 미디어 재생 장치에서 실행되는 사용자 애플리케이션을 제공하는 컴퓨팅 장치 및 제공 방법 |
US9215275B2 (en) | 2010-09-30 | 2015-12-15 | A10 Networks, Inc. | System and method to balance servers based on server load status |
US9609052B2 (en) | 2010-12-02 | 2017-03-28 | A10 Networks, Inc. | Distributing application traffic to servers based on dynamic service response time |
CN102567198B (zh) * | 2010-12-30 | 2014-12-10 | 中国移动通信集团公司 | 对应用程序在物理系统环境中进行测试的系统及其方法 |
US8897154B2 (en) | 2011-10-24 | 2014-11-25 | A10 Networks, Inc. | Combining stateless and stateful server load balancing |
US9386088B2 (en) | 2011-11-29 | 2016-07-05 | A10 Networks, Inc. | Accelerating service processing using fast path TCP |
US9094364B2 (en) | 2011-12-23 | 2015-07-28 | A10 Networks, Inc. | Methods to manage services over a service gateway |
US10044582B2 (en) | 2012-01-28 | 2018-08-07 | A10 Networks, Inc. | Generating secure name records |
CN102595188B (zh) * | 2012-02-27 | 2014-08-20 | 四川长虹电器股份有限公司 | 智能电视的测试方法 |
US9060152B2 (en) | 2012-08-17 | 2015-06-16 | Flextronics Ap, Llc | Remote control having hotkeys with dynamically assigned functions |
US8782221B2 (en) | 2012-07-05 | 2014-07-15 | A10 Networks, Inc. | Method to allocate buffer for TCP proxy session based on dynamic network conditions |
US20160119675A1 (en) | 2012-09-06 | 2016-04-28 | Flextronics Ap, Llc | Programming user behavior reporting |
US11368760B2 (en) | 2012-08-17 | 2022-06-21 | Flextronics Ap, Llc | Applications generating statistics for user behavior |
US10002141B2 (en) | 2012-09-25 | 2018-06-19 | A10 Networks, Inc. | Distributed database in software driven networks |
US10021174B2 (en) | 2012-09-25 | 2018-07-10 | A10 Networks, Inc. | Distributing service sessions |
US9843484B2 (en) | 2012-09-25 | 2017-12-12 | A10 Networks, Inc. | Graceful scaling in software driven networks |
JP2015534769A (ja) | 2012-09-25 | 2015-12-03 | エイ10 ネットワークス インコーポレイテッドA10 Networks, Inc. | データネットワークにおける負荷分散 |
US9338225B2 (en) | 2012-12-06 | 2016-05-10 | A10 Networks, Inc. | Forwarding policies on a virtual service network |
WO2014092812A1 (en) * | 2012-12-13 | 2014-06-19 | Flextronics Ap, Llc | Report database intelligent television |
US9531846B2 (en) | 2013-01-23 | 2016-12-27 | A10 Networks, Inc. | Reducing buffer usage for TCP proxy session based on delayed acknowledgement |
US9900252B2 (en) | 2013-03-08 | 2018-02-20 | A10 Networks, Inc. | Application delivery controller and global server load balancer |
WO2014144837A1 (en) | 2013-03-15 | 2014-09-18 | A10 Networks, Inc. | Processing data packets using a policy based network path |
US10038693B2 (en) | 2013-05-03 | 2018-07-31 | A10 Networks, Inc. | Facilitating secure network traffic by an application delivery controller |
US10027761B2 (en) | 2013-05-03 | 2018-07-17 | A10 Networks, Inc. | Facilitating a secure 3 party network session by a network device |
US10230770B2 (en) | 2013-12-02 | 2019-03-12 | A10 Networks, Inc. | Network proxy layer for policy-based application proxies |
US9942152B2 (en) | 2014-03-25 | 2018-04-10 | A10 Networks, Inc. | Forwarding data packets using a service-based forwarding policy |
US10020979B1 (en) | 2014-03-25 | 2018-07-10 | A10 Networks, Inc. | Allocating resources in multi-core computing environments |
US9942162B2 (en) | 2014-03-31 | 2018-04-10 | A10 Networks, Inc. | Active application response delay time |
US9806943B2 (en) | 2014-04-24 | 2017-10-31 | A10 Networks, Inc. | Enabling planned upgrade/downgrade of network devices without impacting network sessions |
US9906422B2 (en) | 2014-05-16 | 2018-02-27 | A10 Networks, Inc. | Distributed system to determine a server's health |
US9986061B2 (en) | 2014-06-03 | 2018-05-29 | A10 Networks, Inc. | Programming a data network device using user defined scripts |
US10129122B2 (en) | 2014-06-03 | 2018-11-13 | A10 Networks, Inc. | User defined objects for network devices |
US9992229B2 (en) | 2014-06-03 | 2018-06-05 | A10 Networks, Inc. | Programming a data network device using user defined scripts with licenses |
CN104299490A (zh) * | 2014-09-15 | 2015-01-21 | 肇庆智力科技发展有限公司 | 一种智能拼装电子积木 |
US10581976B2 (en) | 2015-08-12 | 2020-03-03 | A10 Networks, Inc. | Transmission control of protocol state exchange for dynamic stateful service insertion |
US10243791B2 (en) | 2015-08-13 | 2019-03-26 | A10 Networks, Inc. | Automated adjustment of subscriber policies |
US10318288B2 (en) | 2016-01-13 | 2019-06-11 | A10 Networks, Inc. | System and method to process a chain of network applications |
US10389835B2 (en) | 2017-01-10 | 2019-08-20 | A10 Networks, Inc. | Application aware systems and methods to process user loadable network applications |
CN107040777A (zh) * | 2017-06-08 | 2017-08-11 | 深圳市创维软件有限公司 | 一种远程调试方法、机顶盒和服务器 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5635979A (en) * | 1994-05-27 | 1997-06-03 | Bell Atlantic | Dynamically programmable digital entertainment terminal using downloaded software to control broadband data operations |
US5615331A (en) * | 1994-06-23 | 1997-03-25 | Phoenix Technologies Ltd. | System and method for debugging a computing system |
US5940074A (en) * | 1996-06-03 | 1999-08-17 | Webtv Networks, Inc. | Remote upgrade of software over a network |
US5983017A (en) * | 1996-11-12 | 1999-11-09 | Lsi Logic Corporation | Virtual monitor debugging method and apparatus |
US6618854B1 (en) * | 1997-02-18 | 2003-09-09 | Advanced Micro Devices, Inc. | Remotely accessible integrated debug environment |
-
2000
- 2000-02-02 EP EP00102043A patent/EP1067458A1/en not_active Withdrawn
- 2000-07-05 AU AU55606/00A patent/AU5560600A/en not_active Abandoned
- 2000-07-05 JP JP2001510089A patent/JP2003504950A/ja active Pending
- 2000-07-05 IL IL14738200A patent/IL147382A0/xx unknown
- 2000-07-05 WO PCT/IB2000/000995 patent/WO2001004751A2/en not_active Application Discontinuation
- 2000-07-05 CZ CZ200243A patent/CZ200243A3/cs unknown
- 2000-07-05 TR TR2002/00009T patent/TR200200009T2/xx unknown
- 2000-07-05 CA CA002377486A patent/CA2377486A1/en not_active Abandoned
- 2000-07-05 PL PL00352186A patent/PL352186A1/xx unknown
- 2000-07-05 EP EP00940708A patent/EP1194847A2/en not_active Withdrawn
- 2000-07-05 CN CN00812456A patent/CN1372662A/zh active Pending
- 2000-07-05 KR KR1020027000148A patent/KR20020027467A/ko not_active Application Discontinuation
-
2002
- 2002-01-03 NO NO20020023A patent/NO20020023L/no not_active Application Discontinuation
- 2002-08-20 HK HK02106080.6A patent/HK1044602A1/zh unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005011342A (ja) * | 2003-06-20 | 2005-01-13 | Microsoft Corp | プラグ可能構成要素におけるブレークポイントのデバッグ |
Also Published As
Publication number | Publication date |
---|---|
NO20020023D0 (no) | 2002-01-03 |
EP1194847A2 (en) | 2002-04-10 |
CA2377486A1 (en) | 2001-01-18 |
IL147382A0 (en) | 2002-08-14 |
CN1372662A (zh) | 2002-10-02 |
CZ200243A3 (cs) | 2002-05-15 |
WO2001004751A2 (en) | 2001-01-18 |
AU5560600A (en) | 2001-01-30 |
PL352186A1 (en) | 2003-08-11 |
EP1067458A1 (en) | 2001-01-10 |
HK1044602A1 (zh) | 2002-10-25 |
TR200200009T2 (tr) | 2002-06-21 |
WO2001004751A3 (en) | 2001-12-06 |
KR20020027467A (ko) | 2002-04-13 |
NO20020023L (no) | 2002-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2003504950A (ja) | アプリケーションの実行および試験 | |
EP0893913A1 (en) | Digital transport stream processing | |
US20070174356A1 (en) | Program execution device, program execution method, and program | |
US8850511B2 (en) | Program replacing method | |
JP2008117405A (ja) | ネットワーク上でソフトウェアを遠隔操作でアップグレードする方法 | |
JP4105382B2 (ja) | Ieeeセット・トップ・ボックス装置ドライバ | |
JP2009077451A (ja) | 伝送データ・ストリームからデータ・セクションを抽出する方法 | |
JP2002503926A (ja) | 復号器におけるディジタル画像データの処理 | |
US7167820B2 (en) | Apparatus for and method of testing applications | |
EP1652083A2 (en) | Program executing apparatus | |
AU740740B2 (en) | Data processing system | |
JP2003500943A (ja) | 多くの操作環境との互換性を与えるテレビセットトップターミナルのためのソフトウエアアーキテクチャー | |
JP2002513253A (ja) | レシーバ/デコーダおよびビデオデータの処理方法 | |
JP2003504977A (ja) | アプリケーションを試験するための装置および方法 | |
JP4303884B2 (ja) | モデム制御 | |
AU742213B2 (en) | Access control system | |
EP1067455A1 (en) | Running and testing applications | |
MXPA00000776A (en) | Ieee set top box device driver | |
Reimers et al. | The Multimedia Home Platform (MHP) | |
CZ2000266A3 (cs) | Zpracování digitálního přenosového toku dat | |
MXPA06011297A (en) | Program execution device |