(57)【要約】【課題】  サーバ側ではどのクライアントからの要求かどうかを一切知る必要がなく、クライアントプロセスからの要求に応じた応答の処理に専念することができる情報処理システムを提供する。【解決手段】  メインＣＰＵ８は、映像再生装置のクライアント上のＧＵＩに対応した処理を行う複数のクライアントプロセス部２３と、通信用識別子の生成および管理を行う識別子生成／管理部２４と、クライアントプロセスからの要求に識別子を付与する識別子付与部２５と、識別子が付与された通信データを共有メモリ１５へ書き込む書き込み部２６と、共有メモリ１５から識別子と応答が含まれた通信データを読み出す読み出し部２７と、識別子を解析し、識別子から対応するクライアントプロセス２３ｉを決定して応答を戻す識別子解析部２７から構成されている。【選択図】  図３
2007052668.tif 000002
【特許請求の範囲】
【請求項１】
要求を出すクライアントと、クライアントからの要求とその要求に対して生成した応答を共有メモリに入出力しながらクライアントに対して要求に応じた応答を返すサーバとを備えてなる情報処理システムにおいて、
上記クライアントは、ユーザインターフェースに対応した処理を行う複数のクライアントプロセス機能部と、
上記複数のクライアントプロセス機能部からの各要求に応じた通信用の識別情報を生成する識別情報生成部と、
上記識別情報生成部により生成された各識別情報を該当のクライアントプロセス機能部の要求用通信データに付与する識別情報付与部と、
上記識別情報付与部により各識別情報が付与された要求用通信データを上記クライアントの上記共有メモリに書き込むデータ書き込み部と、
上記クライアントが上記要求に応じて生成して上記共有メモリに書き込んだ上記識別情報が付与された応答用通信データを読み出すデータ読み出し部と、
上記データ読み出し部により上記共有メモリから読み出された上記応答用通信データから当該応答に付与された識別情報を解析する識別情報解析部と、
上記識別情報解析部によって解析された識別情報に応じて応答を上記要求を出したクライアントプロセス機能部に戻す制御部とを有し、
上記サーバは、上記共有メモリから上記識別情報が付与された要求用通信データを読み出すデータ読み出し部と、
上記データ読み出し部が上記共有メモリから読み出した上記要求用通信データから上記識別情報を分離する識別情報分離部と、
上記識別情報分離部によって上記要求用通信データから分離された識別情報を一時的に記憶する識別情報記憶部と、
上記識別情報分離部によって上記識別情報が分離された上記要求用通信データに対する応答を生成する応答生成部と、
上記応答生成部で生成された応答に上記識別情報記憶部に記憶された識別情報を付与して応答用通信データを生成する識別情報復元部と、
上記識別情報復元部で生成された上記応答用通信データを上記共有メモリへ書き込むデータ書き込み部とを有してなる
ことを特徴とする情報処理システム。
【請求項２】
上記クライアントは、公開鍵を用いて、共通鍵により暗号化されたデータを復号するための鍵を解く処理を行うことを特徴とする請求項１記載の情報処理システム。
【請求項３】
上記サーバは、予め上記識別情報のうちの所定数をリザーブしておき、これらリザーブした識別情報を付与した応答用通信データをクライアントに送信することによって、サーバ内で発生した異常状態を上記クライアントに知らせることを特徴とする請求項１記載の情報処理システム。
【請求項４】
要求を出すクライアントと、クライアントからの要求とその要求に対して生成した応答を共有メモリに入出力しながらクライアントに対して要求に応じた応答を返すサーバとを備えてなる情報処理システムにおいて実行される情報処理方法であって、
ユーザインターフェースに対応した処理を行う複数のクライアントプロセス機能工程と、
上記複数のクライアントプロセス機能工程からの各要求に応じた通信用の識別情報を生成する識別情報生成工程と、
上記識別情報生成工程により生成された各識別情報を該当のクライアントプロセス機能部の要求用通信データに付与する識別情報付与工程と、
上記識別情報付与工程により各識別情報が付与された要求用通信データを上記クライアントの上記共有メモリに書き込むデータ書き込み工程と、
上記共有メモリから上記識別情報が付与された要求用通信データを読み出すデータ読み出し工程と、
上記データ読み出し工程が上記共有メモリから読み出した上記要求用通信データから上記識別情報を分離する識別情報分離工程と、
上記識別情報分離工程によって上記要求用通信データから分離された識別情報を一時的に記憶部に記憶する識別情報記憶工程と、
上記識別情報分離工程によって上記識別情報が分離された上記要求用通信データに対する応答を生成する応答生成工程と、
上記応答生成工程で生成された応答に上記識別情報記憶部に記憶された識別情報を付与して応答用通信データを生成する識別情報復元工程と、
上記識別情報復元工程で生成された上記応答用通信データを上記共有メモリへ書き込むデータ書き込み工程と、
上記クライアントが上記要求に応じて生成して上記共有メモリに書き込んだ上記識別情報が付与された応答用通信データを読み出すデータ読み出し工程と、
上記データ読み出し工程により上記共有メモリから読み出された上記応答用通信データから当該応答に付与された識別情報を解析する識別情報解析工程と、
上記識別情報解析工程によって解析された識別情報に応じて応答を上記要求を出したクライアントプロセス機能部に戻す制御工程と、
を有してなることを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、要求を出すクライアントと、クライアントからの要求とその要求に対して生成した応答を共有メモリに入出力しながらクライアントに対して応答を返すサーバとを備えてなる情報処理システム及び情報処理方法に関する。
【背景技術】
【０００２】
従来、単一のサーバと複数台のクライアントからなるサーバ・クライアント型情報処理システムにおいては、サーバと各クライアント間を直接接続するか、またはサーバ側で処理を受け付けてからはじめてサーバ側でクライアントの識別情報を生成し、要求に応じた処理を行ってクライアントに処理結果を応答として戻す間、アプリケーションレベルでクライアントの識別情報を保持する必要があった。
【０００３】
例えば、下記特許文献１には、サーバ側にてサーバ・クライアント間に設定するコンテンツ配信コネクションの識別子としてのコネクションＩＤを生成し、このコネクションＩＤをクライアントに提供するサーバ装置、情報処理装置等が開示されている。
【０００４】
また、共有バス接続でのマルチＣＰＵ構成の情報処理システムにおいては、クライアントプロセッサ毎に、サーバとして動くブロックに共有メモリ空間を複数割り当てる必要があり、サブＣＰＵのリソース（共有メモリ）を過大に消費していた。
【０００５】
また、単一ＣＰＵ上で動くマルチタスクシステムにおいて、サーバプロセスとクライアントプロセスにおのおの独立した通信路（メッセージキュー）を用意する必要がある。
【０００６】
ところで、近年、デジタルシネマが注目されるようになった。デジタルシネマは、デジタルコンテンツ化されて配送、またはネットワーク等を通して配信された映画用のデジタル映像情報を例えばアレイ構成の複数のＨＤＤからなる大容量の情報記憶装置に記録し、この大容量情報記憶装置から連続的にデジタル映像情報を読み出して映像再生装置にて再生し、反射型プロジェクタ又は透過型プロジェクタに供給し、これらプロジェクタによってスクリーンに投影する、映画情報処理システムである。
【０００７】
【特許文献１】特開２００４−３４８４５４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述した従来の情報処理システムにおいては、独立した通信路、ステートマシン等をクライアント毎に用意する必要があり、構成変更（クライアント数の変更）等においては大きな設計変更が必要であった。
【０００９】
特に、デジタルシネマシステムに用いられる映像再生装置にあって、内部にクライアントとサーバという構成を適用することを考えた場合、サーバとして用いることになるブロックでは、ビデオやオーディオのデコード等のリアルタイム処理を受け持つ。このため、サーバブロックでは、識別情報を生成し、それを管理するような処理は上記リアルタイム処理に影響を及ぼす虞があり、処理の高速化、記述の簡略化の妨げになってしまう。
【００１０】
また、上記映像再生装置にあって、サーバブロックにおける共有メモリの過大消費もコストの面、装置の大型化の面から避けたい。また、サーバプロセスとクライアントプロセスとの間におのおの独立した通信路を用意するのも、同様にコストの面、装置の大型化の面からも避けたい。
【００１１】
本発明は、上記実情に鑑みてなされたものであり、サーバ側ではどのクライアントからの要求かどうかを一切知る必要がなく、クライアントからの要求に応じた応答の処理に専念することができる情報処理システム及び情報処理方法の提供を目的とする。
【課題を解決するための手段】
【００１２】
本発明に係る情報処理システムは、上記課題を解決するために、要求を出すクライアントと、クライアントからの要求とその要求に対して生成した応答を共有メモリに入出力しながらクライアントに対して要求に応じた応答を返すサーバとを備えてなる情報処理システムにおいて、上記クライアントは、ユーザインターフェースに対応した処理を行う複数のクライアントプロセス機能部と、上記複数のクライアントプロセス機能部からの各要求に応じた通信用の識別情報を生成する識別情報生成部と、上記識別情報生成部により生成された各識別情報を該当のクライアントプロセス機能部の要求用通信データに付与する識別情報付与部と、上記識別情報付与部により各識別情報が付与された要求用通信データを上記クライアントの上記共有メモリに書き込むデータ書き込み部と、上記クライアントが上記要求に応じて生成して上記共有メモリに書き込んだ上記識別情報が付与された応答用通信データを読み出すデータ読み出し部と、上記データ読み出し部により上記共有メモリから読み出された上記応答用通信データから当該応答に付与された識別情報を解析する識別情報解析部と、上記識別情報解析部によって解析された識別情報に応じて応答を上記要求を出したクライアントプロセス機能部に戻す制御部とを有し、上記サーバは、上記共有メモリから上記識別情報が付与された要求用通信データを読み出すデータ読み出し部と、上記データ読み出し部が上記共有メモリから読み出した上記要求用通信データから上記識別情報を分離する識別情報分離部と、上記識別情報分離部によって上記要求用通信データから分離された識別情報を一時的に記憶する識別情報記憶部と、上記識別情報分離部によって上記識別情報が分離された上記要求用通信データに対する応答を生成する応答生成部と、上記応答生成部で生成された応答に上記識別情報記憶部に記憶された識別情報を付与して応答用通信データを生成する識別情報復元部と、上記識別情報復元部で生成された上記応答用通信データを上記共有メモリへ書き込むデータ書き込み部とを有してなる。
【００１３】
また、本発明に係る情報処理方法は、上記課題を解決するために、要求を出すクライアントと、クライアントからの要求とその要求に対して生成した応答を共有メモリに入出力しながらクライアントに対して要求に応じた応答を返すサーバとを備えてなる情報処理システムにおいて実行される情報処理方法であって、ユーザインターフェースに対応した処理を行う複数のクライアントプロセス機能工程と、上記複数のクライアントプロセス機能工程からの各要求に応じた通信用の識別情報を生成する識別情報生成工程と、上記識別情報生成工程により生成された各識別情報を該当のクライアントプロセス機能部の要求用通信データに付与する識別情報付与工程と、上記識別情報付与工程により各識別情報が付与された要求用通信データを上記クライアントの上記共有メモリに書き込むデータ書き込み工程と、上記共有メモリから上記識別情報が付与された要求用通信データを読み出すデータ読み出し工程と、上記データ読み出し工程が上記共有メモリから読み出した上記要求用通信データから上記識別情報を分離する識別情報分離工程と、上記識別情報分離工程によって上記要求用通信データから分離された識別情報を一時的に記憶部に記憶する識別情報記憶工程と、上記識別情報分離工程によって上記識別情報が分離された上記要求用通信データに対する応答を生成する応答生成工程と、上記応答生成工程で生成された応答に上記識別情報記憶部に記憶された識別情報を付与して応答用通信データを生成する識別情報復元工程と、上記識別情報復元工程で生成された上記応答用通信データを上記共有メモリへ書き込むデータ書き込み工程と、上記クライアントが上記要求に応じて生成して上記共有メモリに書き込んだ上記識別情報が付与された応答を読み出すデータ読み出し工程と、上記データ読み出し工程により上記共有メモリから読み出された上記応答から当該応答に付与された識別情報を解析する識別情報解析工程と、上記識別情報解析工程によって解析された識別情報に応じて応答を上記要求を出したクライアントプロセス機能部に戻す制御工程とを有してなる。
【００１４】
具体的な手段としては、複数の通信端末、クライアント、ＣＰＵ，タスク等（以下クライアントと呼ぶ）と一つの中央処理装置、サーバ、ＣＰＵ、タスク（以下サーバと呼ぶ）との間でのリクエスト／レスポンス型通信において、両者間でやりとりされる通信パケット内にクライアントを識別するためのユニークな情報を記録するエリアを持つ。
【００１５】
クライアントはサーバへの要求毎にユニークな識別情報を生成して付加し、ＰＣＩ−Ｘバスの通信制御装置へ送る。通信制御装置は上記情報をそのままサーバの通信制御装置へ送る。サーバは送られた情報のうち、クライアントを識別するための識別情報を記憶部に保持したままリクエストの処理を行い、サーバの通信制御装置へ戻す。サーバの通信制御装置は、クライアントが付加した識別情報を参照して、複数のクライアントの中から要求を出したクライアントを決定し、そのクライアントに処理結果を通知する。また、サーバはクライアント側からの（リクエスタ側からの要求とは関係ない）情報を通知するために、あらかじめ送信者識別番号の一部にリクエスタは使用禁止とする識別番号を決めておく。この識別番号により、サーバは異常状態を緊急にクライアントに知らせることができる。
【発明の効果】
【００１６】
本発明によれば、サーバ側はどのクライアントからの要求かどうかを一切知る必要がなく、クライアントからの要求に応じた応答の処理に専念することができるので、処理の高速化、記述の簡略化を実現することができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明を実施するための最良の形態を説明する。この実施の形態は、映像情報を外部ストレージから連続的に読み出して再生し、再生した映像をプロジェクタによりスクリーンに投影すると共に、映像に関連した音響をスピーカから再生する映像再生システムである。特に、デジタルシネマの映像情報、及び音響情報を扱う映画再生システムと称する。
【００１８】
図１に示すように、映画再生システム１は、映像再生装置用コントローラ２、映像再生装置本体３、外部ストレージ６、プロジェクタ７からなり、映像再生装置２本体に外部ストレージ６とプロジェクタ７と映像再生装置用コントローラ２が接続している構成である。
【００１９】
外部ストレージ６は、例えば、単独又はアレイ構成の複数のハードディスクドライブ（ＨＤＤ）からなり、デジタルコンテンツ化されて配送、またはネットワーク等を通して配信された映画用のコンテンツを記録している。コンテンツがデジタル映像情報及び音響情報、さらに関連情報からなるのもちろんである。
【００２０】
映像再生装置用コントローラ２は、ＣＰＵにバスを介してＲＯＭ，ＲＡＭ，入出力Ｉ／Ｆ、通信Ｉ／Ｆ等を接続したコンピュータであり、映像再生装置３の動作を制御する。
【００２１】
映像再生装置３本体は、メインブロック部４とＤＣブロック部５からなる。メインブロック部４は、映像再生装置用コントローラ２からの指示に基づき、外部ストレージ６からコンテンツを読み込む。読み込まれたコンテンツは、ＤＣブロック部５に転送される。ＤＣブロック部５は、転送されたコンテンツの映像及びオーディオ情報を復号し、映像情報をプロジェクタ７に、オーディオ情報をアンプ等に供給する。プロジェクタ７は、スクリーン上に復号した映像を投影する。アンプは、音響情報を増幅してからスピーカに渡す。
【００２２】
このように、映像再生装置３は、外部ストレージ６から連続的にコンテンツを読み出して再生し、映像情報をプロジェクタ７に供給し、音響情報をアンプを介してスピーカに供給する。プロジェクタ７は、再生された映像を図示しないスクリーンに投影する。また、アンプで増幅された音響情報はスピーカから放音される。
【００２３】
映画再生システム１にあっては、コンテンツは暗号化されており、何らかの方法で映像再生装置３に鍵を与えて、コンテンツの読み取りと同時に暗号を解く必要がある。また、コンテンツの暗号化鍵そのものも公開鍵暗号によって暗号化されている。このため再生時には、映像再生装置毎に異なった公開鍵が配布される。この公開鍵を使ってコンテンツ鍵の暗号化を解くことになるが、この復号処理は、ＣＰＵにとっては重い処理である。公開鍵として、後述するようにビット長が２０４８というようなＲＳＡを用いるためである。この公開鍵を用いたコンテンツ鍵の取り出しという重いセキュリティ処理は、メインブロック部４にて行う。このコンテンツの暗号化と、そのための、鍵の暗号化については後述する。
【００２４】
図２は映像再生装置３のさらに詳細な構成図である。メインブロック部４は、メインＣＰＵ８、ＲＯＭ／ＲＡＭ９、ネットワークインターフェース１０、ストレージインターフェース１１、セキュリティデバイス１２からなり、メインＣＰＵ８に内部バス１３を介してＲＯＭ／ＲＡＭ９、ネットワークインターフェース１０、ストレージインターフェース１１、セキュリティデバイス１２が接続している構成である。
【００２５】
メインＣＰＵ８は、機能的に、映像再生装置上のグラフィカルユーザインターフェース（ＧＵＩ）に対応した複数の処理（クライアントプロセス）を行う。また、通信用識別子の生成及び管理（どのプロセスがどの識別子を使っているかの管理）を行う。また、各クライアントプロセスからの要求に識別子を付与する。また、識別子が付与された通信データを後述の共有メモリへ書き込む。また、共有メモリから識別子と応答が含まれた通信データを引き取る（読み出す）。また、識別子から対応するクライアントプロセスを決定し、該当クライアントプロセスに応答を戻す。
【００２６】
ＲＯＭ／ＲＡＭ９は、メインＣＰＵ８がクライアントプロセスを行うためのアプリケーションやデータを格納している。また、ＲＡＭはＣＰＵが各アプリケーションを実行する際のワークエリアとなる。
【００２７】
ネットワークインターフェース１０は、映像再生装置用コントローラ２との通信インターフェースである。ストレージインターフェース１１は、外部ストレージ６とのインターフェースである。これらインターフェース１０及び１１は、外部に接続された装置との間でコンテンツや制御信号のやりとりを行うものであり、比較的重い処理を行うことになる。
【００２８】
セキュリティデバイス１２は、外部ストレージ６に記録されている、例えば手順公開型の共通鍵暗号（Advanced Encryption Standard：ＡＥＳ）鍵によって暗号化されたコンテンツ（暗号化コンテンツ）を解読するために、ブロック長１２８ビットのＡＥＳ鍵を取り出す。ＡＥＳ鍵そのものは、公開鍵暗号（Public-key Cryptography）、例えばＲＳＡ（Rivest-Shamir-Adleman Scheme）によって暗号化されている。そこで、映像再生装置毎に配送される、異なったＲＳＡ鍵（長さ２０４８ビット）を用いてＡＥＳ鍵の暗号化を解く必要がある。この処理は、上述したようにＣＰＵにとっては、上記外部とのインターフェース処理同様に重い処理となる。
【００２９】
ＤＣブロック部５は、サブＣＰＵ１４、共有メモリ１５、ＲＯＭ／ＲＡＭ１６、データ転送ＩＦ１７，ビデオデコーダ１８、オーディオデコーダ１９からなり、サブＣＰＵ１４に内部バス２０を介して共有メモリ１５、ＲＯＭ／ＲＡＭ１６、データ転送ＩＦ１７，ビデオデコーダ１８、オーディオデコーダ１９を接続した構成である。また、ビデオデコーダ１８には、デコード処理を行うときに、映像データを一時的に格納するデュアル構成のバッファ２１が接続されている。同様に、オーディオデコーダ１９にもデュアル構成のバッファ２２が接続されている。
【００３０】
メインブロック部４とＤＣブロック部５は、ＰＣＩ−Ｘバス２３で結合されており、ＤＣブロック側に実装されている共有メモリ１５を使ってメインＣＰＵ８とサブＣＰＵ１４が通信を行う。ＤＣブロック部５のサブＣＰＵ１４は、メインブロック部４のメインＣＰＵ８からの指示に基づき、ビデオデコーダ１８及びオーディオデコーダ１９の動作、停止等の制御を行う。
【００３１】
サブＣＰＵ１４は、メインブロック部４によって共有メモリ１５に書き込まれた通信データを共有メモリ１５から読み出す。また、通信データを識別子とクライアントプロセスからの要求に分離する。また、識別子を一時的に記憶する。また、クライアントプロセスからの要求を処理してＤＣブロック部５上のデータ転送Ｉ／Ｆ１７やビデオデコーダ１８、オーディオデコーダ１９の制御と監視を行う。また、クライアントプロセスからの要求に応じた応答を生成する。また、生成した応答に識別子を付与して通信データを作成する。また、通信データを共有メモリへ書き込む。
【００３２】
共有メモリ１５には、クライアントプロセスからの要求とその要求に対して生成した応答が入出力される。
【００３３】
ＲＯＭ／ＲＡＭ１６は、サブＣＰＵ１４におけるアプリケーションやデータを格納している。また、ＲＡＭはサブＣＰＵ１４が各アプリケーションを実行する際のワークエリアとなる。
【００３４】
データ転送Ｉ／Ｆ１７は、メインブロック部４から、ＰＣＩ−Ｘバス２３を介して伝送されてきたコンテンツの映像情報及びオーディオ情報をビデオデコーダ１８及びオーディオデコーダ１９に渡す。
【００３５】
ビデオデコーダ１８は、コンテンツの映像情報をデュアルバッファ２１を用いながらデコードし、プロジェクタ７に供給する。
【００３６】
オーディオデコーダ１９は、コンテンツのオーディオデータをデュアルバッファ２２を用いながらデコードし、アンプに送る。
【００３７】
なお、ＤＣブロック部５側では、メインブロック部４側で取り出されたＡＥＳ鍵を用いて、ＡＥＳ暗号化されたコンテンツを復号する。
【００３８】
また、ＤＣブロック部５側から、後述するように、再生不能等のエラー情報をメインＣＰＵ８に戻すことも可能となっている。
【００３９】
このように、映像再生装置３では、メインブロック部４側で公開鍵暗号（ＲＳＡ）の解読や、ネットワークインターフェース１０及びストレージインターフェース１１を用いた外部とのやりとりなど比較的重い処理を行っている。一方、ＤＣブロック部５側では、ビデオデコーダ１８によりビデオデータのデコード、オーディオデコーダ１９を用いてオーディオデータのデコード、あるいはビデオやオーディオデータのタイミング調整のような、リアルタイム性のある処理を行っている。このため、ＤＣブロック側のソフトウェアには重たい処理を持たせないようにする必要がある。
【００４０】
図３は、メインブロック部４のメインＣＰＵ８と、ＤＣブロック部５のサブＣＰＵ１４における機能ブロック図である。
【００４１】
メインＣＰＵ８は、メディアターミナルクライアント上のＧＵＩに対応した処理を行う複数のクライアントプロセス部２３１，２３２，・・・２３ｎと、通信用識別子の生成および管理（どのクライアントプロセス２３ｉがどの識別子を使っているか。）を行う識別子生成／管理部２４、クライアントプロセスからの要求に識別子を付与する識別子付与部２５、識別子が付与された通信データを共有メモリ１５へ書き込む書き込み部２６、共有メモリ１５から識別子と応答が含まれた通信データを読み出す読み出し部２７、識別子を解析し、識別子から対応するクライアントプロセス２３ｉを決定して該当クライアントプロセス２３ｉに応答を戻す識別子解析部２７から構成されている。
【００４２】
また、クライアントプロセス側からの要求なしにＤＣブロック部５からの応答を受け取るための特別なクライアントプロセス２３ｘも用意されている。
【００４３】
サブＣＰＵ１４側は、通信データを共有メモリ１５から読み出す読み出し部２８、通信データを識別子とクライアントプロセスからの要求に分離する識別子分離部２９、識別子を一時的に記憶する識別子記憶部３０、クライアントプロセスからの要求を処理してＤＣブロック部５上のデータ転送Ｉ／Ｆ１７やビデオデコーダ１８、オーディオデコーダ１９の制御と監視をＤＣブロック部５の制御監視＆応答処理部３１、制御監視＆応答処理部３１にて生成した応答に識別子を付与して通信データを作成する識別子復元部３２、識別子復元部３２で作成された通信データを共有メモリ１５へ書き込む書き込み部３３から構成されている。
【００４４】
共有メモリ１５内には、識別子付与部２５にて識別子が付与された、クライアントプロセスからの各要求データが書き込み部２６により順次書き込まれるコマンド（command）ＦＩＦＯ１５ａと、識別子復元部３２で識別子が付与された応答などの通信データが書き込み部３３により順次書き込まれるリゾルト（result）ＦＩＦＯ１５ｂとが形成される。
【００４５】
このように、クライアントプロセス２３ｉからの要求は、共有メモリ１５内に形成されたコマンドＦＩＦＯ１５ａに書き込み部２６により書き込まれる。また、コマンドＦＩＦＯ１５ａから割り込み処理により共有メモリ１５への要求データの入力をサブＣＰＵ１４が知ると、サブＣＰＵ１４はコマンドＦＩＦＯ１５ａから要求データを読み出し部２８を用いて読み出す。また、上記クライアントプロセスからの要求に応じて生成された応答は共有メモリ１５に形成されたリゾルトＦＩＦＯ１５ｂに書き込み部３３により書き込まれる。同様に、リゾルトＦＩＦＯ１５ｂから割り込み処理により共有メモリ１５への応答データの入力をメインＣＰＵ８が知ると、メインＣＰＵ８はリゾルトＦＩＦＯから応答データを読み出し部２７により読み出す。
【００４６】
ＤＣブロック部５に対して処理依頼を出したいクライアントプロセス２３ｉは、先ず、最初にＤＣブロック部５への要求メッセージを作成し、識別子付与部２５にメッセージを渡す。識別子付与部２５では、識別子生成／管理部２４から、クライアントプロセス毎にあらかじめ定められた識別子、あるいは、要求毎に生成するユニークな識別子とその識別子に対応するクライアントプロセスのテーブルに記載された識別子を取得し、通信パケットを生成し、共有メモリ１５へ書き込む。
【００４７】
サブＣＰＵ１４側は、何らかの方法、例えば上述したような割り込み処理により、通信パケットの到着を検出し、共有メモリ１５から通信パケットを読み出し、識別子分離部２９へ渡す。識別子分離部２９で、識別子と要求メッセージの分離を行い、メッセージをＤＣブロックの制御監視＆応答処理部３１に渡す。制御監視＆応答処理部３１では、コマンドの解析及び実行を行い、ＤＣブロックの各ブロックの制御、あるいは監視を行い、その実行結果を応答メッセージとして生成し、この応答を識別子復元部３２に渡す。識別子復元部３２では、先に識別子記憶部３２に記憶保存しておいた識別子を付与して通信パケットを生成し、共有メモリ１５のリゾルトＦＩＦＯ１５ｂへ書き込み部３３により書き込む。
【００４８】
メインＣＰＵ８側では、何らかの方法、例えば上述した割り込み処理により、サブＣＰＵ１４からの通信パケットの到着を検出し、共有メモリ１５のリゾルトＦＩＦＯ１５ｂから通信パケットを読み出し部２７により読み出し、識別子解析部２８へ渡す。識別子解析部２８で、あらかじめ定められた識別子あるいは、動的に生成された識別子とクライアントプロセス対応表から応答メッセージの元になった要求メッセージを生成したクライアントプロセス２３ｉを割り出し、そのクライアントプロセスに対して応答メッセージを返す。
【００４９】
また、上記の構成においては、メインＣＰＵ８のクライアントプロセス２３ｉが発行するコマンドとは関係なく異常状態等の通知のため、サブＣＰＵ１４自らが応答メッセージを生成してメインＣＰＵ８に何らかの通知を行うことができる。これに対応するために、あらかじめ識別子の一部をメインＣＰＵ８とサブＣＰＵ１４同意の上で予約しておく。サブＣＰＵ１４自ら応答メッセージを生成する場合には、この予約された識別子を使って通信を行う。メインＣＰＵ８側には特別な識別子を持つメッセージに対応するための特別なクライアントプロセス２３ｘを用意する。メインＣＰＵ８およびクライアントプロセスでは、この特別な識別子を持つメッセージが検出されたときに、画面へのエラー表示や、表示灯の点滅等、使用者に対して装置が特別な状態な状態にあることを通知する。
【００５０】
ＤＣブロック部５における異常状態としては、ビデオ／オーディオデータのデコード失敗、ビデオ／オーディオデータの不着、データ形式の誤り、データが壊れている状態、データの分布間違い、シンタックスが異なる、ＡＥＳ暗号が解けない等がある。また、ビデオデコーダ１８のバッファ２１のエンプティ、或いはバッファアンダーランがある。バッファ２１は、デュアルバッファであり、いずれかひとつのバッファからデータが読み出されて空になる前に他のバッファにデータが書き込まれるという処理を交互に繰り替えして行うが、一方のバッファが空になってしまうことをエンプティ、両方のバッファが空になってしまうのをバッファアンダーランという。ビデオ、オーディオの再生時には、ましてや映画として用いるコンテンツの再生時には望ましくない異常状態である。通常は、２つ以上の閾値の設定などによりこのような異常状態の起こる前に、データの書き込み、読み出しを行うように制御されている。
【００５１】
通信パケットの一例を図４に示す。この例では、識別子として８ビット幅のフィールドを用意し、クライアント毎に１から２５５までの値をとる。０はサブＣＰＵからの特別なメッセージ、つまり上記異常状態を表すものとして予約されている。もちろん、これは一例であり、例えば異常状態を表すのに、４ビットを割り当てて、０から１５までの１６通りを確保してもよい。
【図面の簡単な説明】
【００５２】
【図１】映画再生システムの構成図である。
【図２】映像再生装置の構成図である。
【図３】メインブロック部のメインＣＰＵと、ＤＣブロック部のサブＣＰＵにおける機能ブロック図である。
【図４】通信パケットの一例を示す図である。
【符号の説明】
【００５３】
１  映画再生システム、２  映像再生装置用コントローラ、３  映像再生装置、４  メインブロック部、５  ＤＣブロック部、６  外部ストレージ、７  プロジェクタ、８  メインＣＰＵ、１４  サブＣＰＵ、１５  共有メモリ、１８  ビデオデコーダ、１９  オーディオデコーダ
【図１】
2007052668.tif 000003
【図２】
2007052668.tif 000004
【図３】
2007052668.tif 000005
【図４】
2007052668.tif 000006