(57)【要約】【課題】複数のプログラムからなるアプリケーションシステムにおいて各プログラムの実行時間を確実に確保でき、かつプログラムの移植性、再利用性等を高くしてシステムの開発効率を向上することができる情報処理装置及び情報処理方法を提供する。【解決手段】情報処理装置であるアプリケーションシステム１は、複数のプログラムが階層構造で構成されたアプリケーションプログラムにおいて、階層構造の上位階層プログラムに設けられ、複数の下位階層プログラムの実行時間を決定する実行時間決定部と、実行時間決定部によって決定された実行時間だけ、複数の下位階層プログラムを実行するプログラム実行部とを有する。【選択図】図３
2009098800.tif 000002
【特許請求の範囲】
【請求項１】
複数のプログラムが階層構造で構成されたアプリケーションプログラムにおいて、前記階層構造の上位階層プログラムに設けられ、複数の下位階層プログラムの実行時間を決定する実行時間決定部と、
該実行時間決定部によって決定された前記実行時間だけ、前記複数の下位階層プログラムを実行するプログラム実行部と、
を有することを特徴とする情報処理装置。
【請求項２】
前記実行時間決定部は、前記複数の下位階層プログラムの数に応じて前記実行時間を決定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記実行時間決定部は、前記複数の下位階層プログラムの処理すべきデータ量に応じて前記実行時間を決定することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記実行時間決定部は、ユーザの指定により前記実行時間を決定することを特徴とする請求項１に記載の情報処理装置。
【請求項５】
複数のプログラムが階層構造で構成されたアプリケーションプログラムにおいて、前記階層構造の上位階層プログラムが複数の下位階層プログラムの実行時間を決定し、
決定された前記実行時間だけ、前記複数の下位階層プログラムを実行することを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理方法に関する。
【背景技術】
【０００２】
従来より、普及型のオペレーティングシステム（以下、OSという）上に、普及型のプログラミング言語を用いて特定用途のシステム、すなわちアプリケーションシステム、の構築を行う場合、原則としてシステム全体の単独の大きな実行単位に対応する、記憶装置の大きな記憶領域が使用される。通常、相当規模の処理を行うシステムは、多数の小さな処理プログラム、ルーチン等から構成され、各処理プログラム等の呼び出しを適宜行うことによってシステム全体としての大きな処理を実現する。
【０００３】
従来、多数の小さな処理プログラムは、それぞれ、所定の表現形式によるコマンドによって直接的かつ即座に呼び出されることによって実行される。普及型のOSを利用する形で新しいシステムを構築するシステム開発者は、所定の条件を満たした場合にのみ行うべき処理プログラムを呼び出すために、その条件を満たすかどうかを常に監視するように全体のプログラムを作成しなければならない。開発者は、通常、そのような監視プログラムをシステム中の多数の箇所に記述するか、あるいは、その条件を判定する小さな監視プログラムの呼び出しを多数記述する。開発者にとって多数の箇所にそのようなプログラムを記述する、あるいは多数の呼び出しプログラムを記述することは、システム全体のプログラムを作成する上で、大きな作業負担となる。また、このようなシステムでは、小さな処理プログラムの連続する処理が必要な場合、原則として先行する小さな処理プログラムを完結させなければ後続の小さな処理プログラムを実行させることができず、連続処理を実現するためには、システム開発上の大きな制約がある。
【０００４】
以上の問題を解決する一つの手段として、多くのOSでは、割込みによる処理と、マルチプロセス（もしくはマルチタスク、マルチスレッド）と呼ばれる細かい実行単位の利用を可能にしている。  
割込処理は、突然に呼び出されて実行されるが、それまで実行されていた処理を直接の契機としないものであり、何らかの条件に基づいて実行させることができ、かつそれまで行われていた処理を完結させることなくその新たな割込処理を開始することを可能とする機構である。しかし、多くの割込処理は、システムの内部時計あるいはシステムに接続されている外部装置からシステム内部に送信された信号によって起動されて実行される。また、割込処理は、OSによって直接管理されなければならないという制約を持つため、システム開発者が監視すべき条件を新たに定義することが困難である。
【０００５】
さらにまた、上記以外の割込処理としては、他の処理単位による特定の内部信号の発生によって起動されて実行されるソフトウェア割込みがある。ソフトウェア割込みは記述可能な任意の条件によって呼び出すことができるが、上述したように、その条件を常時監視しなければならないという制約を有するという問題が残る。
【０００６】
一方、マルチプロセスは、単独のシステムにおいて多数定義することができ、それぞれに個別の処理が可能な実行単位である。各プロセスは、OSから与えられた記憶装置の区画領域を利用できる。マルチプロセスは、プロセスの再利用あるいは個別処理の独立化を可能にする一方、必要に応じてプロセス同士またはプロセスとシステムとの間で情報を送受信することができるので、互いに連係した処理を行うことができる。
【０００７】
しかし、マルチプロセスは、OSによって直接管理されなければならないという制約がある。そのため、マルチプロセスの挙動はOSに大きく依存するうえ、その挙動を規定する手段もOSの制約を受けるため、システム開発者が、呼び出し条件の追加などの新たな手順を定義することは困難である。加えて、マルチプロセスは、プロセスの停止、停止からの再開が行われるための条件の設定、周期的な実行の設定、セキュリティを保つための実行条件の認証、さらに、プロセス外部との関連を伴う処理において、OSの規定する処理限界による制約を受ける。制約の一例として、その処理が中央演算装置(CPU)を占有する時間および手順の制限があり、各処理におけるCPUの効率的な時間配分が妨げられる虞れがある。
【０００８】
さらに、特定のOSの管理下でソフトウェアとしてインストールされるOS、あるいは、逆に特定のOSを管理させるためにさらにハードウェアに近い論理階層においてインストールされるOS、等のマルチOSの技術があり、現在広く実用化されている（例えば、特許文献１参照）。しかし、マルチOSは、1台のコンピュータに複数のOSをインストールできるようにすることによる利便性の向上やコストの削減、計算機資源の効率的利用を主目的とするものであり、システム開発がし易くなるものではない。さらに、当該計算機をサポートしていないOSの移植を容易にする目的で仮想OSの技術がある（例えば、非特許文献１参照）。仮想OSも、大きなシステムの開発を容易にするものではない。
【０００９】
さらに、開発済みのシステムのプログラムを再利用した類似のシステム開発において、プログラムの移植性、再利用性等が高くないため、システムの開発効率を向上させることができなかった。
【特許文献１】特開2004-259106号公報
【非特許文献１】平初  他著「仮想化技術完全攻略ガイド」インプレスジャパン、2006年10月
【発明の開示】
【発明が解決しようとする課題】
【００１０】
そこで、本発明は、複数のプログラムからなるアプリケーションシステムにおいて各プログラムの実行時間を確実に確保でき、かつプログラムの移植性、再利用性等を高くしてシステムの開発効率を向上することができる情報処理装置及び情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の一態様によれば、複数のプログラムが階層構造で構成されたアプリケーションプログラムにおいて、前記階層構造の上位階層プログラムに設けられ、複数の下位階層プログラムの実行時間を決定する実行時間決定部と、該実行時間決定部によって決定された前記実行時間だけ、前記複数の下位階層プログラムを実行するプログラム実行部と、を有する情報処理装置を提供することができる。
【発明の効果】
【００１２】
本発明によれば、複数のプログラムからなるアプリケーションシステムにおいて各プログラムの実行時間を確実に確保でき、かつプログラムの移植性、再利用性等を高くしてシステムの開発効率を向上することができる情報処理装置及び情報処理方法を実現することができる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照して本発明の実施の形態を説明する。  
まず図１に基づき、本実施の形態に係わるシステムの構成を説明する。図１は、本実施の形態に係わるアプリケーションシステムのハードウェア構成を示すブロック構成図である。
【００１４】
図１に示すように、開発対象のアプリケーションシステム１は、複数の、ここでは３つの、中央処理装置（以下、CPUという）１１と、後述する階層構造を有するアプリケーションプログラムが記憶される記憶部１２と、計時用のタイマー等を含む計時部１３と、マウス、キーボード、プリンタ等の外部機器との接続インターフェースを有する外部接続部１４とを含んで、互いにバス１５を介して接続されるように、構成されているコンピュータ装置である。  
計算機システムであるアプリケーションシステム１は、例えば、後述するようなマルチメディアのデジタル情報を処理するシステムでもよいし、企業において利用される業務システム等であってもよい。
【００１５】
図２は、本実施の形態に係わるアプリケーションシステム１のソフトウェア構成を説明するためのブロック構成図である。図２に示すように、ハードウェアとしてのCPU１１の上に、OS２１が搭載され、そのOS２１の上でアプリケーションプログラム２２が実行される。OS２１は、マルチCPU対応のOSである。アプリケーションプログラム２２は、以下に説明する、階層構造を有する複数のサブシステムから構成されている。
【００１６】
図３と図４は、アプリケーションプログラム２２の階層構造を説明するための図である。図３は、その階層構造を有する複数のサブシステムを説明するための図である。ここでは、説明を簡単にするために、２階層の複数のサブシステムを有するアプリケーションプログラム２２の例を示す。アプリケーションシステム１のソフトウェアは、最上位システム３１の下に、サブシステム３２が位置し、そのサブシステム３２の下にさらに複数のサブシステム３３が位置し、さらにその各サブシステム３３も複数のサブシステムを含むように構成されている。サブシステム３２は、後述する実行管理部３２ａを有している。
【００１７】
図２との対応では、最上位システム３１は、OS２１であり、第１階層のサブシステム３２は、アプリケーションプログラム２２であり、第２階層のサブシステム３３は、アプリケーションプログラム２２内の複数のプログラムである。
【００１８】
図４は、アプリケーションプログラム２２が、さらに多くの階層の構造を有する複数のプログラムを説明するための図である。  
アプリケーションプログラム２２は、３階層以上の階層構造を有し、最上位のプログラム４１は、３つのサブプログラム４２を含んで構成されている。サブプログラム４２の一つは、さらに一つのサブプログラム４３を含み、サブプログラム４２の他の一つは、３つのサブプログラム４４を含んで構成されている。サブプログラム４４の一つは、２つのサブプログラム４５を含んで構成されている。さらに、サブプログラム４５の一つは、３つのサブプログラム４６を含んで構成されている。以下、同様にして、上位階層プログラムである各サブプログラムが、１以上の、下位階層プログラムであるサブプログラムを含んで構成されている。
【００１９】
図４におけるサブプログラム４１が、図３のサブシステム３２に対応し、サブプログラム４２が、図３のサブシステム３３に対応するものとする。本実施の形態では、３つのCPU１１に対して、それぞれ３つのサブシステム３３が割り当てられる。
【００２０】
各CPU１１は、対応する割り当てられたサブシステム３３を連続的に実行する。本実施の形態では、３つのCPU１１に対して３つのサブシステム３３が割り当てられるが、サブシステム３３の数がCPU１１の数よりも多い場合は、計時部１３の計時に基づき、適切な時分割処理の割り当てによって、一つのCPU１１に対して、複数のサブシステム３３の連続的な実行が割り当てられる。この場合の時分割処理では、最上位システム３１の状態あるいは各サブシステム３３の状態、サブシステム３３間もしくは最上位システム３１とサブシステム３３間における通信の状態、記憶部１２および外部接続部１４に接続された外部機器の状態に応じて、時分割によって割り当てられる時間の多寡の決定が行われ、その決定された時間に基づいて各サブシステムの動作の継続・中断・停止が行われる。  
従って、下位のサブシステムを有する各サブシステムは、自己に割り当てられた時間内で、下位のサブシステム毎に割り当てる実行時間を決定する実行時間決定部を有する。
【００２１】
また、サブシステム３３の数がCPU１１の数よりも少ない場合は、サブシステム３３のいずれの処理も割り当てられていないCPU１１は、演算処理を行わないで、休止状態となる。
【００２２】
そして、下位の複数のサブシステムを有する上位のサブシステムは、下位の複数のサブシステムを、実行時間決定部により決定されて割り当てられたそれぞれの実行時間で、時分割で実行させるプログラム実行部を有する。
【００２３】
図４に示すように、例えば、サブシステム４１は、下位の複数のサブシステム４２の実行管理を行うための実行管理部４１ａを有し、サブシステム４２の一つは、下位のサブシステム４３の実行管理を行うための実行管理部４２ａ１を有し、サブシステム４２の他の一つは、下位の複数のサブシステム４４の実行管理を行うための実行管理部４２ａ２を有する。以下、同様にして、下位のサブシステムを有する上位の各サブシステムは、実行管理部を有する。
【００２４】
各サブシステムは、上位のサブシステムの機能を部分的に受け継ぐ。すなわち、最上位システム３１の有するスケジュール管理の機能の内、時分割で複数のプログラム、プロセス等を実行する機能を、サブシステム３２の実行管理部３２ａが受け継いでいる。図３において、サブシステム３２は、１以上のサブシステム３３を含むが、サブシステム３２の実行管理部３２ａは、各サブシステム３３に対するサブシステム３２の管理する記憶部１２の部分的な利用、サブシステム３３間での情報の送受信、実行管理部３２ａの決定したタイミングでの情報処理、および各サブシステム３３の連続的な動作状態の保持、図１の外部接続部１４により間接的にサブシステム部３２に接続されている外部機器の操作、等の処理の実行を管理する。なお、その実行管理機能の中には、サブシステム３２の上位の最上位システム３１に接続されている外部機器の操作をサブシステム３３に行わせることも含まれる。よって、サブシステム３２は、サブシステム３２自体の自発的な動作を行うことに加えて、最上位システム３１、外部機器、下位のサブシステム３３、および他のサブシステムからの情報の受信に基づく動作をするように下位のサブシステム３３を管理する。すなわち、各サブシステムが、下位のサブシステムを再帰的に構築することによって、図４のように多数のサブシステムが樹状に連なる階層的なサブシステム群を含むシステムを構築することができる。
【００２５】
以上のように、アプリケーションプログラム２２は、階層構造を有し、各階層において、上位のサブシステムが下位の複数のサブシステムを含むように構成されている。そして、外部装置からの起動信号によって、上位のサブシステムが下位の各サブシステムを起動して実行可能となっている。言い換えると、上位のサブシステムの実行管理部は、外部装置からの起動信号の受信、下位のサブシステムと外部装置間のデータの送受信、等を管理する。
【００２６】
樹状のサブシステム群に対して、階層的にCPU１１の割り当てを行うことによって、すべてのサブシステムを逐次的に動作させることができる。例えば、あるサブシステムに、その上位のサブシステムからの継承により一つのCPU１１が割り当てが行われているとき、自己に割り当てられているCPU１１の割当時間、すなわち実行時間、をさらに分割して、下位の１以上のサブシステムに割り当てることにより、下位の１以上のサブシステムを動作させる。よって、あるサブシステム４２にCPU１１の一つが割り当てられるとき、上位のサブシステム４２からそのサブシステム４２に至る、樹状に連なるすべての下位のサブシステムのそれぞれに、階層的にその割り当てられたCPU１１の実行時間が割り当てられている。なお、実行時間の割り当ては、上位のサブシステムから継承された実行時間に加えて、各サブシステムにおいてプログラムが実行された結果に基づく処理に掛かる時間等の、各サブシステムによって独自に定義された時間も加味して行われるようにしてもよい。よって、各CPU１１の実行時間の割り当てとして、上位のサブシステムから時分割方式で実行時間が継承されているとき、下位のサブシステムに対しても同様の時分割方式による実行時間の承継が行われる。なお、複数のCPU１１を、一つのサブシステムに割り当てるようにしてもよく、その場合は、上位階層のサブシステムは、下位階層の複数のサブシステムに対して、それぞれ複数のCPU１１の実行時間を割り当てる。
【００２７】
また、実行管理部は、サブシステム毎の処理に必要な記憶部１２内の記憶領域の区画を決定し、割り当てられたCPU１１の実行時間と、サブサブシステム毎に決定された記憶領域のみを用いて、各サブシステムを実行する。従って、CPU１１は、計時部１３の時刻に応じて、実行するサブシステムについて決定された記憶領域の区画を変更しながら、複数のサブプログラムを実行する。  
CPU１１は、記憶領域の区画を変更しながら、複数のサブプログラムを実行するため、記憶部１２は、全てのサブシステムについて決定された全記憶領域の記憶容量を有する。
【００２８】
さらにまた、各サブシステム間において、情報の送受信を行うことができる。情報の送受信を行う各サブシステム、および各サブシステムを管理する上位のサブシステムに対して、必要に応じて、情報の通信を行わせるための必要な量の記憶領域も、記憶部１２内に割り当てられ、各サブシステムは、情報の送受信を通知するための処理を行うことができる。その通知の処理は、情報の受信をトリガーとしてCPU１１の割り当てを行うようにすることができる。この場合、情報を受信したサブシステムは、受信した情報をただちに処理する。
【００２９】
なお、受信した情報をただちに処理しなくてもよく、割り当てられた記憶領域の許す限りにおいて受信した情報を蓄積し、後で処理するようにしてもよい。その場合、情報の送受信に応じてCPU１１の割り当てを行う必要はなく、それ以外の事由に応じて、CPU１１の割り当てを行い、それまでに受信し続け蓄積された情報の一部またはすべてを処理させる。時分割によりCPU１１を割り当る方法以外の事由としては、後述するマルチメディア情報、等の受信情報の蓄積量、もしくは受信情報の蓄積状況のいずれかから選択される。この事由の選択は、情報を受信するサブシステムの上位のサブシステムによって行われる。
【００３０】
各サブシステムは、必要に応じて、下位のサブシステムへの使用する記憶領域の割り当ての追加と削減の機能、および下位のサブシステムによる外部接続機器への操作の仲介の機能を行う。また逆に、各サブシステムは、下位のサブシステムの記憶領域の割当、及び外部接続機器への操作を制限する機能も有する。これらの機能を用いて、上位のサブシステムは、下位のサブシステムの計算機資源の適切な管理運用を行う。この管理運用機能は、一般のOSが行っている、計算機資源のアクセスのための認証に基づく計算機資源へのアクセスの許諾と制限により実現することができる。一般のOSは、計算機の使用者もしくは他の計算機が外部機器を通じて供給した認証情報が妥当であればユーザ名を与え、その計算機利用において、あらかじめそのユーザに認められた範囲での計算機資源の利用を許諾する機能を有する。この機能と同様のことを行うために、各サブシステムは、下位のサブシステムから受信した認証情報を適切に判定した上で、下位のサブシステムによる計算機資源の利用を許諾する。
【００３１】
上述した構成を有する計算機システムの利用者である開発者は、樹状に連なるサブシステム群を要求仕様に応じて多様に構築することで、従来のシステムが有していた制約を排除し、計算機システムに行わせるべきさまざまな処理を柔軟に行わせることができる。
【００３２】
次に、上述した構成に係るアプリケーションシステムの具体的な構成例を説明する。図５は、アプリケーションシステムの具体例な例としてのマルチメディア端末システムのハードウェア構成を示すブロック図である。図５のマルチメディア端末システム１Aは、音声と動画の出力が可能なシステムである。マルチメディア端末システム１Aは、CPU１１Aと、階層構造を有するアプリケーションプログラムが記憶される記憶部１２Aと、計時部１３Aと、外部接続部１４Aとを含んで、互いにバス１５Aを介して接続されるように、構成されているコンピュータ装置である。外部接続部１４Aは、マルチメディア情報受信部５１、音声出力部５２及び映像出力部５３の外部機器との接続インターフェースである。
【００３３】
マルチメディア情報受信部５１は、映画等のいわゆるコンテンツに関わる圧縮された音声信号と映像信号が交互にかつ時系列的に配列されたデジタル情報を連続的に受信し、内部記憶装置に一時記憶させる機能を有する。また音声出力部５２および映像出力部５３は、それぞれ、圧縮された状態で受信された音声信号および映像信号を復号したものを連続的に受信し、マルチメディア端末システム１Aの利用者すなわち視聴者によって知覚可能な音声および動画を出力する機能を有する。
【００３４】
システム開発者は、図５に示す機器構成を有するシステムであって、受信したデジタル情報の音声信号と映像信号を連続的に復号し、音声および映像のそれぞれの出力装置を経て、デジタル情報の制作者が意図したとおりに音声と動画を同期させて連続的に出力するマルチメディア端末システム１Aを開発するものとする。なお、音声と動画の同期に必要な時刻情報は、所定の形式によりデジタル情報に適宜記録されている。マルチメディア端末システム１Aは、例えばDVD再生機、デジタルテレビジョン装置である。
【００３５】
図６は、開発者が開発するマルチメディア端末システム１Aのアプリケーションプログラム２２Aの階層構造を説明するための図である。図６に示すように、アプリケーションプログラム２２Aは、階層構造を有し、複数のサブシステムを含む。マルチメディア端末システム１Aのソフトウェアは、OSである最上位システム部３１Aの下に、サブシステムとしてのマルチメディアシステム部３２Aが位置し、そのマルチメディアシステム部３２Aの下にさらに複数のサブシステムとして、ここでは、情報分離部６１、音声復号部６２及び映像復号部６３を含むように構成されている。
【００３６】
図２との対応では、最上位システム３１Aが、OS２１であり、マルチメディアシステム部２２Aが、アプリケーションプログラム２２である。図３との対応では、マルチメディアシステム部２２Aが、第１階層のサブシステム３２であり、アプリケーションプログラム２２A内の複数のプログラムである、情報分離部６１、音声復号部６２、映像復号部６３が、第２階層のサブシステム３３である。  
システム開発者は、マルチメディア端末システム１Aのソフトウェアを、図６のように定義して開発する。
【００３７】
最上位システム部３１Aのスケジューリング機能を継承したマルチメディアシステム部３２Aは、マルチメディア情報受信部５１によって受信されたデジタル情報を音声信号と映像信号とに分離するサブシステムである情報分離部６１と、圧縮された音声信号を復号するサブシステムである音声復号部６２と、圧縮された映像信号を復号するサブシステムである映像復号部６３とを、自己が直接管理するサブシステムとして、有する。
【００３８】
システム開発者は、次のようにしてこのマルチメディア端末システム１Aを開発する。マルチメディアシステム部３２Aが、最上位システム部３１Aへの適切な認証情報の提示によって、最上位システム部３１Aによる外部接続部１４Aへの操作によりマルチメディア情報受信部５１、音声出力部５２、映像出力部５３への操作が可能になるように設定する。また、マルチメディアシステム部３２Aにおける適切な認証と仲介によって、情報分離部６１によるマルチメディア情報受信部５１でのデジタル情報の受信とその読み込み、音声復号部６２から音声出力部５２への復号後の音声データの出力、映像復号部６３から映像出力部５３への復号後の映像データの出力が可能になるように各サブシステムを設定する。システム開発者は、以上のようなサブシステム間の設定あるいは定義に基づいて、情報分離部６１にはデジタル情報を音声と映像の各信号に仕分ける処理を、音声復号部６２及び映像復号部６３には、圧縮された音声および映像の信号をそれぞれ展開する処理を実装する。
【００３９】
図６に示すように、マルチメディアシステム部３２Aは、実行管理部３２Aａを有し、実行管理部３２Aａは、それぞれが下位の複数のサブシステムである、情報分離部６１と音声復号部６２と映像復号部６３のそれぞれの実行時間を決定する実行時間決定部３２Bと、実行時間決定部３２Bにより決定されて割り当てられたそれぞれの実行時間で、各サブシステムを時分割で実行させるプログラム実行部３２Cを有する。
【００４０】
図７は、システム内のマルチメディア情報の移動に関係する部分を、仲介する処理単位を省略した形式で表現した図である。なお、図７において、情報分離部６１、音声復号部６２及び映像復号部６３は、それぞれ２つの処理部間での情報の入力と出力の受け渡しを行うための、入力バッファとしての情報蓄積部６１ａ、６２ａ、６３ａを有する。その際、一時的に未処理となる入力された情報を滞留させるために必要となる記憶領域は、最上位システム部３１Aからマルチメディアシステム部３２Aへの記憶部１２Aの記憶領域の割り当てによって確保される。情報蓄積部６１ａ、６２ａ、６３ａは、それぞれが接続されているサブシステムによる情報の読み込み、書き込みが可能なように配置されるとともに、マルチメディアシステム部３２Aによっても、それぞれの情報蓄積部の内部の情報の蓄積量が監視される。
【００４１】
図５及び図６に示したマルチメディア端末システム１Aの動作を、図８のフローチャートを用いて説明する。図８は、時間管理に関する制御については省略し、システム全体が直列的に動作しているものとみなした場合において、受信されるデジタル情報に交互に含まれる音声もしくは映像信号の処理の流れの例を示すフローチャートである。
【００４２】
まず、コンテンツのマルチメディア情報を受信すると（ステップS1）、音声信号と映像信号の仕分けが行われる（ステップS2）。一般に、ステップS1で受信するデジタル情報は、細かく区分けされた音声もしくは映像信号の小単位が連続する形で送信されており、ステップS2において、受信したデジタル情報から音声信号と映像信号の仕分けが行われる。小単位が音声信号ならば、音声信号を復号し（ステップS3）、音声出力が行われる（ステップS4）。小単位が映像信号ならば、映像信号を復号し、動画出力が行われる（ステップS6）。その結果、映画等のコンテンツが出力、すなわち上映され、マルチメディア端末システム１Aの視聴者により観賞される。
【００４３】
なお、音声出力部５２と映像出力部５３での出力タイミングを適切にするために、デジタル情報に付加されている時刻情報によって示された時間間隔ごとに音声および動画の出力が行われるようタイミングの調整が行われる。そのため、システムとしては、マルチメディア情報のある小単位の情報の受信から出力までの処理時間を確保すべく充分な待機時間を設定した上で、待機時間後にデジタル情報に付加されている時刻情報に忠実な上映が適切に行われるよう、ステップS4及びS6の直前で出力すべきタイミングを待つ処理を挿入しなければならない。そのためには、ステップS3及びS5によって復号化されて出力された音声および映像のデータを出力時まで一時的に蓄える機構が、必要になる。すなわち、音声および映像のデータの蓄積最大量が非現実的もしくは非効率的な量にならないよう、ステップS3及びS5における復号処理を、充分に出力時刻に近づくまで待たなければならない。そのため、ステップS3及びS5の処理の直前に、音声および映像の信号を復号時まで一時的に蓄える機構が必要になる。さらにステップS2では、仕分け処理とステップS1での受信におけるデジタルデータの処理量の誤差を吸収するため一時的に蓄える機構が必要になる。
【００４４】
従って、図７に示すように、情報蓄積部６１ａ、６２ａ、６３ａにおいて、情報伝達の過程で一定の容量を持つ一時的な情報の蓄積が行われる。その結果、必ずしも図８で示されているような流れの順序で、実際の処理が行われず、ステップS2からS6の処理がめまぐるしく順序を入れ替えながら、もしくは部分的には同時に処理が行われることを意味している。すなわち、マルチメディア端末システム１Aの実際の処理は、図８のような単独の処理の流れのみがあるのではなく、情報分離部６１、音声復号部６２、映像復号部６３の内部においてもそれぞれの処理の流れがある。
【００４５】
図９は、情報の蓄積を行うサブシステムの処理を説明するための図である。図１０は、情報の蓄積を行うサブシステムの処理の流れを示すフローチャートである。図９に示すサブシステム７１は、図１０に示す処理を行う。サブシステム７１は、情報分離部６１、音声復号部６２及び映像復号部６３のそれぞれに対応し、サブシステム７１は、情報入力があると、サブシステム７１の情報蓄積部７１ａによって情報の蓄積を行う。サブシステム７１は、処理タイミングが来たか否かを判断し（ステップS11）、所定の処理のタイミングが来るまで、処理は行わず待機し、処理は行なわず、情報の蓄積を継続する。処理タイミングが来ると、ステップS11でYESの場合となり、サブシステム７１は、情報蓄積部７１ａに蓄積された情報の一部を先頭から取り出し（ステップS12）、取り出した情報を各々の所定の方法で処理する（ステップS13）。処理されるデータは、他のサブシステムに出力され（ステップS14）、他のサブシステムの情報蓄積部に既に蓄積されたデータの末尾に新たなデータとして追加される。なお、マルチメディア情報受信部５１は出力のみ、音声出力部５２と映像出力部５３は入力のみであるが、情報の入力と出力については、それぞれ図１０の対応する処理を行う。従って、図７に示すシステムは、それぞれの処理の順序を変えながらもデータの順序を変えずに、図１０に示すような繰り返し処理を行う。
【００４６】
マルチメディア端末システム１Aのアプリケーションプログラム２２Aは、図６に示す階層構造を有する。そして、マルチメディアシステム部３２Aは、図４において説明した実行管理部３２Aａを有する。実行管理部３２Aａは、３つのサブシステムである、情報分離部６１、音声復号部６２及び映像復号部６３の実行管理を行う。
【００４７】
この例では、CPUは１つであることから、各サブシステムへのCPU１１Aの実行時間の適切な割り当てによって全体の処理を行う必要がある。そのため、システム開発者は、実行管理部３２Aａにおいて、CPU１１Aの割り当ての優先度及びその割り当て方法を規定する。最優先に処理すべき場合として、音声または映像のいずれかのデータが出力されるべき時刻が到来したとき、音声出力部５２もしくは映像出力部５３にCPU１１Aの使用権が割り当てられ、出力処理を行わせる。それ以外の場合、実行時間決定部３２Bは、情報蓄積部６１ａ、６２ａ、６３ａにおける各々の情報蓄積量を調べ、蓄積量が各々の容量を越えないように、かつ、処理の遅滞の原因となる容量の欠乏をも生じないよう、各サブシステムについてのCPU１１Aの実行時間の割り当てを行う。本例では、情報蓄積部６１ａ、６２ａ、６３ａに対する各々の情報充足率が調べられ、充足率がもっとも高い情報蓄積部のデータを入力するサブシステムに情報を消費すなわち処理させることにより、情報蓄積部の容量超過を防止しつつ、その出力となる次のサブシステムの情報蓄積部の情報欠乏が避けられる。この割り当ては、時分割機能とサブシステム管理機能を最上位システム部３１Aから引き継いだマルチメディアシステム部３２Aの実行管理部３２Aａによって行われる。
【００４８】
図１１は、実行管理部のスケジューリング処理の流れの例を示すフローチャートである。まず、実行管理部３２Aａは、最上位システム部３１Aから、マルチメディアシステム部３２Aの実行コマンドを受信すると、サブシステム毎の実行時間を決定する（ステップS21）。同時に、実行管理部３２Aａは、サブシステム毎の記憶部１２Aの使用する記憶領域を決定する。実行管理部３２Aａは、例えば、与えられた全体のCPU１１Aの使用時間を、サブシステムの数で、ここでは３で、除算した時間を、各サブシステムの実行時間として決定する。記憶領域も、サブシステムの数で除算した大きさが、各サブシステムに割り当てられる記憶領域として決定される。
【００４９】
次に、実行管理部３２Aａは、各サブシステムが処理すべき、蓄積された情報量すなわちデータ量が所定の閾値以上か否かを判定する（ステップS22）。
【００５０】
いずれかサブシステムにおいて、所定の閾値以上に処理すべき情報があるときは、ステップS22においてYESとなって、実行管理部３２Aａは、ステップS21において一旦決定された各サブシステムの実行時間及び記憶領域の大きさを修正する（ステップS23）。修正の方法としては、例えば、各実行時間の長さ及び各記憶領域の大きさを各サブシステムの処理すべき情報量の比率に応じた時間及び大きさにする、等の方法がある。
【００５１】
そして、実行管理部３２Aａは、ステップS22においてNOの場合及びステップS23の後は、各サブシステムを実行する（ステップS24）。各サブシステムは、それぞれに割り当てられた実行時間と記憶領域を用いてそれぞれの処理を実行する。
【００５２】
以上のようにして、サブシステムであるマルチメディアシステム部３２Aは、下位のサブシステムに対して、CPU１１Aの使用時間の割り付けを行う。
【００５３】
なお、最上位システム部３１Aからマルチメディアシステム部３２Aに引き継がれた機能のうち、サブシステムへのCPU１１Aの使用時間の割り当て手順は、以下のように変更してもよい。マルチメディアシステム部３２Aは、情報分離部６１、音声復号部６２、および映像復号部６３からの所定の情報と、計時部１２Aでの計時に基づいて最上位システム部３１Aを介して行われる定期的な情報を受信したときに情報蓄積部６１ａ、６２ａ、６３ａの情報の蓄積量を計測し、充足率がもっとも高い情報蓄積部を入力とするサブシステムに、CPU１１Aの使用時間の割り当てを行うようにしてもよい。すなわち、計時部１２Aによる定期的な情報受信に加え、必要に応じて、音声出力部５２が予め備える記憶装置監視機能によってもたらされる信号に基づいて、各サブシステムのCPU１１Aの使用時間の割り当てが変更される。
【００５４】
さらに、ユーザ等の指定により、音声信号処理よりも映像信号処理を優先するように、映像出力部５３のもつ同期信号発信機能によってもたらされる信号の発生タイミングを、最上位システム部３１Aを介してマルチメディアシステム部３２Aによる時分割処理のタイミングとするようにしてもよい。
【００５５】
また、上述した図６の構成では、サブシステムであるマルチメディアシステム部３２Aは、３つの下位のサブシステムを有し、３つの下位のサブシステムはそれぞれ、実行管理部３２Aａによって割り当てられたCPU１１Aの使用時間だけ、自己の処理を実行する。しかし、図４に示したように、下位のサブシステムがさらにより下位のサブシステムを有して構成される場合は、下位のサブシステムの実行管理部は図１１に示す処理を実行するが、ステップS24のサブシステムの実行処理は行わず、より下位のサブシステムのCPU１１Aの使用時間等の割り当てだけを行う。よって、下位のサブシステムを有する各サブシステムは、図１１の処理を実行し、最終的に、下位のサブシステムを有さないサブシステムは、ステップS24によって実行される。
【００５６】
以上のようにして開発されたマルチメディア端末システム１Aのうち、情報分離部６１、音声復号部６２、映像復号部６３は、図９に示される単純な処理体系を有し、さらに内部に記憶装置の操作機能を除いて外部の状況に依存する処理要素を有しないので、他のシステムに容易に移植可能である。これは、情報蓄積部から情報を受け取ると同時に処理をする同期的処理とは異なり、情報の流通状況に直接影響されない非同期処理を導入したからである。また、以上のようなシステムが開発された後、形式が異なるデジタル情報を受信できる別のシステムを新たに開発する場合、対応するサブシステムを変更または交換するだけで対応が可能となる。交互に送信されるデジタル情報の混合形式が異なる情報を受信する場合は情報分離部６１を変更し、音声圧縮形式が異なる情報を受信する場合は音声復号部６２を変更し、映像圧縮形式が異なる情報を受信する場合は映像復号部６３を変更するだけで対応することができる。よって、システムの開発効率の向上を図ることができる。
【００５７】
上述した本実施の形態に係るシステムは、他の新たなシステムを構築する基盤となるシステムとなるものである。そして、上述したシステムは、上述したマルチメディア端末システムだけでなく、その他の、OS、一般的なコンピュータシステム、ネットワークに接続されて情報処理を行うシステム等にも再利用できる。
【００５８】
以上のように、本実施の形態のシステムによれば、複数のプログラムからなるアプリケーションシステムにおいて各プログラムの実行時間を確実に確保でき、かつプログラムの移植性、再利用性等を高くしてシステムの開発効率を向上することができる。
【００５９】
次に、上述したマルチメディア端末システム１Aを利用した種々の変形システムについて説明する。
【００６０】
（システムの変形例１）
上述したように、上述した構造を有する計算機システムによれば、システム開発者は、過去に開発した一定以上の規模のシステムにおけるサブシステムを部品化して利用することにより、効率的な他のシステムの開発を行うことができる。  
例えば、上述したマルチメディア端末システム１Aを、動画を1/2の速度で表示するシステムに変更することができる。図６におけるマルチメディアシステム部３２Aにおいて、最上位システム部３１Aから引き継がれた、計時部１２Aで計時された時刻を取得する処理において、時刻の増分が1/2になるようにするとともに、定期的な時刻情報の受信時間間隔が2倍になるよう変更を加える。これにより、マルチメディアシステム部３２Aの下位の小システムである情報分離部６１、音声復号部６２、映像復号部６３にとっての時刻の経過が2倍遅いものになるため、このような変更だけで動画を1/2の速度で表示するシステムに、マルチメディア端末システム１Aを変更することができる。なお、音声出力の速度が1/2になることにより音声サンプリング周波数が1/2になる状況になるため、試聴者にきこえる再生音声が低くならないようにするための周波数変換処理を加える必要が生じるが、そのような周波数変換処理を行うサブシステムを追加するだけでよい。また、映像出力は、静止画を短時間に次々と変化させ表示させることで実現している動画システムであるかぎり、特に既存のサブシステムの変更や他のサブシステムの追加を行う必要はない。
【００６１】
また、上述したマルチメディア端末システム１Aは、時刻関連処理の変更比率の値をさまざまな値に変更できるようにするだけで、動画再生速度の変更が可能なシステムに発展することができる。例えば、マルチメディア端末システム１Aは、視聴者にきこえる再生音声が不自然にならないようにするための音声周波数変換処理の変更に加え、映像出力部５３の同期信号の変更に対応する処理を追加するだけで、非整数倍のスロー再生に対応するシステムに変更することができる。また、マルチメディア情報受信部５１で受信する情報を、外部記憶装置に既に蓄積されたデータの再生用途に限り、さらに性能を維持するためCPU１１Aと記憶部１２Aの性能を向上させれば、マルチメディア端末システム１Aは、高速な再生にも対応する装置にすることも可能である。その場合も、高性能の機器の導入が容易であるという前提があれば、処理内容の変更はわずかで済む。
【００６２】
これは、図６におけるマルチメディアシステム部３２Aが、情報分離部６１、音声復号部６２、映像復号部６３にとって、あたかも、時分割のスケジュール管理を行うスケジュール管理部であるかのように振る舞うように構成されているからである。また、マルチメディアシステム部３２Aは、最上位システム部３１Aのスケジュール管理の機能を継承し、最小限のスケジュール管理のみを行っているため、変更システムの開発工程の大幅な増加をもたらすことはない。結果として、システム開発の効率の向上が達成される。
【００６３】
（システムの変形例２）
また、マルチメディア端末システム１Aにおいて、特定の処理を実現しているサブシステムを複数用意し、それぞれを実行されることにより、同じ処理を複数同時に実行させるようにした、システムを構築することができる。これは、その特定の処理を実現するサブシステムの上位のサブシステムが、複数のサブシステムを有するように構成するだけで実現できる。例えば、上述した変形例１の再生速度可変なマルチメディア端末システムの機能を、CPU１１Aと記憶部１２Aの性能と、マルチメディア情報受信部５１、音声出力部５２、映像出力部５３の個数が許す限りにおいて、１つの端末装置で複数実現することができる。
【００６４】
また、CPUの数を増やす等、CPUの性能の増強と、記憶部１２Aの性能の増強をすることで、多チャンネル端末の実現が可能であるとともに、一方のチャンネルでは高速再生、他方でスロー再生を行わせるなど、それぞれを独立して操作することができる。
【００６５】
さらにまた、マルチメディア情報受信部５１、音声出力部５２、映像出力部５３が各々一つしかない機器においても、多チャンネルの信号を複数のサブシステムに振り分けるサブシステムと、複数の音声を混合出力するための変換処理を行うサブシステムと、単一の画面に複数のチャンネルの映像を出力できるような画像の変換を行うサブシステムを追加することで、比較的少ない開発項目の追加により、マルチメディア端末システム１Aを利用して、同時再生システムの開発が可能となる。
【００６６】
なお、上記のように作成された同種の複数のシステム同士を連携させることもできる。例えば、上位のサブシステムが、一階層だけ下位のサブシステムを有するのではなく、マルチメディアシステム部３２Aのスケジュール管理の機能を継承した２階層下位のサブシステムを複数設けるようにしても、上述したような１つの端末で多チャンネルに対応した処理を実行できるシステムを実現することができる。加えて、マルチメディアシステム部３２Aに、マルチメディアシステム部３２Aを介してサブシステム間で情報を共有する機能を追加することで、サブシステム間での処理の連携が可能になる。一例として、マルチメディアシステム部３２Aにおいて、マルチメディア端末の視聴者による早送り、スロー再生、コマ送り、一時停止を含む特殊な再生を指示するための入力装置の管理機能を、マルチメディアシステム部３２Aのサブシステムに継承させず、他の別のサブシステムにおいて実現するようにする。マルチメディアシステム部３２Aは、入力装置から受け付けた視聴者からの指示に基づいて、サブシステムに継承させる時刻情報を制御し、時間経過速度の変更もしくは停止を行う。結果として、複数のサブシステムはすべて同じ時刻を共有することとなり、多チャンネルを同一の時間軸で同期させる特殊再生の機能が実現可能となる。このような構成によれば、同時刻にて複数の映像に生じていた現象を検証する、等の興味深い機能を視聴者に提供することができる。
【００６７】
本変形例も、システムそのものを再利用性の高い部品として扱えるとともに、その内部動作を柔軟に変更できるように構成されていることに起因する。
【００６８】
（システムの変形例３）
以上のような実施の形態及び各変形例に係る計算機システムは、大規模なシステムを含む複数のサブシステムを有することを可能としている。変形例１では、サブシステムが一種のOSのように、下位のサブシステムのスケジュール管理を行っている。図１２は、複数のOSを含むシステムの場合の構成を示すブロック図である。
【００６９】
従って、図１２に示すように、OS管理システム部８２は、最上位システム８１のサブシステムとして構成され、さらに下位のサブシステムとして他のOS部８３を有するように複数のOSをインストールし、管理する。OS管理システム部８２は、管理下の複数のOS部８３が処理の対象とするハードウェアを仮想的に実現し、かつCPU１１Aと記憶部１２Aの割り当てを適切に行って、複数のOS部８３の動作を実現する。この構成は、限られた汎用OSでしか動作しない複数のソフトウェアを、単独の機器で同時に実行させたり、複数のOSの動作比較を可能にする。
【００７０】
また、OS管理システム部８２によって各々のOS８３に割り当てられたCPU１１Aの消費時間や記憶部１２Aの容量を計算するサブシステムをOS管理システム部８２に追加することによって、各OSの性能を計測し比較することもできる。
【００７１】
（システムの変形例４）
上述した実施の形態及び各変形例に係る計算機システムは、一定以上の規模のシステムを部品として扱うと同時に、部品をシステムとして実装することを許容する。図１３は、図６の映像復号部をシステム化するとともに、外部機器である直交変換部を計算に利用するように変更した構成を示すブロック図である。
【００７２】
マルチメディアシステム部３２Bは、サブシステムとして情報分離部６１と映像復号部６３を含んで構成されている。圧縮された映像信号は、特定の文法によって記述されたビット列となっているため、本変形例では、図６で情報分離部６１から映像復号部６３に送信されている映像信号は、実際には映像復号部６３のサブシステムである圧縮文法解析部９１に送られている。ここで圧縮文法解析部９１は、図１の外部接続部１４を操作している上位のシステムを介して、外部接続部１４を経由して本計算機システムに接続されている直交変換部９２に、文法解析によって直交変換前の状態に変換した映像データを区画に分けて送信する。
【００７３】
多くの動画圧縮形式では、直交変換と、連続する画像データの類似性の利用による画像の圧縮を採用している。これを効率的に復号するため、圧縮文法解析部９１は、連続する画像データの類似性を利用するための情報を文法解析の過程で取得し、それを差分蓄積部９３に送信し、その前の処理によってすでに差分蓄積部９３に蓄積されている直前の画像データから類似性情報を取り出させると同時に、前述の直交変換部９２へのデータ送信をも行っている。ここで圧縮文法解析部９１は、図７と同様の非同期的データ送信を用いて２種類の解析データを差分蓄積部９３と直交変換部９２に送信することにより、差分蓄積部９３の処理はCPU１１Aに処理させ、同時に直交変換は直交変換部９２に並列処理させるようにして、処理完了までの時間を短縮し、高速化を実現している。さらに、特徴的な演算である直交変換を専用機器で行うことにより、演算効率の向上も実現している。これが外部機器である直交変換部９２を導入する最大の利点である。両方の処理結果は映像合成部９７に送信されて合成され、その結果作成された映像は映像出力部５３に出力されるとともに、差分蓄積部９３に送られることにより差分情報が更新される。
【００７４】
本変形例も、映像復号部６３の内部処理の並列化が可能になったことは、映像復号部６３をシステム化できたことに起因する。
【００７５】
以上のように、上述した実施の形態及び各変形例に係る計算機システムは、複数のプログラムからなるアプリケーションシステムにおいて各プログラムの実行時間を確実に確保でき、さらに、再利用性を有し、既に開発されたシステムに機能を追加することがシステム開発者にとって容易に可能なシステムである。その計算機システムは、その処理の内部における部分的な動作単位として、システムの最上位システムの有するスケジューリング機能とデバイス管理機能をに継承した１以上のサブシステムを含んで構築されている。
【００７６】
特に、上述した実施の形態及び各変形例に係る計算機システムは、多数の詳細処理を内包するシステムであり、すべての詳細処理を、それぞれ、記憶装置の記憶領域の区画に割り当て、詳細処理間の非同期的な情報伝達によって連係を行うようにしたので、各処理状態が重層的な連係関係を構築することにより、詳細処理の各プログラムの実行時間を確実に確保でき、各詳細処理の再利用性と交換可能性を高められ、柔軟かつ効率的なシステム開発を可能とするシステムである。
【００７７】
以上のように、上述した実施の形態及び各変形例に係る計算機システムによれば、プログラムの処理単位を細分化し、かつ階層化して、各処理単位のひとつ上位の処理単位のみに、各処理単位の直接の挙動の制約を受けるようにしたので、従来のOSに該当するシステム上の制約を除去し、各処理単位の自由かつ容易に、各処理単位の挙動を規定することできる。さらに、その細分化された処理単位は、外部からの挙動の制約が限定的であることから、その制約部分のみを変更することにより、既に開発済みのシステムのプログラムを、他のシステムに容易に移植可能となる。すなわち、多数の処理単位を部品化し、それらの再利用をしやすくなっている。よって、部品化された処理単位の一部のみを他の部品に交換するだけで、類似したシステムの開発を完了させることができるので、システム開発効率を向上させることができる。
【００７８】
以上のように上述した実施の形態と各変形例によれば、複数のプログラムからなるアプリケーションシステムにおいて各プログラムの実行時間を確実に確保でき、多数の詳細処理を内包するシステムを効率的に開発でき、さらに、内部の詳細処理の再利用性と交換可能性を高めることによっても開発効率を向上させることができる。
【００７９】
本発明は、上述した実施の形態に限定されるものではなく、本発明の要旨を変えない範囲において、種々の変更、改変等が可能である。
【図面の簡単な説明】
【００８０】
【図１】本発明の実施の形態に係わるアプリケーションシステムのハードウェア構成を示すブロック構成図である。
【図２】本発明の実施の形態に係わるアプリケーションシステムのソフトウェア構成を説明するためのブロック構成図である。
【図３】階層構造を有する複数のサブシステムを説明するための図である。
【図４】アプリケーションプログラムが、さらに多くの階層の構造を有する複数のプログラムを説明するための図である。
【図５】本発明の実施の形態に係わる、アプリケーションシステムの具体例な例としてのマルチメディア端末システムのハードウェア構成を示すブロック図である。
【図６】本発明の実施の形態に係わる、開発者が開発するマルチメディア端末システムのアプリケーションプログラムの階層構造を説明するための図である。
【図７】本発明の実施の形態に係わる、システム内のマルチメディア情報の移動に関係する部分を、仲介する処理単位を省略した形式で表現した図である。
【図８】本発明の実施の形態に係わる、受信されるデジタル情報に交互に含まれる音声もしくは映像信号の処理の流れの例を示すフローチャートである。
【図９】本発明の実施の形態に係わる、情報の蓄積を行うサブシステムの処理を説明するための図である。
【図１０】本発明の実施の形態に係わる、情報の蓄積を行うサブシステムの処理の流れを示すフローチャートである。
【図１１】本発明の実施の形態に係わる、実行管理部のスケジューリング処理の流れの例を示すフローチャートである。
【図１２】本発明の実施の形態の変形例に係わる、複数のOSを含むシステムの場合の構成を示すブロック図である。
【図１３】本発明の実施の形態の変形例に係わる、映像復号部をシステム化するとともに、外部機器である直交変換部を計算に利用するように変更した構成を示すブロック図である。
【符号の説明】
【００８１】
１  アプリケーションシステム、１A  マルチメディア端末システム、１１、１１A  CPU、１２、１２A  記憶部、１３、１３A  計時部、１４、１４A  外部接続部、１５、１５A  バス、２１  OS、２２、２２A  アプリケーションプログラム、３２A  マルチメディアシステム部、３２Aａ  ４１ａ〜４８ａ  実行管理部、３２B  実行時間決定部、３２C  プログラム実行部、  ６１ａ〜６３ａ  情報蓄積部
【図１】
2009098800.tif 000003
【図２】
2009098800.tif 000004
【図３】
2009098800.tif 000005
【図４】
2009098800.tif 000006
【図５】
2009098800.tif 000007
【図６】
2009098800.tif 000008
【図７】
2009098800.tif 000009
【図８】
2009098800.tif 000010
【図９】
2009098800.tif 000011
【図１０】
2009098800.tif 000012
【図１１】
2009098800.tif 000013
【図１２】
2009098800.tif 000014
【図１３】
2009098800.tif 000015