JP2005332009A - Information processing apparatus and method, recording medium, and program - Google Patents

Information processing apparatus and method, recording medium, and program Download PDF

Info

Publication number
JP2005332009A
JP2005332009A JP2004147245A JP2004147245A JP2005332009A JP 2005332009 A JP2005332009 A JP 2005332009A JP 2004147245 A JP2004147245 A JP 2004147245A JP 2004147245 A JP2004147245 A JP 2004147245A JP 2005332009 A JP2005332009 A JP 2005332009A
Authority
JP
Japan
Prior art keywords
program
processor
information processing
sub
data
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.)
Withdrawn
Application number
JP2004147245A
Other languages
Japanese (ja)
Inventor
Tomoyuki Obata
智之 小畠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2004147245A priority Critical patent/JP2005332009A/en
Publication of JP2005332009A publication Critical patent/JP2005332009A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To distribute the load of data processing. <P>SOLUTION: If an OS 111 can acquire resources of a sub processor 32, an audio recording program 123 loads an audio encoding module 151 into a local storage 42 of the sub processor 32 to execute the audio encoding module 151 with a kick command and a program counter. If the OS 111 can not acquire resources of the sub processor 32, on the other hand, the audio recording program 123 loads an audio encoding library function 152 into a main memory 12 for a main processor 31 to execute the audio encoding library function 152. The method is applicable to an information processing apparatus comprising an AV device for inputting audio or video to record corresponding audio or video data. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、情報処理装置および方法、記録媒体、並びにプログラムに関し、特に、サブプロセッサの負荷を軽減することができるようにした情報処理装置および方法、記録媒体、並びにプログラムに関する。   The present invention relates to an information processing apparatus and method, a recording medium, and a program, and more particularly, to an information processing apparatus and method, a recording medium, and a program that can reduce a load on a sub processor.

従来のコンピュータでは、メインプロセッサの負荷が大きくなる場合が多いため、負荷分散の方法として、サブプロセッサに必要な処理の一部を並列で行わせ、メインプロセッサの負荷を軽減するようにしていた。   In a conventional computer, the load on the main processor often increases. Therefore, as a load distribution method, a part of processing necessary for the sub processors is performed in parallel to reduce the load on the main processor.

そして、昨今、複数のプロセッサまたはコンピュータを用いて、処理を分散して実行させる、分散処理システムが注目されている(特許文献1乃至5参照)。分散処理を実行させる方法としては、ネットワークを介して接続される複数のコンピュータに処理を実行させる方法、1つのコンピュータに設けられた、複数のプロセッサに処理を実行させる方法、および上述した2つの方法を組み合わせて処理を実行させる方法がある。   Recently, a distributed processing system that uses a plurality of processors or computers to execute processing in a distributed manner has attracted attention (see Patent Documents 1 to 5). As a method for executing distributed processing, a method for causing a plurality of computers connected via a network to execute processing, a method for causing a plurality of processors provided in one computer to execute processing, and the two methods described above There is a method of executing processing by combining the above.

特開2002−342165号公報JP 2002-342165 A 特開2002−351850号公報JP 2002-351850 A 特開2002−358289号公報JP 2002-358289 A 特開2002−366533号公報JP 2002-366533 A 特開2002−366534号公報JP 2002-366534 A

しかしながら、この分散処理システムにおいては、ハードウェアで実現していたことを、サブプロセッサにソフトウェアで実現させているため、メインプロセッサよりもサブプロセッサの負荷の方が大きくなってしまう。したがって、メインプロセッサの負荷をサブプロセッサに分散させる従来の方法では、サブプロセッサの負荷を軽減することが困難である課題があった。   However, in this distributed processing system, what is realized by hardware is realized by software in the sub processor, so that the load of the sub processor becomes larger than that of the main processor. Therefore, the conventional method for distributing the load of the main processor to the sub processors has a problem that it is difficult to reduce the load of the sub processors.

すなわち、この分散処理システムにおいて、例えば、複数のサブプロセッサがすべて実行中、または予約中であった場合、すぐに実行したい処理を実行させることができないなど、サブプロセッサに負荷がかかり、システムのスループットが低下してしまう課題があった。   That is, in this distributed processing system, for example, when all of the sub processors are being executed or reserved, the sub processor is overloaded and the throughput of the system cannot be executed. There was a problem that would decrease.

本発明は、このような状況に鑑みてなされたものであり、サブプロセッサにおけるデータ処理の負荷分散を図ることができるようにするものである。   The present invention has been made in view of such a situation, and makes it possible to achieve load distribution of data processing in a sub processor.

本発明の情報処理装置は、第1のプログラムに基づいてデータ処理を実行する、少なくとも1の第1の処理手段と、装置全体を管理する処理を実行する第2の処理手段と、第1の処理手段において、第1のプログラムの実行に必要な計算資源が空いているか否かを判定する資源判定手段と、資源判定手段により第1の処理手段において、第1のプログラムの実行に必要な計算資源が空いていないと判定された場合、第2の処理手段を、第1のプログラムと等価な結果が得られる第2のプログラムも実行するように制御する処理制御手段とを備えることを特徴とする。   An information processing apparatus according to the present invention includes at least one first processing means for executing data processing based on a first program, second processing means for executing processing for managing the entire apparatus, In the processing means, a resource determination means for determining whether or not a calculation resource necessary for the execution of the first program is available, and a calculation required for the execution of the first program in the first processing means by the resource determination means. And a process control means for controlling the second processing means to execute a second program that obtains a result equivalent to the first program when it is determined that the resources are not free. To do.

データ処理は、映像データまたは音声データの処理であるようにすることができる。   The data processing can be processing of video data or audio data.

処理制御手段は、資源判定手段により第1の処理手段において、第1のプログラムの実行に必要な計算資源が空いていると判定された場合、第1のプログラムを実行するように、第1の処理手段を制御するようにすることができる。   The processing control unit is configured to execute the first program so that the resource determining unit executes the first program when the first processing unit determines that the calculation resource necessary for executing the first program is free. The processing means can be controlled.

本発明の情報処理方法は、第1のプログラムに基づいてデータ処理を実行する、少なくとも1の第1の処理手段において、第1のプログラムの実行に必要な計算資源が空いているか否かを判定する資源判定ステップと、資源判定ステップの処理により第1の処理手段において、第1のプログラムの実行に必要な計算資源が空いていないと判定された場合、装置全体を管理する処理を実行する第2の処理手段を、第1のプログラムと等価な結果が得られる第2のプログラムも実行するように制御する処理制御ステップとを含むことを特徴とする。   According to the information processing method of the present invention, in at least one first processing means that executes data processing based on a first program, it is determined whether or not a calculation resource necessary for executing the first program is free. When the first processing means determines that the calculation resources necessary for executing the first program are not available in the resource determination step and the resource determination step, a process for managing the entire apparatus is executed. And a processing control step of controlling the second processing means so as to execute a second program that obtains a result equivalent to the first program.

本発明のプログラムが記録されている記録媒体は、第1のプログラムに基づいてデータ処理を実行する、少なくとも1の第1の処理手段において、第1のプログラムの実行に必要な計算資源が空いているか否かを判定する資源判定ステップと、資源判定ステップの処理により第1の処理手段において、第1のプログラムの実行に必要な計算資源が空いていないと判定された場合、装置全体を管理する処理を実行する第2の処理手段を、第1のプログラムと等価な結果が得られる第2のプログラムも実行するように制御する処理制御ステップとを含むことを特徴とする。   In the recording medium on which the program of the present invention is recorded, at least one first processing means that executes data processing based on the first program has free computing resources necessary for executing the first program. When the first processing means determines that there are no calculation resources necessary for executing the first program by the resource determination step for determining whether or not there is a resource determination step, the entire apparatus is managed. And a processing control step of controlling the second processing means for executing the processing so that the second program that obtains a result equivalent to the first program is also executed.

本発明のプログラムは、第1のプログラムに基づいてデータ処理を実行する、少なくとも1の第1の処理手段において、第1のプログラムの実行に必要な計算資源が空いているか否かを判定する資源判定ステップと、資源判定ステップの処理により第1の処理手段において、第1のプログラムの実行に必要な計算資源が空いていないと判定された場合、装置全体を管理する処理を実行する第2の処理手段を、第1のプログラムと等価な結果が得られる第2のプログラムも実行するように制御する処理制御ステップとを含むことを特徴とする。   The program according to the present invention is a resource for determining whether or not a calculation resource necessary for execution of the first program is available in at least one first processing unit that executes data processing based on the first program. When the first processing means determines in the determination step and the resource determination step that the calculation resources necessary for executing the first program are not available, a process for managing the entire apparatus is executed. And a processing control step of controlling the processing means so as to execute a second program that obtains a result equivalent to the first program.

本発明においては、第1のプログラムに基づいてデータ処理を実行する、少なくとも1の第1の処理手段において、第1のプログラムの実行に必要な計算資源が空いているか否かが判定され、第1の処理手段において、第1のプログラムの実行に必要な計算資源が空いていないと判定された場合、装置全体を管理する処理を実行する第2の処理手段が、第1のプログラムと等価な結果が得られる第2のプログラムも実行するように制御される。   In the present invention, in at least one first processing means for executing data processing based on the first program, it is determined whether or not calculation resources necessary for executing the first program are free, In the first processing means, when it is determined that the calculation resources necessary for executing the first program are not available, the second processing means for executing processing for managing the entire apparatus is equivalent to the first program. The second program that obtains the result is also controlled to be executed.

本発明によれば、データ処理の負荷分散を図ることができる。また、本発明によれば、予約待ちによるスループットを向上させることができる。   According to the present invention, load distribution of data processing can be achieved. Further, according to the present invention, it is possible to improve throughput due to reservation waiting.

以下に本発明の最良の形態を説明するが、開示される発明と実施の形態との対応関係を例示すると、次のようになる。本明細書中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。   BEST MODE FOR CARRYING OUT THE INVENTION The best mode of the present invention will be described below. The correspondence relationship between the disclosed invention and the embodiments is exemplified as follows. Although there are embodiments which are described in this specification but are not described here as corresponding to the invention, the embodiments correspond to the invention. It does not mean that it is not a thing. Conversely, even if an embodiment is described herein as corresponding to an invention, that means that the embodiment does not correspond to an invention other than the invention. Absent.

さらに、この記載は、明細書に記載されている発明の全てを意味するものではない。換言すれば、この記載は、明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現し、追加される発明の存在を否定するものではない。   Further, this description does not mean all the inventions described in the specification. In other words, this description is for the invention described in the specification and not claimed in this application, i.e., for the invention that will be applied for in the future or that will appear as a result of amendment and added. It does not deny existence.

請求項1に記載の情報処理装置(例えば、図1の情報処理装置1−1)は、第1のプログラム(例えば、図6の音声符号化モジュール151)に基づいてデータ処理を実行する、少なくとも1の第1の処理手段(例えば、図1のサブプロセッサ32−1)と、装置全体を管理する処理を実行する第2の処理手段(例えば、図1のメインプロセッサ31)と、第1の処理手段において、第1のプログラムの実行に必要な計算資源が空いているか否かを判定する資源判定手段(例えば、図6のOS111)と、資源判定手段により第1の処理手段において、第1のプログラムの実行に必要な計算資源が空いていないと判定された場合、第2の処理手段を、第1のプログラムと等価な結果が得られる第2のプログラム(例えば、図6の音声符号化ライブラリ関数152)も実行するように制御する処理制御手段(例えば、図6の音声記録プログラム123)とを備えることを特徴とする。   The information processing apparatus according to claim 1 (for example, the information processing apparatus 1-1 of FIG. 1) executes data processing based on a first program (for example, the speech encoding module 151 of FIG. 6), at least 1 first processing means (for example, sub-processor 32-1 in FIG. 1), second processing means for executing processing for managing the entire apparatus (for example, main processor 31 in FIG. 1), In the processing means, a resource determination means (for example, OS 111 in FIG. 6) for determining whether or not a calculation resource necessary for executing the first program is free, and the first processing means by the resource determination means in the first processing means. When it is determined that the calculation resources necessary for the execution of the program are not free, the second processing unit is configured to use a second program (for example, the speech encoding shown in FIG. 6) that obtains a result equivalent to the first program. La Library function 152) processing control means also controls to execute (e.g., characterized by comprising a voice recording program 123) in FIG. 6.

請求項4に記載の情報処理方法は、第1のプログラム(例えば、図6の音声符号化モジュール151)に基づいてデータ処理を実行する、少なくとも1の第1の処理手段(例えば、図1のサブプロセッサ32−1)において、第1のプログラムの実行に必要な計算資源が空いているか否かを判定する資源判定ステップ(例えば、図9のステップS32)と、資源判定ステップの処理により第1の処理手段において、第1のプログラムの実行に必要な計算資源が空いていないと判定された場合、装置全体を管理する処理を実行する第2の処理手段(例えば、図1のメインプロセッサ31)を、第1のプログラムと等価な結果が得られる第2のプログラム(例えば、図6の音声記録プログラム123)も実行するように制御する処理制御ステップ(例えば、図9のステップS39)とを含むことを特徴とする。   The information processing method according to claim 4 includes at least one first processing unit (for example, FIG. 1) that performs data processing based on a first program (for example, the speech encoding module 151 in FIG. 6). In the sub-processor 32-1), a resource determination step (for example, step S32 in FIG. 9) for determining whether or not a calculation resource necessary for the execution of the first program is free, and the resource determination step perform the first. In this processing means, when it is determined that the calculation resources necessary for executing the first program are not available, the second processing means (for example, the main processor 31 in FIG. 1) that executes processing for managing the entire apparatus. Is a process control step for controlling so as to also execute a second program (for example, the audio recording program 123 of FIG. 6) from which a result equivalent to the first program is obtained. For example, characterized in that it comprises a step S39) and FIG.

なお、請求項5に記載の記録媒体、および請求項6に記載のプログラムは、上述した請求項4に記載の情報処理方法と基本的に同様の構成であるため、繰り返しになるのでその説明は省略する。   Note that the recording medium according to claim 5 and the program according to claim 6 have basically the same configuration as the information processing method according to claim 4 described above, and are therefore repeated. Omitted.

以下、図を参照して本発明の実施の形態について説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

本発明は、例えば、ライブ映像ストリーミング配信システム、またはテレビなどのリアルタイムにストリーミングデータを伝送する通信システムに適用できる。   The present invention can be applied to, for example, a live video streaming distribution system or a communication system that transmits streaming data in real time such as a television.

図1は、本発明を適用した通信システムの一実施の形態を示す図である。この通信システムにおいては、セルネットワークなどのネットワーク2を介して、情報処理装置1−1、情報処理装置1−2、および情報処理装置1−3が相互に接続されている。そして、1つのネットワーク2においては、1つの情報処理装置(例えば、情報処理装置1−1)がマスター装置として動作し、他の情報処理装置(例えば、情報処理装置1−2および情報処理装置1−3)がスレーブ装置として動作する。   FIG. 1 is a diagram showing an embodiment of a communication system to which the present invention is applied. In this communication system, an information processing device 1-1, an information processing device 1-2, and an information processing device 1-3 are connected to each other via a network 2 such as a cell network. In one network 2, one information processing apparatus (for example, the information processing apparatus 1-1) operates as a master apparatus, and other information processing apparatuses (for example, the information processing apparatus 1-2 and the information processing apparatus 1). -3) operates as a slave device.

情報処理装置1−1乃至1−3は、例えば、ポータブルCD(Compact Disk)プレイヤ、ハードディスクレコーダ、またはカムコーダなどのAV(Audio Visual)機器、パーソナルコンピュータ、もしくはPDA(Personal Digital Assistant)などにより構成される。   The information processing apparatuses 1-1 to 1-3 are configured by, for example, AV (Audio Visual) equipment such as a portable CD (Compact Disk) player, a hard disk recorder, or a camcorder, a personal computer, or a PDA (Personal Digital Assistant). The

情報処理装置1−1は、分散処理の実行を指示されると、要求された処理を実行するために必要なデータおよびプログラムを含むソフトウェアセルを生成し、生成したソフトウェアセルを、ネットワーク2を介して、情報処理装置1−2、および情報処理装置1−3宛てに送信する。   When the information processing apparatus 1-1 is instructed to execute the distributed processing, the information processing device 1-1 generates a software cell including data and a program necessary for executing the requested processing, and the generated software cell is transmitted via the network 2. To the information processing device 1-2 and the information processing device 1-3.

情報処理装置1−2および情報処理装置1−3は、それぞれ、情報処理装置1−1から送信されてきたソフトウェアセルを受信し、受信したソフトウェアセルを基に、要求された処理を実行する。情報処理装置1−2および情報処理装置1−3は、それぞれ、要求された処理を実行してから、要求された処理の結果得られたデータを、ネットワーク2を介して情報処理装置1−1宛てに送信する。   Each of the information processing device 1-2 and the information processing device 1-3 receives the software cell transmitted from the information processing device 1-1, and executes the requested process based on the received software cell. Each of the information processing apparatus 1-2 and the information processing apparatus 1-3 executes the requested process, and then transmits the data obtained as a result of the requested process via the network 2 to the information processing apparatus 1-1. Send to address.

情報処理装置1−1は、情報処理装置1−2または情報処理装置1−3から送信されてきたデータを受信し、受信したデータを基に、所定の処理を実行するか、受信したデータを記録する。   The information processing device 1-1 receives the data transmitted from the information processing device 1-2 or the information processing device 1-3, and executes predetermined processing based on the received data or receives the received data. Record.

情報処理装置1−1は、情報処理コントローラ11、メインメモリ12、記録部13−1、記録部13−2、バス14、操作入力部15、入力部16、出力部17、通信部18、ドライブ19により構成される。   The information processing apparatus 1-1 includes an information processing controller 11, a main memory 12, a recording unit 13-1, a recording unit 13-2, a bus 14, an operation input unit 15, an input unit 16, an output unit 17, a communication unit 18, and a drive. 19.

情報処理コントローラ11は、メインメモリ12に記録されている各種のプログラムを実行し、情報処理装置1−1全体を制御する。情報処理コントローラ11は、ソフトウェアセルを生成し、生成したソフトウェアセルを、バス14を介して、通信部18に供給する。情報処理コントローラ11は、通信部18から供給されたデータを記録部13−1または13−2に供給する。情報処理コントローラ11は、操作入力部15からの指示信号に基づいて、指定されたデータを、メインメモリ12、記録部13−1または13−2から取得し、取得したデータをバス14を介して出力部17に供給する。   The information processing controller 11 executes various programs recorded in the main memory 12 and controls the entire information processing apparatus 1-1. The information processing controller 11 generates a software cell and supplies the generated software cell to the communication unit 18 via the bus 14. The information processing controller 11 supplies the data supplied from the communication unit 18 to the recording unit 13-1 or 13-2. Based on the instruction signal from the operation input unit 15, the information processing controller 11 acquires designated data from the main memory 12, the recording unit 13-1 or 13-2, and acquires the acquired data via the bus 14. This is supplied to the output unit 17.

また、情報処理コントローラ11には、情報処理装置1−1を、ネットワーク2全体を通して一意的に特定できる装置IDが割り当てられている。   The information processing controller 11 is assigned a device ID that can uniquely identify the information processing device 1-1 throughout the network 2.

情報処理コントローラ11は、メインプロセッサ31、サブプロセッサ32−1乃至サブプロセッサ32−3、DMAC(Direct Memory Access Controller)33、DC(Disk Controller)34、キー管理テーブル記憶部35、およびバス36により密結合に構成される。   The information processing controller 11 includes a main processor 31, sub processors 32-1 to 32-3, a direct memory access controller (DMAC) 33, a disk controller (DC) 34, a key management table storage unit 35, and a bus 36. Configured to join.

メインプロセッサ31、サブプロセッサ32−1乃至サブプロセッサ32−3、DMAC33、DC34、およびキー管理テーブル記憶部35は、バス36を介して、相互に接続されている。また、メインプロセッサ31には、メインプロセッサ31を特定するためのメインプロセッサIDが識別子として割り当てられる。同様に、サブプロセッサ32−1乃至サブプロセッサ32−3のそれぞれには、サブプロセッサ32−1乃至サブプロセッサ32−3のそれぞれを特定するためのサブプロセッサIDのそれぞれが識別子として割り当てられる。   The main processor 31, the sub processor 32-1 to the sub processor 32-3, the DMAC 33, the DC 34, and the key management table storage unit 35 are connected to each other via a bus 36. Further, a main processor ID for identifying the main processor 31 is assigned to the main processor 31 as an identifier. Similarly, each of the sub processors 32-1 to 32-3 is assigned with an identifier of a sub processor ID for specifying each of the sub processors 32-1 to 32-3.

メインプロセッサ31は、サブプロセッサ32−1乃至サブプロセッサ32−3によるプログラムの実行のスケジュール管理および情報処理コントローラ11(情報処理装置1−1)の全体の管理を行う。メインプロセッサ31は、RAM(Random Access Memory)などで構成されるローカルストレージ41を備える。   The main processor 31 performs schedule management of program execution by the sub processors 32-1 to 32-3 and overall management of the information processing controller 11 (information processing apparatus 1-1). The main processor 31 includes a local storage 41 composed of a RAM (Random Access Memory) or the like.

メインプロセッサ31は、DC34を制御し、記録部13−1または13−2に記録されているデータおよびプログラムを読み出させ、DMAC33を制御し、メインメモリ12にロードさせて、一時的に記憶させる。メインプロセッサ31は、メインメモリ12からデータおよびプログラムを読み込み、読み込んだデータおよびプログラムをもとに、情報処理装置1の各種の処理を実行する。なお、情報処理装置1−1がスレーブ装置であった場合のメインプロセッサ31は、記録部13−1または13−2に記録されているデータおよびプログラムだけでなく、マスター装置である他の情報処理装置から受信されたセルに含まれるプログラムやデータもメインメモリ12にロードする。   The main processor 31 controls the DC 34 to read out data and programs recorded in the recording unit 13-1 or 13-2, controls the DMAC 33, loads it into the main memory 12, and temporarily stores it. . The main processor 31 reads data and programs from the main memory 12 and executes various processes of the information processing apparatus 1 based on the read data and programs. The main processor 31 when the information processing device 1-1 is a slave device is not only the data and programs recorded in the recording unit 13-1 or 13-2, but also other information processing that is a master device. Programs and data included in the cells received from the apparatus are also loaded into the main memory 12.

メインプロセッサ31は、ネットワーク2を介して接続されている、情報処理装置1−2または情報処理装置1−3に分散処理を実行させる場合、操作入力部15を介して要求された処理を実行するために必要なデータおよびプログラムを含むソフトウェアセルを生成し、生成したソフトウェアセルをバス36およびバス14を介して、通信部18に供給する。また、メインプロセッサ31は、情報処理装置1−1内において、処理を実行させる場合、例えば、サブプロセッサ32−1乃至サブプロセッサ32−3がそれぞれ他のプログラムを実行しており、要求された処理に対応するプログラムを実行させることができないとき、代わりに、管理のためのプログラム以外のプログラムも実行する。この場合、メインプロセッサ31は、サブプロセッサと同様に機能する。   When the main processor 31 causes the information processing device 1-2 or the information processing device 1-3 connected via the network 2 to execute the distributed processing, the main processor 31 executes the processing requested via the operation input unit 15. Therefore, a software cell including data and a program necessary for this is generated, and the generated software cell is supplied to the communication unit 18 via the bus 36 and the bus 14. When the main processor 31 executes processing in the information processing apparatus 1-1, for example, the sub processor 32-1 to the sub processor 32-3 are each executing another program, and the requested processing is performed. When a program corresponding to the above cannot be executed, a program other than the management program is executed instead. In this case, the main processor 31 functions in the same manner as the sub processor.

サブプロセッサ32−1乃至サブプロセッサ32−3は、メインプロセッサ31の制御の下、並列的かつ独立に、プログラムを実行し、データを処理する。なお、必要に応じて、メインプロセッサ31が実行するプログラムは、サブプロセッサ32−1乃至サブプロセッサ32−3のそれぞれが実行するプログラムのそれぞれと連携して動作するように構成することも可能である。   The sub processors 32-1 to 32-3 execute programs and process data in parallel and independently under the control of the main processor 31. If necessary, the program executed by the main processor 31 can be configured to operate in cooperation with each of the programs executed by the sub processors 32-1 to 32-3. .

サブプロセッサ32−1乃至サブプロセッサ32−3のそれぞれは、ローカルストレージ42−1乃至ローカルストレージ42−3のそれぞれを備える。サブプロセッサ32−1乃至サブプロセッサ32−3のそれぞれは、ローカルストレージ42−1乃至ローカルストレージ42−3のそれぞれに、必要に応じて、データおよびプログラムを一時的に記憶させる。サブプロセッサ32−1乃至サブプロセッサ32−3のそれぞれは、ローカルストレージ42−1乃至ローカルストレージ42−3のそれぞれからデータおよびプログラムを読み込み、読み込んだデータおよびプログラムをもとに、各種の処理を実行する。   Each of the sub-processors 32-1 to 32-3 includes local storage 42-1 to local storage 42-3. Each of the sub-processors 32-1 to 32-3 temporarily stores data and programs in the local storage 42-1 to local storage 42-3 as necessary. Each of the sub processors 32-1 to 32-3 reads data and programs from the local storage 42-1 to local storage 42-3, and executes various processes based on the read data and programs. To do.

以下、サブプロセッサ32−1乃至サブプロセッサ32−3のそれぞれを個々に区別する必要のないとき、単にサブプロセッサ32と称する。同様に、以下、ローカルストレージ42−1乃至ローカルストレージ42−3のそれぞれを個々に区別する必要のないとき、単にローカルストレージ42と称する。なお、情報処理装置1においては、3つのサブプロセッサ32により構成されているが、接続される数は任意である。   Hereinafter, when it is not necessary to individually distinguish each of the sub processors 32-1 to 32-3, they are simply referred to as sub processors 32. Similarly, the local storage 42-1 to the local storage 42-3 are hereinafter simply referred to as the local storage 42 when it is not necessary to individually distinguish them. Note that the information processing apparatus 1 includes three sub-processors 32, but the number connected is arbitrary.

DMAC33は、キー管理テーブル記憶部35に記録されている、メインプロセッサキー、サブプロセッサキー、およびアクセスキーをもとに、メインプロセッサ31およびサブプロセッサ32からのメインメモリ12に記憶されているプログラムおよびデータへのアクセスを管理する。DC34は、メインプロセッサ31およびサブプロセッサ32からの記録部13−1および13−2などへのアクセスを行う。   The DMAC 33 stores the programs stored in the main memory 12 from the main processor 31 and the sub processor 32 based on the main processor key, the sub processor key, and the access key recorded in the key management table storage unit 35. Manage access to data. The DC 34 accesses the recording units 13-1 and 13-2 from the main processor 31 and the sub processor 32.

キー管理テーブル記憶部35は、メインプロセッサキー、サブプロセッサキー、およびアクセスキーを記録している。なお、メインプロセッサキー、サブプロセッサキー、およびアクセスキーの詳細は後述する。   The key management table storage unit 35 records a main processor key, a sub processor key, and an access key. Details of the main processor key, sub-processor key, and access key will be described later.

メインメモリ12は、例えば、DRAM(Dynamic Random Access Memory)などにより構成される。メインメモリ12は、メインプロセッサ31およびサブプロセッサ32が実行する各種のプログラムおよびデータを一時的に記憶する。   The main memory 12 is configured by, for example, a DRAM (Dynamic Random Access Memory). The main memory 12 temporarily stores various programs and data executed by the main processor 31 and the sub processor 32.

記録部13−1および13−2は、それぞれ、例えば、ハードディスクなどにより構成される。記録部13−1および記録部13−2は、メインプロセッサ31およびサブプロセッサ32が実行する各種のプログラムおよびデータを記録している。また、記録部13−1および記録部13−2は、情報処理コントローラ11から供給されたデータを記録する。以下、記録部13−1および13−2を個々に区別する必要のないとき、単に記録部13と称する。   The recording units 13-1 and 13-2 are each configured with, for example, a hard disk. The recording unit 13-1 and the recording unit 13-2 record various programs and data executed by the main processor 31 and the sub processor 32. Further, the recording unit 13-1 and the recording unit 13-2 record data supplied from the information processing controller 11. Hereinafter, when it is not necessary to distinguish the recording units 13-1 and 13-2 from each other, they are simply referred to as the recording unit 13.

なお、記録部13は、固定ディスクやリムーバブルディスクなどのハードディスクだけでなく、例えば、Blu-ray Disc、CD−RW(Compact Disk ReWritable)、DVD±RW(Digital Versatile Disk ReWritable)などの光ディスク、磁気ディスク(フレキシブルディスクを含む)、を含む)、光磁気ディスク(MD(Mini-Disk)(商標)を含む)、もしくは半導体メモリなどにより構成されるようにしてもよい。   The recording unit 13 is not only a hard disk such as a fixed disk or a removable disk, but also an optical disk such as a Blu-ray Disc, a CD-RW (Compact Disk ReWritable), a DVD ± RW (Digital Versatile Disk ReWritable), or a magnetic disk. (Including a flexible disk), a magneto-optical disk (including MD (Mini-Disk) (trademark)), or a semiconductor memory.

また、情報処理コントローラ11には、バス14を介して、操作入力部15、入力部16、出力部17、通信部18、ドライブ19が接続されている。操作入力部15は、キーボード、マウスなどからなり、ユーザの操作に応じた指示信号を、情報処理コントローラ11に供給する。入力部16は、音声を集音し、音声データとして、情報処理コントローラ11に供給するマイクロフォンや、被写体を撮像し、撮像により得られた映像に対応する映像データを情報処理コントローラ11に供給する撮像部などにより構成される。出力部17は、例えば、ディスプレイ、スピーカ、およびランプなどよりなり、情報処理コントローラ11から供給されたデータを出力する。   An operation input unit 15, an input unit 16, an output unit 17, a communication unit 18, and a drive 19 are connected to the information processing controller 11 via a bus 14. The operation input unit 15 includes a keyboard, a mouse, and the like, and supplies an instruction signal corresponding to a user operation to the information processing controller 11. The input unit 16 collects sound, picks up a microphone to be supplied to the information processing controller 11 as sound data, and picks up an image of a subject and supplies image data corresponding to the image obtained by the image pickup to the information processing controller 11. It consists of parts. The output unit 17 includes, for example, a display, a speaker, a lamp, and the like, and outputs data supplied from the information processing controller 11.

通信部18は、情報処理コントローラ11から供給されたソフトウェアセルを、ネットワーク2を介して情報処理装置1−2または情報処理装置1−3宛てに送信する。また、通信部18は、情報処理装置1−2または情報処理装置1−3から送信されてきたデータを、バス14を介して、情報処理コントローラ11に供給する。   The communication unit 18 transmits the software cell supplied from the information processing controller 11 to the information processing apparatus 1-2 or the information processing apparatus 1-3 via the network 2. In addition, the communication unit 18 supplies data transmitted from the information processing apparatus 1-2 or the information processing apparatus 1-3 to the information processing controller 11 via the bus 14.

ドライブ19は、磁気ディスク51、光ディスク52、光磁気ディスク53、あるいは半導体メモリ54などが装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて、バス14を介して、情報処理コントローラ11に転送され、情報処理コントローラ11によって、記録部13に記録される。   When the magnetic disk 51, the optical disk 52, the magneto-optical disk 53, the semiconductor memory 54, or the like is mounted, the drive 19 drives them to acquire programs and data recorded therein. The acquired program and data are transferred to the information processing controller 11 via the bus 14 as necessary, and are recorded in the recording unit 13 by the information processing controller 11.

なお、情報処理装置1−2または情報処理装置1−3は、情報処理装置1−1と同様に構成されるので、その説明は省略するが、情報処理装置1−2または情報処理装置1−3は上述した構成に限らず、必要に応じて、機能を追加したり削除したりすることは可能であり、その機能に対応した構成をもつことが可能である。以下、情報処理装置1−1、情報処理装置1−2および情報処理装置1−3を個々に区別する必要のないとき、単に、情報処理装置1と称する。   Note that the information processing device 1-2 or the information processing device 1-3 is configured in the same manner as the information processing device 1-1, and thus the description thereof is omitted, but the information processing device 1-2 or the information processing device 1- 3 is not limited to the configuration described above, and functions can be added or deleted as necessary, and a configuration corresponding to the function can be provided. Hereinafter, when there is no need to distinguish the information processing apparatus 1-1, the information processing apparatus 1-2, and the information processing apparatus 1-3, they are simply referred to as the information processing apparatus 1.

また、図1の例においては、情報処理装置1が3台ネットワーク2に説明したが、接続される台数は任意である。   In the example of FIG. 1, the information processing apparatus 1 is described as the three network 2, but the number of connected apparatuses is arbitrary.

次に、図2乃至図4を参照して、サブプロセッサ32がメインメモリ12にアクセスする場合の処理について説明する。   Next, processing when the sub processor 32 accesses the main memory 12 will be described with reference to FIGS.

図2で示されるように、メインメモリ12には、複数のアドレスを指定できるメモリロケーションが配置される。各メモリロケーションに対しては、データの状態を示す情報を格納するための追加セグメントが割り振られる。追加セグメントは、F/Eビット、サブプロセッサIDおよびLSアドレス(ローカルストレージアドレス)を含む。また、各メモリロケーションには、後述するアクセスキーが割り振られる。   As shown in FIG. 2, the main memory 12 is provided with memory locations that can specify a plurality of addresses. Each memory location is allocated an additional segment for storing information indicating the state of the data. The additional segment includes an F / E bit, a sub processor ID, and an LS address (local storage address). Each memory location is assigned an access key to be described later.

“0”であるF/Eビットは、サブプロセッサ32によって読み出されている処理中のデータ、または空き状態であるため最新データではない無効データであり、そのメモリロケーションから読み出し不可であることを示す。また、“0”であるF/Eビットは、そのメモリロケーションにデータ書き込み可能であることを示し、データが書き込まれると、F/Eビットは“1”に設定される。   The F / E bit that is “0” indicates that the data being processed being read by the sub processor 32 or invalid data that is not the latest data because it is empty, and cannot be read from the memory location. Show. An F / E bit of “0” indicates that data can be written to the memory location. When data is written, the F / E bit is set to “1”.

“1”であるF/Eビットは、そのメモリロケーションのデータがサブプロセッサ32によって読み出されておらず、未処理の最新データであることを示す。F/Eビットが“1”であるメモリロケーションのデータは読み出し可能であり、サブプロセッサ32によって読み出されてから、F/Eビットは“0”に設定される。また、“1”であるF/Eビットは、メモリロケーションがデータ書き込み不可であることを示す。   The F / E bit that is “1” indicates that the data at the memory location has not been read by the sub-processor 32 and is the latest unprocessed data. The data in the memory location whose F / E bit is “1” can be read, and after being read by the sub processor 32, the F / E bit is set to “0”. Further, the F / E bit which is “1” indicates that the memory location cannot write data.

さらに、F/Eビットが“0”(読み出し不可/書き込み可)である状態において、メモリロケーションについて読み出し予約を設定することが可能である。F/Eビットが“0”であるメモリロケーションに対して読み出し予約を行う場合には、サブプロセッサ32は、読み出し予約を行うメモリロケーションの追加セグメントに、読み出し予約情報としてサブプロセッサ32のサブプロセッサIDおよびLSアドレスを書き込む。そして、データを書き込むサブプロセッサ32によって、読み出し予約されたメモリロケーションにデータが書き込まれ、F/Eビットが“1”(読み出し可/書き込み不可)に設定されたとき、あらかじめ読み出し予約情報として追加セグメントに書き込まれているサブプロセッサIDおよびLSアドレスによって特定されるローカルストレージ42に読み出される。   Further, it is possible to set a read reservation for the memory location in a state where the F / E bit is “0” (reading impossible / writing possible). When a read reservation is made for a memory location whose F / E bit is “0”, the sub processor 32 adds the sub processor ID of the sub processor 32 as read reservation information to an additional segment of the memory location where the read reservation is made. And write the LS address. Then, when the data is written to the memory location reserved for reading by the sub processor 32 to which the data is written and the F / E bit is set to “1” (readable / not writable), an additional segment is set in advance as read reservation information. Is read out to the local storage 42 specified by the sub processor ID and the LS address.

複数のサブプロセッサ32によってデータを多段階に処理する必要がある場合、このように各メモリロケーションのデータの読み出しおよび書き込みを制御することによって、前段階の処理を行うサブプロセッサ32が、処理済みのデータをメインメモリ12における所定のアドレスに書き込んだ後に即座に、後段階の処理を行う別のサブプロセッサ32が前処理後のデータを読み出すことが可能となる。   When it is necessary to process data in multiple stages by a plurality of sub-processors 32, the sub-processor 32 that performs the process in the previous stage is controlled by controlling the reading and writing of data in each memory location in this way. Immediately after the data is written to a predetermined address in the main memory 12, another sub-processor 32 that performs the subsequent processing can read the pre-processed data.

また、図2で示されるように、サブプロセッサ32のローカルストレージ42は、複数のアドレスを指定できるメモリロケーションによって構成される。各メモリロケーションに対しては、同様に追加セグメントが割り振られる。追加セグメントは、ビジービットを含む。   Further, as shown in FIG. 2, the local storage 42 of the sub-processor 32 is configured by memory locations that can specify a plurality of addresses. An additional segment is similarly allocated for each memory location. The additional segment includes a busy bit.

サブプロセッサ32がメインメモリ12に記憶されているデータをサブプロセッサ32のローカルストレージ42のメモリロケーションに読み出すときには、対応するビジービットを“1”に設定して予約する。ビジービットが“1”であるメモリロケーションには、他のデータを格納することができない。ローカルストレージ42のメモリロケーションにデータが読み出されると、ビジービットは“0”に設定され、他のデータを格納することができるようになる。   When the sub processor 32 reads the data stored in the main memory 12 to the memory location of the local storage 42 of the sub processor 32, the corresponding busy bit is set to “1” to make a reservation. No other data can be stored in the memory location where the busy bit is “1”. When data is read to the memory location of the local storage 42, the busy bit is set to “0”, and other data can be stored.

さらに、図2で示すように情報処理コントローラ11に接続されているメインメモリ12には、複数のサンドボックスが含まれる。サンドボックスは、メインメモリ12内の領域を画定するものであり、各サンドボックスは、各サブプロセッサ32に割り当てられ、割り当てられたサブプロセッサ32が排他的に使用することができる。すなわち、サブプロセッサ32は、割り当てられたサンドボックスを使用できるが、この領域を超えてデータにアクセスすることはできない。   Furthermore, as shown in FIG. 2, the main memory 12 connected to the information processing controller 11 includes a plurality of sandboxes. The sandbox defines an area in the main memory 12, and each sandbox is assigned to each sub processor 32 and can be used exclusively by the assigned sub processor 32. That is, the sub-processor 32 can use the assigned sandbox, but cannot access data beyond this area.

メインメモリ12は、複数のメモリロケーションから構成されるが、サンドボックスは、これらのメモリロケーションの集合である。   The main memory 12 is composed of a plurality of memory locations, and the sandbox is a collection of these memory locations.

さらに、メインメモリ12の排他的な制御を実現するために、図2で示されるキー管理テーブルが用いられる。キー管理テーブルは、キー管理テーブル記憶部35に記録され、DMAC33と関連付けられる。キー管理テーブル内の各エントリには、サブプロセッサID、サブプロセッサキーおよびキーマスクが含まれる。   Furthermore, in order to realize exclusive control of the main memory 12, the key management table shown in FIG. 2 is used. The key management table is recorded in the key management table storage unit 35 and associated with the DMAC 33. Each entry in the key management table includes a sub processor ID, a sub processor key, and a key mask.

サブプロセッサ32がメインメモリ12にアクセスする場合、サブプロセッサ32はDMAC33に、読み出しまたは書き込みのコマンドを出力する。このコマンドには、サブプロセッサ32を特定するサブプロセッサIDおよびアクセス要求先であるメインメモリ12のアドレスが含まれる。   When the sub processor 32 accesses the main memory 12, the sub processor 32 outputs a read or write command to the DMAC 33. This command includes a sub-processor ID that identifies the sub-processor 32 and the address of the main memory 12 that is the access request destination.

DMAC33は、サブプロセッサ32から供給されたコマンドを実行する場合、キー管理テーブルを参照して、アクセス要求元のサブプロセッサ32のサブプロセッサキーを調べる。そして、DMAC33は、調べたアクセス要求元のサブプロセッサキーと、アクセス要求先であるメインメモリ12のメモリロケーションに割り振られたアクセスキーとを比較して、2つのキーが一致した場合にのみ、サブプロセッサ32から供給されたコマンドを実行する。   When executing the command supplied from the sub processor 32, the DMAC 33 refers to the key management table and checks the sub processor key of the sub processor 32 of the access request source. Then, the DMAC 33 compares the checked sub-processor key of the access request source with the access key allocated to the memory location of the main memory 12 that is the access request destination, and only when the two keys match, The command supplied from the processor 32 is executed.

図4は、キー管理テーブルを説明する図である。キー管理テーブルに記録されているキーマスクは、その任意のビットが“1”になることによって、そのキーマスクと関連付けられたサブプロセッサキーの対応するビットを“0”または“1”にすることができる。   FIG. 4 is a diagram illustrating the key management table. The key mask recorded in the key management table sets the corresponding bit of the sub processor key associated with the key mask to “0” or “1” by setting any bit to “1”. Can do.

例えば、サブプロセッサキーが“1010”であるとする。通常、このサブプロセッサキーによって“1010”のアクセスキーを持つサンドボックスへのアクセスだけが可能になる。しかし、このサブプロセッサキーと関連付けられたキーマスクが“0001”に設定されている場合には、キーマスクのビットが“1”に設定された桁のみにつき、サブプロセッサキーとアクセスキーとの一致判定がマスクされ(キーマスクのビットが“1”に設定された桁について、判定されず)、このサブプロセッサキー“1010”によってアクセスキーが“1010”または“1011”のいずれかであるアクセスキーを持つサンドボックスへのアクセスが可能となる。   For example, assume that the sub-processor key is “1010”. Normally, this sub-processor key only allows access to a sandbox with an access key of “1010”. However, if the key mask associated with this sub-processor key is set to “0001”, the sub-processor key matches the access key only for the digits whose key mask bit is set to “1”. Access key whose judgment key is masked (no judgment is made for the digit whose key mask bit is set to “1”) and whose access key is either “1010” or “1011” by this sub-processor key “1010” Access to a sandbox with is possible.

以上のようにして、メインメモリ12のサンドボックスの排他性が実現される。すなわち、複数のサブプロセッサ32によってデータを多段階に処理する必要がある場合、以上のように構成することによって、前段階の処理を行うサブプロセッサ32と、後段階の処理を行うサブプロセッサ32のみが、メインメモリ12の所定のアドレスにアクセスできるようになり、データを保護することができる。   As described above, the sandbox exclusivity of the main memory 12 is realized. That is, when it is necessary to process data in multiple stages by a plurality of sub-processors 32, only the sub-processor 32 that performs the pre-stage process and the sub-processor 32 that performs the post-stage process are configured as described above. However, it becomes possible to access a predetermined address of the main memory 12, and data can be protected.

例えば、キーマスクの値は、以下のように変更されることが考えられる。まず、情報処理装置1の起動直後においては、キーマスクの値は全て“0”である。メインプロセッサ31にロードされたプログラムが実行され、サブプロセッサ32にロードされたプログラムと連携動作するものとする。サブプロセッサ32−1により出力された処理結果データを、メインメモリ12に記憶させ、メインメモリ12に記憶させた処理結果データを、サブプロセッサ32−2に入力したいときには、サブプロセッサ32−1により出力された処理結果データを記憶しているメインメモリ12の領域は、サブプロセッサ32−1およびサブプロセッサ32−2からアクセス可能である必要がある。そのような場合に、メインプロセッサ31は、キーマスクの値を適切に変更し、複数のサブプロセッサ32からアクセスできるメインメモリの領域を設けることにより、サブプロセッサ32による多段階的の処理を可能にする。   For example, the value of the key mask can be changed as follows. First, immediately after the information processing apparatus 1 is activated, the values of the key masks are all “0”. It is assumed that the program loaded on the main processor 31 is executed and operates in cooperation with the program loaded on the sub processor 32. The processing result data output by the sub processor 32-1 is stored in the main memory 12, and the processing result data stored in the main memory 12 is output by the sub processor 32-1 when it is desired to input to the sub processor 32-2. The area of the main memory 12 that stores the processed result data needs to be accessible from the sub processor 32-1 and the sub processor 32-2. In such a case, the main processor 31 appropriately changes the value of the key mask and provides a main memory area that can be accessed from the plurality of sub processors 32, thereby enabling multi-stage processing by the sub processor 32. To do.

より具体的には、例えば、情報処理装置1−2または情報処理装置1−3から送信されてきた、データを基に、サブプロセッサ32−1が所定の処理実行し、処理が施されたデータをメインメモリ12の第1の領域に記憶させる。そして、サブプロセッサ32−2は、メインメモリ12の第1の領域から、記憶されているデータを読み出し、読み出したデータを基に、所定の処理を実行し、処理が施されたデータをメインメモリ12の第1の領域とは、異なる第2の領域に記憶させる。   More specifically, for example, data that has been subjected to predetermined processing by the sub-processor 32-1 based on data transmitted from the information processing device 1-2 or the information processing device 1-3, and processed. Are stored in the first area of the main memory 12. Then, the sub-processor 32-2 reads the stored data from the first area of the main memory 12, executes predetermined processing based on the read data, and stores the processed data in the main memory Twelve first areas are stored in a different second area.

ここで、サブプロセッサ32−1のサブプロセッサキーが“0100”であり、メインメモリ12の第1の領域のアクセスキーが“0100”であり、サブプロセッサ32−2のサブプロセッサキーが“0101”であり、メインメモリ12の第2の領域のアクセスキーが“0101”である場合、サブプロセッサ32−2は、メインメモリ12の第1の領域にアクセスすることができない。そこで、サブプロセッサ32−2のキーマスクを“0001”にすることによって、サブプロセッサ32−2は、メインメモリ12の第1の領域にアクセスすることができるようになる。   Here, the sub processor key of the sub processor 32-1 is “0100”, the access key of the first area of the main memory 12 is “0100”, and the sub processor key of the sub processor 32-2 is “0101”. When the access key of the second area of the main memory 12 is “0101”, the sub-processor 32-2 cannot access the first area of the main memory 12. Therefore, by setting the key mask of the sub processor 32-2 to “0001”, the sub processor 32-2 can access the first area of the main memory 12.

なお、図2乃至図4においては、サブプロセッサ32がメインメモリ12にアクセスする場合について説明したが、メインプロセッサ31は、上述したサブプロセッサIDおよびサブプロセッサキーに対応する、メインプロセッサIDおよびメインプロセッサキーを有しており、メインプロセッサ31が、例えば、ローカルストレージ41で処理を行うために、メインメモリ12にアクセスする場合も同様な処理が実行される。   2 to 4, the case where the sub processor 32 accesses the main memory 12 has been described. However, the main processor 31 corresponds to the above-described sub processor ID and sub processor key, and the main processor ID and the main processor. The same processing is executed when the main processor 31 has a key and the main processor 31 accesses the main memory 12 in order to perform processing in the local storage 41, for example.

図5は、メインメモリ12に記憶されるプログラムの構成を示している。これらのプログラムは、情報処理装置1に電源が投入される前、記録部13などに記憶されている。   FIG. 5 shows the configuration of the program stored in the main memory 12. These programs are stored in the recording unit 13 or the like before the information processing apparatus 1 is turned on.

各プログラムは、機能または特徴によって、制御プログラム101、機能プログラム102、およびデバイスドライバ103により分けて構成される。   Each program is divided into a control program 101, a function program 102, and a device driver 103 according to functions or features.

制御プログラム101は、メインプロセッサ31により実行されるものであり、情報処理装置1の主電源が投入されている間、常時動作する常駐プログラムである、例えば、OS(オペレーティングシステム)111、MS(マスター/スレーブ)マネージャ112、および能力交換プログラム113などにより構成される。   The control program 101 is executed by the main processor 31, and is a resident program that always operates while the main power supply of the information processing apparatus 1 is turned on, for example, OS (Operating System) 111, MS (Master). / Slave) manager 112, capability exchange program 113, and the like.

OS111は、情報処理装置1の基本的な動作を制御するプログラムである。MSマネージャ112は、ネットワーク2に電気的かつ機能的に接続される情報処理装置1−1乃至1−3の中からマスター装置とスレーブ装置を設定するプログラムである。能力交換プログラム113は、ネットワーク2に電気的かつ機能的に接続される情報処理装置1−1乃至1−3の装置情報を取得し、メインメモリ12に記憶される装置情報テーブルに登録するプログラムである。   The OS 111 is a program that controls basic operations of the information processing apparatus 1. The MS manager 112 is a program for setting a master device and a slave device among the information processing devices 1-1 to 1-3 electrically and functionally connected to the network 2. The capability exchange program 113 is a program that acquires device information of the information processing devices 1-1 to 1-3 that are electrically and functionally connected to the network 2 and registers them in a device information table stored in the main memory 12. is there.

なお、これらの制御プログラム101は、メインプロセッサ31で実行されることに限らず、いずれかのサブプロセッサ32で実行されてもよい。また、これらの制御プログラム101は、情報処理装置1の主電源が投入されている間、常時動作する常駐プログラムであるほうが望ましい。   These control programs 101 are not limited to being executed by the main processor 31, and may be executed by any one of the sub processors 32. These control programs 101 are preferably resident programs that always operate while the main power supply of the information processing apparatus 1 is turned on.

機能プログラム102は、メインプロセッサ31により、情報処理装置1内の必要な資源(リソース)が制御されて、実行されるものであり、例えば、記録プログラム121、再生プログラム122、および音声記録プログラム123などにより構成される。   The function program 102 is executed by controlling the necessary resources (resources) in the information processing apparatus 1 by the main processor 31, and includes, for example, a recording program 121, a reproduction program 122, and an audio recording program 123. Consists of.

記録プログラム121は、必要に応じたデバイスドライバ103を制御し、音声や映像データを入力させ、入力されるデータを符号化し、符号化したデータを記録部13に記録させるプログラムである。再生プログラム122は、必要に応じたデバイスドライバ103を制御し、記録部13に記録される映像や音声データを読み出させ、復号、伸張などを行い、出力部17を構成するディスプレイやスピーカに、対応する映像や音声を出力させるプログラムである。音声記録プログラム123は、音声データを入力させ、入力されるデータを符号化し、符号化したデータを記録部13に記録させるプログラムである。   The recording program 121 is a program that controls the device driver 103 as necessary, inputs audio and video data, encodes input data, and causes the recording unit 13 to record the encoded data. The reproduction program 122 controls the device driver 103 as necessary, reads out video and audio data recorded in the recording unit 13, performs decoding, decompression, and the like on a display and a speaker constituting the output unit 17. This program outputs the corresponding video and audio. The audio recording program 123 is a program that inputs audio data, encodes the input data, and causes the recording unit 13 to record the encoded data.

なお、機能プログラム102は、各情報処理装置1に応じたもので構成される。すなわち、例えば、情報処理装置1がハードディスクレコーダで構成される場合には、機能プログラムは、映像音声記録プログラム、映像音声再生プログラム、素材検索プログラム、番組予約プログラムなどで構成される。また、例えば、情報処理装置1がPDAで構成される場合には、機能プログラムは、映像音声記録プログラム、映像音声再生プログラム、電話帳プログラム、ワープロプログラム、表計算プログラム、およびWebブラウザプログラムなどで構成される。   The function program 102 is configured according to each information processing apparatus 1. That is, for example, when the information processing apparatus 1 is configured by a hard disk recorder, the function program is configured by a video / audio recording program, a video / audio reproduction program, a material search program, a program reservation program, and the like. For example, when the information processing apparatus 1 is configured by a PDA, the function program is configured by a video / audio recording program, a video / audio reproduction program, a telephone directory program, a word processing program, a spreadsheet program, a Web browser program, and the like. Is done.

デバイスドライバ103は、情報処理装置1の入出力(送受信)の制御を実行するプログラムであり、操作入力ドライバ131、音声入力ドライバ132、記録制御ドライバ133、および図示せぬネットワークドライバなどにより構成される。操作入力ドライバ131は、操作入力部15の入力に対応した処理を実行するプログラムである。音声入力ドライバ132は、入力部16を構成するマイクロフォンの音声入力を制御するプログラムである。記録制御ドライバ133は、DC34を制御し、記録部13への記録を制御するプログラムである。ネットワークドライバは、通信部18を制御し、ネットワーク2の入出力を実行するプログラムである。   The device driver 103 is a program for executing input / output (transmission / reception) control of the information processing apparatus 1, and includes an operation input driver 131, an audio input driver 132, a recording control driver 133, and a network driver (not shown). . The operation input driver 131 is a program that executes processing corresponding to the input from the operation input unit 15. The voice input driver 132 is a program that controls voice input of a microphone constituting the input unit 16. The recording control driver 133 is a program that controls the DC 34 and controls recording on the recording unit 13. The network driver is a program that controls the communication unit 18 and executes input / output of the network 2.

これらのプログラムは、情報処理装置1の電源投入後に、記録部13から読み出され、メインメモリ12にロードされる。すなわち、ケーブルの差込などによって情報処理装置1が物理的にネットワーク2に接続された状態で、情報処理装置1に主電源が投入され、情報処理装置1が電気的・機能的にもネットワーク2に接続されると、メインプロセッサ31は、制御プログラム101に属する各プログラム、および、デバイスドライバ103に属する各プログラムをメインメモリ12にロードする。   These programs are read from the recording unit 13 and loaded into the main memory 12 after the information processing apparatus 1 is powered on. That is, the main power supply is turned on to the information processing apparatus 1 in a state where the information processing apparatus 1 is physically connected to the network 2 by inserting a cable or the like, and the information processing apparatus 1 is electrically and functionally connected to the network 2. The main processor 31 loads each program belonging to the control program 101 and each program belonging to the device driver 103 into the main memory 12.

具体的には、メインプロセッサ31は、DC34に読み出し命令を実行させることによって、記録部13からプログラムを読み出し、DMAC33に書き込み命令を実行させることによって、そのプログラムをメインメモリ12に書き込む。   Specifically, the main processor 31 reads the program from the recording unit 13 by causing the DC 34 to execute a read command and writes the program to the main memory 12 by causing the DMAC 33 to execute a write command.

機能プログラム102に属する各プログラムは、必要なときに必要なプログラムだけがロードされるが、制御プログラム101やデバイスドライバ103に属する各プログラムと同様に、主電源投入直後に各プログラムをロードするように構成してもよい。なお、機能プログラム102に属する各プログラムは、記録部13に記録されていなくても、ネットワーク2を介して接続される他の情報処理装置の記録部13に記録されていれば、ソフトウェアセルに含めることにより、ソフトウェアセルを用いて、ロードすることも可能である。   Each program belonging to the function program 102 is loaded only when necessary, but as with the programs belonging to the control program 101 and device driver 103, each program is loaded immediately after the main power is turned on. It may be configured. Each program belonging to the function program 102 is included in the software cell as long as it is recorded in the recording unit 13 of another information processing apparatus connected via the network 2 even though it is not recorded in the recording unit 13. Thus, it is possible to load using a software cell.

また、機能プログラム102に属する各プログラムは、図6に示されるように、所定の処理をサブプロセッサ32に実行させるためのモジュール(例えば、spu_module)と、モジュールにより実行される所定の処理と同等の処理をメインプロセッサ31に実行させるためのライブラリ関数(例えば、pu-xxx())を有している。ライブラリ関数は、サブプロセッサ32においてモジュールにより実行された処理結果と同等の処理結果が得られるように、メインプロセッサ31用に生成されたプログラムである。すなわち、サブプロセッサ32においてモジュールにより実行された処理結果と、メインプロセッサ31においてライブラリ関数により実行された処理結果は、メインメモリ12内の同じアドレスに格納される。   Each program belonging to the function program 102 is equivalent to a module (for example, spu_module) for causing the sub-processor 32 to execute a predetermined process and a predetermined process executed by the module, as shown in FIG. A library function (for example, pu-xxx ()) for causing the main processor 31 to execute processing is provided. The library function is a program generated for the main processor 31 so that a processing result equivalent to the processing result executed by the module in the sub processor 32 can be obtained. That is, the processing result executed by the module in the sub processor 32 and the processing result executed by the library function in the main processor 31 are stored at the same address in the main memory 12.

図6は、音声データを記録する情報処理装置1が実行するプログラムを説明する図である。なお、図6の例の場合、情報処理装置1がスタンドアローンで動作する場合を説明する。したがって、この場合、MSマネージャ112、および能力交換プログラム113の説明は省略する。また、図6の例において、図5における場合と対応する部分には対応する符号を付してあり、その説明は繰り返しになるので省略する。   FIG. 6 is a diagram illustrating a program executed by the information processing apparatus 1 that records audio data. In the case of the example in FIG. 6, a case where the information processing apparatus 1 operates in a stand-alone manner will be described. Therefore, in this case, descriptions of the MS manager 112 and the capability exchange program 113 are omitted. Further, in the example of FIG. 6, the parts corresponding to those in the case of FIG.

メインプロセッサ31は、情報処理装置1に主電源が投入され、DC34に読み出し命令を実行させることによって、記録部13からOS111を読み出し、DMAC33に書き込み命令を実行させることによって、OS111をメインメモリ12に書き込み、OS111を実行する。また、このとき、メインプロセッサ31は、操作入力ドライバ131、音声入力ドライバ132、および記録制御ドライバ133もメインメモリ12にロードし、実行する。   The main processor 31 turns on the main power supply to the information processing apparatus 1, reads the OS 111 from the recording unit 13 by causing the DC 34 to execute a read command, and causes the DMAC 33 to execute the write command, thereby causing the OS 111 to enter the main memory 12. Write and execute the OS 111. At this time, the main processor 31 also loads the operation input driver 131, the audio input driver 132, and the recording control driver 133 into the main memory 12, and executes them.

例えば、ユーザが操作入力部15を操作するなどして、音声記録プログラム123の起動を要求する。操作入力部15は、バス14を介してメインプロセッサ31に要求信号を供給する。これに対応して、メインプロセッサ31は、記録部13からメインメモリ12に、音声記録プログラム123をロードし、OS111の制御の下で実行する。   For example, the user requests the activation of the voice recording program 123 by operating the operation input unit 15. The operation input unit 15 supplies a request signal to the main processor 31 via the bus 14. In response to this, the main processor 31 loads the audio recording program 123 from the recording unit 13 to the main memory 12 and executes it under the control of the OS 111.

そして、音声記録プログラム123が、例えば、入力部16を構成するマイクロフォンからの音声を記録部13に記録する要求を行うと、OS111は、その要求を処理するために必要な資源の獲得を行う。   Then, when the voice recording program 123 makes a request to record the voice from the microphone constituting the input unit 16 in the recording unit 13, for example, the OS 111 acquires resources necessary for processing the request.

すなわち、OS111は、音声記録プログラム123からの資源獲得の要求に応じて、音声符号化処理を実行することが可能なサブプロセッサ32の資源があるか否かを判定し、音声符号化処理を実行することが可能なサブプロセッサ32の資源がある場合には、そのサブプロセッサ32の資源を獲得し、ロックするとともに、その判定結果を音声記録プログラム123に供給する。また、OS111は、音声記録プログラム123による符号化処理が終了すると、獲得したサブプロセッサ32の資源を開放する。   That is, the OS 111 determines whether there is a resource of the sub processor 32 that can execute the audio encoding process in response to a resource acquisition request from the audio recording program 123, and executes the audio encoding process. If there is a resource of the sub processor 32 that can be used, the resource of the sub processor 32 is acquired and locked, and the determination result is supplied to the audio recording program 123. In addition, when the encoding process by the audio recording program 123 is completed, the OS 111 releases the acquired resources of the sub processor 32.

OS111は、音声符号化処理を実行することが可能なサブプロセッサ32の資源がないと判定した場合、その判定結果を音声記録プログラム123に供給する。なお、このとき、OS111は、例えば、サブプロセッサ32が他の処理を実行しているか否か、またはサブプロセッサ32に他の処理が予約されているか否かなどに基づいて、音声符号化処理を実行することが可能なサブプロセッサ32の資源があるか否かを判定する。   When the OS 111 determines that there is no resource of the sub processor 32 that can execute the audio encoding process, the OS 111 supplies the determination result to the audio recording program 123. At this time, the OS 111 performs speech encoding processing based on, for example, whether or not the sub-processor 32 is executing other processing, or whether or not other processing is reserved for the sub-processor 32. It is determined whether there are resources of the sub processor 32 that can be executed.

また、OS111は、音声記録プログラム123からの要求に応じて、操作入力ドライバ131、音声入力ドライバ132、および記録制御ドライバ133を制御し、音声記録プログラム123からの要求を処理させる。   Further, the OS 111 controls the operation input driver 131, the audio input driver 132, and the recording control driver 133 in response to a request from the audio recording program 123, and causes the request from the audio recording program 123 to be processed.

音声記録プログラム123は、音声データの符号化処理をサブプロセッサ32に実行させるための音声符号化モジュール151、音声データの符号化処理をメインプロセッサ31に実行させるための音声符号化ライブラリ関数152を有している。音声符号化ライブラリ関数152は、サブプロセッサ32において音声符号化モジュール151により実行される音声データの符号化処理の結果と同等の処理結果がメインプロセッサ31においても得られるように、音声符号化モジュール151に合わせて生成されたプログラムである。   The audio recording program 123 has an audio encoding module 151 for causing the sub processor 32 to execute audio data encoding processing, and an audio encoding library function 152 for causing the main processor 31 to execute audio data encoding processing. doing. The audio encoding library function 152 is configured so that the main processor 31 can obtain a processing result equivalent to the audio data encoding processing executed by the audio encoding module 151 in the sub processor 32. It is a program generated according to.

音声記録プログラム123は、OS111がサブプロセッサ32の資源を獲得した場合、音声符号化モジュール151をサブプロセッサ32のローカルストレージ42にロードし、音声符号化モジュール151を、キックコマンドおよびプログラムカウンタを用いて実行させる。キックコマンドは、プログラムの実行を開始するコマンドであり、プログラムカウンタは、プログラム実行用プログラムカウンタのためのアドレスを与えるものである。   When the OS 111 acquires the resources of the sub processor 32, the audio recording program 123 loads the audio encoding module 151 into the local storage 42 of the sub processor 32, and uses the kick command and the program counter to load the audio encoding module 151. Let it run. The kick command is a command for starting execution of the program, and the program counter gives an address for the program counter for program execution.

一方、音声記録プログラム123は、OS111がサブプロセッサ32の資源を獲得できなかった場合、音声符号化ライブラリ関数152をメインプロセッサ31のメインメモリ12にロードし、音声符号化ライブラリ関数152を実行する。なお、この場合、音声符号化ライブラリ関数152を、メインメモリ12ではなく、メインプロセッサ31のローカルストレージ41にロードし、実行させるようにしてもよい。   On the other hand, the audio recording program 123 loads the audio encoding library function 152 into the main memory 12 of the main processor 31 and executes the audio encoding library function 152 when the OS 111 cannot acquire the resources of the sub processor 32. In this case, the speech encoding library function 152 may be loaded into the local storage 41 of the main processor 31 and executed instead of the main memory 12.

音声記録プログラム123は、音声符号化モジュール151または音声符号化ライブラリ関数152から、実行完了の通知があると、記録制御ドライバ133を制御し、メインメモリ12の所定領域に格納された、符号化処理結果である符号化データを読み出させ、読み出させた符号化データを、記録部13に記録させる。   The audio recording program 123 controls the recording control driver 133 when notified of completion of execution from the audio encoding module 151 or the audio encoding library function 152, and stores the encoding process stored in a predetermined area of the main memory 12. The encoded data as a result is read out, and the read out encoded data is recorded in the recording unit 13.

サブプロセッサ32において、音声符号化モジュール151が実行された場合、音声符号化モジュール151は、音声データの符号化処理を実行し、実行結果を、DMAC33を介して、メインメモリ12の所定領域に格納し、その後、実行を完了したことを音声記録プログラム123に通知する。メインプロセッサ31において、音声符号化ライブラリ関数152が実行された場合、音声符号化ライブラリ関数152は、音声データの符号化処理を実行し、実行結果(符号化されたデータ)を、DMAC33を介して、メインメモリ12の所定領域に格納し、その後、実行を完了したことを音声記録プログラム123に通知する。   When the audio encoding module 151 is executed in the sub-processor 32, the audio encoding module 151 executes encoding processing of audio data, and stores the execution result in a predetermined area of the main memory 12 via the DMAC 33. Thereafter, the audio recording program 123 is notified that the execution has been completed. When the audio encoding library function 152 is executed in the main processor 31, the audio encoding library function 152 executes encoding processing of audio data, and the execution result (encoded data) is transmitted via the DMAC 33. Then, the data is stored in a predetermined area of the main memory 12, and then the audio recording program 123 is notified that the execution is completed.

操作入力ドライバ131は、操作入力部15の入力に対応した信号を、OS111に供給する。音声入力ドライバ132は、音声記録プログラム123からの要求に対応するOS111の制御の下、入力部16を構成するマイクロフォンの音声入力を制御し、入力された音声データをメインメモリ12の所定領域に記録する。記録制御ドライバ133は、音声記録プログラム123からの要求に対応するOS111の制御の下、符号化されたデータを、DC34を制御し、記録部13に記録させる。   The operation input driver 131 supplies a signal corresponding to the input from the operation input unit 15 to the OS 111. The voice input driver 132 controls the voice input of the microphone constituting the input unit 16 under the control of the OS 111 corresponding to the request from the voice recording program 123 and records the input voice data in a predetermined area of the main memory 12. To do. The recording control driver 133 controls the DC 34 to record the encoded data in the recording unit 13 under the control of the OS 111 corresponding to the request from the audio recording program 123.

図7は、プログラムに含まれるモジュールとライブラリ関数の他の例を示している。   FIG. 7 shows another example of modules and library functions included in the program.

図7の例の場合、記録プログラム121は、図6を参照して上述した音声記録プログラム123と同様の音声データの符号化処理をサブプロセッサ32に実行させるための音声符号化モジュール151、音声データの符号化処理をメインプロセッサ31に実行させるための音声符号化ライブラリ関数152、映像データの符号化処理をサブプロセッサ32に実行させるための映像符号化モジュール161−1乃至161−3、および、映像データの符号化処理をメインプロセッサ31に実行させるための映像符号化ライブラリ関数162−1乃至162−3などを有している。なお、図7の例においては図示していないが、実際には、他のモジュールやライブラリ関数なども有している。   In the case of the example in FIG. 7, the recording program 121 includes an audio encoding module 151 for causing the sub processor 32 to execute encoding processing of audio data similar to the audio recording program 123 described above with reference to FIG. An audio encoding library function 152 for causing the main processor 31 to execute the encoding process, video encoding modules 161-1 to 161-3 for causing the sub processor 32 to execute the encoding process of the video data, and video Video encoding library functions 162-1 to 162-3 for causing the main processor 31 to execute data encoding processing are included. Although not shown in the example of FIG. 7, actually, other modules and library functions are also included.

映像符号化ライブラリ関数162−1乃至162−3は、サブプロセッサ32において映像符号化モジュール161−1乃至161−3によりそれぞれ実行される映像データの符号化処理の結果と同等の処理結果がメインプロセッサ31においても得られるように、映像符号化モジュール161−1乃至161−3に合わせてそれぞれ生成されたプログラムである。   The video encoding library functions 162-1 to 162-3 have processing results equivalent to the results of the video data encoding processing executed by the video encoding modules 161-1 to 161-3 in the sub-processor 32, respectively. As shown in FIG. 31, the programs are generated in accordance with the video encoding modules 161-1 to 161-3.

ここで、サブプロセッサ32のローカルストレージ42は、メインプロセッサ31がモジュールを実行するメインメモリ12の容量よりかなり小さく構成されている。このため、メインプロセッサ31のモジュールは、サブプロセッサ32のローカルストレージ42の容量に合わせた実行単位で生成されるため、映像符号化処理のように、処理数の多い処理のモジュールの場合には、複数のモジュールに分けて構成される。   Here, the local storage 42 of the sub processor 32 is configured to be considerably smaller than the capacity of the main memory 12 on which the main processor 31 executes modules. For this reason, since the module of the main processor 31 is generated in an execution unit according to the capacity of the local storage 42 of the sub processor 32, in the case of a module with a large number of processes such as a video encoding process, Divided into multiple modules.

したがって、サブプロセッサ32の資源が獲得された場合、記録プログラム121は、映像符号化モジュール161−1をサブプロセッサ32のローカルストレージ42にロードし、映像符号化モジュール161−1を、キックコマンドおよびプログラムカウンタを用いて実行させる。サブプロセッサ32において、映像符号化モジュール161−1が実行された場合、映像符号化モジュール161−1は、映像データの符号化処理を実行し、実行結果を、DMAC33を介して、メインメモリ12の所定領域に格納し、その後、実行を完了したことを記録プログラム121に通知する。   Therefore, when the resource of the sub processor 32 is acquired, the recording program 121 loads the video encoding module 161-1 into the local storage 42 of the sub processor 32, and the video encoding module 161-1 is loaded with the kick command and the program. Run using a counter. When the video encoding module 161-1 is executed in the sub-processor 32, the video encoding module 161-1 executes video data encoding processing, and the execution result is stored in the main memory 12 via the DMAC 33. The data is stored in a predetermined area, and thereafter, the recording program 121 is notified that the execution has been completed.

これに対応して、記録プログラム121は、映像符号化モジュール161−2をサブプロセッサ32のローカルストレージ42にロードし、映像符号化モジュール161−2を、キックコマンドおよびプログラムカウンタを用いて実行させる。以降、説明は省略するが、映像符号化モジュール161−3についても、同様に実行される。   In response to this, the recording program 121 loads the video encoding module 161-2 into the local storage 42 of the sub-processor 32, and causes the video encoding module 161-2 to be executed using a kick command and a program counter. Hereinafter, although the description is omitted, the video encoding module 161-3 is similarly executed.

一方、サブプロセッサ32の資源が獲得されなかった場合、記録プログラム121は、映像符号化ライブラリ関数162−1をメインプロセッサ31のメインメモリ12にロードし、映像符号化ライブラリ関数162−1を実行する。メインプロセッサ31において、映像符号化ライブラリ関数162−1が実行された場合、映像符号化ライブラリ関数162−1は、映像データの符号化処理を実行し、実行結果を、DMAC33を介して、メインメモリ12の所定領域に格納し、その後、実行を完了したことを記録プログラム121に通知する。   On the other hand, when the resource of the sub-processor 32 is not acquired, the recording program 121 loads the video encoding library function 162-1 into the main memory 12 of the main processor 31, and executes the video encoding library function 162-1. . When the video encoding library function 162-1 is executed in the main processor 31, the video encoding library function 162-1 executes video data encoding processing, and the execution result is sent to the main memory via the DMAC 33. 12 is stored in a predetermined area, and then the recording program 121 is notified that the execution has been completed.

これに対応して、記録プログラム121は、映像符号化ライブラリ関数162−2をメインプロセッサ31のメインメモリ12にロードし、映像符号化ライブラリ関数162−2を実行する。以降、説明は省略するが、映像符号化ライブラリ関数162−3についても、同様に実行される。   In response to this, the recording program 121 loads the video encoding library function 162-2 into the main memory 12 of the main processor 31, and executes the video encoding library function 162-2. Hereinafter, although the description is omitted, the video encoding library function 162-3 is executed in the same manner.

以上のように、1つの処理が複数のモジュールまたはライブラリで構成される場合には、すべてのモジュールまたはライブラリが一通り終了するまでの処理が繰り返し続けられる。   As described above, when one process is composed of a plurality of modules or libraries, the processes until all the modules or libraries are completed are repeated.

なお、図7の例においては、映像符号化モジュールおよび映像符号化ライブラリ関数が3つにより構成される場合を説明したが、モジュールおよびライブラリ関数の個数は、3つに限定されず、実際には、さらに多くのモジュールおよびライブラリ関数により構成される。   In the example of FIG. 7, the case where the video encoding module and the video encoding library function are configured by three has been described. However, the number of modules and library functions is not limited to three, and actually It consists of more modules and library functions.

また、映像符号化モジュール161−1および映像符号化モジュール161−2が並列処理可能な場合には、サブプロセッサ23の資源が利用できれば、1つの映像符号化モジュール161の処理を待たなくても、2つ平行して実行されるようにしてもよい。   Further, when the video encoding module 161-1 and the video encoding module 161-2 can be processed in parallel, if the resources of the sub-processor 23 can be used, the processing of one video encoding module 161 can be waited for. Two may be executed in parallel.

次に、図8のフローチャートを参照して、情報処理装置1の音声データの記録処理を説明する。例えば、ユーザが操作入力部15を操作するなどして、音声記録プログラム123の起動を要求すると、メインプロセッサ31は、記録部13からメインメモリ12に、音声記録プログラム123をロードし、OS111の制御の下で実行する。   Next, the audio data recording process of the information processing apparatus 1 will be described with reference to the flowchart of FIG. For example, when the user requests the activation of the audio recording program 123 by operating the operation input unit 15 or the like, the main processor 31 loads the audio recording program 123 from the recording unit 13 to the main memory 12 and controls the OS 111. Run under.

音声記録プログラム123は、ステップS11において、音声入力ドライバ132を制御し、入力部16を構成するマイクロフォンから音声を入力させ、ステップS12に進む。すなわち、ステップS11において、音声入力ドライバ132は、音声記録プログラム123からの要求に対応するOS111の制御の下、入力部16を構成するマイクロフォンの音声入力を制御し、音声データを入力し、DMAC33を制御し、メインメモリ12の第1の所定領域に記録する。   In step S11, the audio recording program 123 controls the audio input driver 132 to input audio from the microphone constituting the input unit 16, and proceeds to step S12. That is, in step S11, the voice input driver 132 controls the voice input of the microphone constituting the input unit 16 under the control of the OS 111 corresponding to the request from the voice recording program 123, inputs voice data, and sets the DMAC 33. And record it in the first predetermined area of the main memory 12.

音声記録プログラム123は、ステップS12において、音声データの符号化処理を実行し、ステップS13に進む。この音声データの符号化処理は、図9のフローチャートを参照して詳しく後述するが、ステップS12の処理において、サブプロセッサ32またはメインプロセッサ31により音声データが符号化され、符号化されたデータがメインメモリ12の第2の所定領域に格納される。   In step S12, the audio recording program 123 executes audio data encoding processing, and proceeds to step S13. The audio data encoding process will be described later in detail with reference to the flowchart of FIG. 9, but in the process of step S12, the audio data is encoded by the sub processor 32 or the main processor 31, and the encoded data is the main data. It is stored in a second predetermined area of the memory 12.

音声記録プログラム123は、ステップS13において、記録制御ドライバ133を制御し、符号化されたデータを記録部13に記録させ、ステップS14に進む。すなわち、ステップS13において、記録制御ドライバ133は、DMAC33を制御し、第2の所定領域から符号化されたデータを読み出し、DC34を制御し、記録部13に記録させる。   In step S13, the audio recording program 123 controls the recording control driver 133 to record the encoded data in the recording unit 13, and proceeds to step S14. That is, in step S13, the recording control driver 133 controls the DMAC 33, reads the encoded data from the second predetermined area, controls the DC 34, and causes the recording unit 13 to record the data.

例えば、ユーザは、操作入力部15を操作して、音声データの記録終了を要求する。これに対応して、音声記録プログラム123は、ステップS14において、操作入力部15を介して、ユーザの記録終了要求を入力したか否かを判定し、操作入力部15を介して、ユーザの記録終了要求を入力したと判定した場合、音声データの記録処理を終了する。音声記録プログラム123は、ステップS14において、ユーザの記録終了要求をまだ入力していないと判定した場合、ステップS11に戻り、それ以降の処理を繰り返す。   For example, the user operates the operation input unit 15 to request the end of recording of the audio data. In response to this, the voice recording program 123 determines whether or not the user's recording end request is input via the operation input unit 15 in step S14, and the user's recording is performed via the operation input unit 15. If it is determined that an end request has been input, the audio data recording process ends. If the audio recording program 123 determines in step S14 that the user's recording end request has not yet been input, it returns to step S11 and repeats the subsequent processing.

次に、図9のフローチャートを参照して、図8のステップS12の音声データの符号化処理を詳しく説明する。   Next, the audio data encoding process in step S12 of FIG. 8 will be described in detail with reference to the flowchart of FIG.

音声記録プログラム123は、ステップS31において、入力部16を構成するマイクロフォンからの音声データを符号化するため、サブプロセッサの資源をOS111に要求し、ステップS32に進む。   In step S31, the audio recording program 123 requests the OS 111 for sub-processor resources in order to encode audio data from the microphone constituting the input unit 16, and proceeds to step S32.

OS111は、ステップS32において、音声記録プログラム123からの資源獲得の要求に応じて、音声符号化処理を実行することが可能なサブプロセッサ32の資源があるか否かを判定し、音声符号化処理を実行することが可能なサブプロセッサ32の資源がある場合には、そのサブプロセッサ32の資源を獲得し、ロックするとともに、その判定結果を音声記録プログラム123に供給し、ステップS33に進む。   In step S <b> 32, the OS 111 determines whether there is a resource of the sub-processor 32 capable of executing the speech encoding process in response to a resource acquisition request from the speech recording program 123, and the speech encoding process If there is a resource of the sub processor 32 that can execute the process, the resource of the sub processor 32 is acquired and locked, and the determination result is supplied to the audio recording program 123, and the process proceeds to step S33.

音声記録プログラム123は、OS111からの資源があるという判定結果に応じて、ステップS33において、OS111により資源が獲得されたサブプロセッサ32に音声符号化モジュール151をロードし、ステップS34に進む。すなわち、音声記録プログラム123は、DMAC33を制御し、メインメモリ12から音声符号化モジュール151を読み出させ、サブプロセッサ32のローカルストレージ42に、読み出させた音声符号化モジュール151を書き込ませる。   The audio recording program 123 loads the audio encoding module 151 into the sub-processor 32 from which the resource has been acquired by the OS 111 in step S33 according to the determination result that there is a resource from the OS 111, and proceeds to step S34. That is, the audio recording program 123 controls the DMAC 33 to read the audio encoding module 151 from the main memory 12 and write the read audio encoding module 151 in the local storage 42 of the sub processor 32.

音声記録プログラム123は、ステップS34において、サブプロセッサ32に、キックコマンドおよびプログラムカウンタを出力し、音声符号化モジュール151を実行させ、ステップS35に進む。   In step S34, the audio recording program 123 outputs a kick command and a program counter to the sub processor 32, causes the audio encoding module 151 to be executed, and proceeds to step S35.

これにより、サブプロセッサ32において音声符号化モジュール151が実行される。すなわち、音声符号化モジュール151は、DMAC33を制御し、メインメモリ12の第1の所定領域にある音声データを読み出させ、読み出された音声データに所定の符号化処理を実行する。そして、音声符号化モジュール151は、DMAC33を制御し、符号化されたデータを、メインメモリ12の第2の所定領域に格納させ、実行を完了したことを音声記録プログラム123に通知する。   Thereby, the speech encoding module 151 is executed in the sub processor 32. That is, the audio encoding module 151 controls the DMAC 33 to read out audio data in the first predetermined area of the main memory 12, and executes a predetermined encoding process on the read audio data. Then, the voice encoding module 151 controls the DMAC 33 to store the encoded data in the second predetermined area of the main memory 12 and notifies the voice recording program 123 that the execution has been completed.

ステップS35において、音声記録プログラム123は、メインプロセッサ31における自スレッドの実行優先度を退避し、実行優先順位を最高に設定し、ステップS36において、サブプロセッサ32からの実行完了通知があるまで待機している。すなわち、メインプロセッサ31において、音声記録プログラム123が実行優先順位を最高にして、待ち状態に入るため、メインプロセッサ31は、実行可能状態にあった別のスレッドに、実行権をプリエンプトし、実行状態にさせる。これにより、メインプロセッサ31においては、別のスレッドの実行が開始される。   In step S35, the audio recording program 123 saves the execution priority of its own thread in the main processor 31, sets the execution priority to the highest level, and waits for an execution completion notification from the sub processor 32 in step S36. ing. That is, in the main processor 31, since the audio recording program 123 has the highest execution priority and enters the waiting state, the main processor 31 preempts the execution right to another thread that has been in the executable state, Let me. Thereby, in the main processor 31, execution of another thread is started.

サブプロセッサ32からの実行完了が音声記録プログラム123に通知されると、音声記録プログラム123は、ステップS36において、サブプロセッサ32からの実行完了通知があったと判定し、実行可能状態になり、ステップS37に進む。すなわち、音声記録プログラム123は、実行優先順位が最高であるため、すぐに実行状態となり、ステップS36において、自スレッドの実行優先度を、ステップS35において退避しておいたものに戻し、ステップS38に進む。これにより、メインメモリ12の第2の所定領域に格納された符号化データの利用が可能になる。   When the audio recording program 123 is notified of the completion of execution from the sub-processor 32, the audio recording program 123 determines in step S36 that there has been an execution completion notification from the sub-processor 32, enters an executable state, and proceeds to step S37. Proceed to That is, since the audio recording program 123 has the highest execution priority, it immediately enters the execution state. In step S36, the execution priority of its own thread is returned to the one saved in step S35, and the process returns to step S38. move on. Thereby, the encoded data stored in the second predetermined area of the main memory 12 can be used.

音声記録プログラム123は、符号化処理が完了すると、OS111に、サブプロセッサ32の資源の開放を要求するので、ステップS38において、OS111は、サブプロセッサ32の資源を開放し、符号化処理を終了し、図8のステップS12に戻り、ステップS13に進む。   When the encoding process is completed, the audio recording program 123 requests the OS 111 to release the resources of the sub processor 32. Therefore, in step S38, the OS 111 releases the resources of the sub processor 32 and ends the encoding process. Returning to step S12 of FIG. 8, the process proceeds to step S13.

一方、例えば、すべてのサブプロセッサ32が他の処理を実行していたり、他の処理が予約されている場合、OS111は、ステップS32において、音声符号化処理を実行することが可能なサブプロセッサ32の資源がないと判定し、その判定結果を音声記録プログラム123に供給し、ステップS39に進む。   On the other hand, for example, when all the sub-processors 32 are executing other processes or other processes are reserved, the OS 111 can execute the speech encoding process in step S32. It is determined that there is no other resource, the determination result is supplied to the audio recording program 123, and the process proceeds to step S39.

音声記録プログラム123は、ステップS39において、メインメモリ12の音声符号化ライブラリ関数152をロードし、ステップS40において、ロードした音声符号化ライブラリ関数152を実行させる。すなわち、音声記録プログラム123は、DMAC33を制御し、メインメモリ12の音声符号化モジュール151を読み出させ、実行する。   The audio recording program 123 loads the audio encoding library function 152 of the main memory 12 in step S39, and executes the loaded audio encoding library function 152 in step S40. That is, the audio recording program 123 controls the DMAC 33 to read and execute the audio encoding module 151 of the main memory 12.

これにより、メインプロセッサ31において、音声符号化ライブラリ関数152が実行される。すなわち、音声符号化ライブラリ関数152は、DMAC33を制御し、メインメモリ12の第1の所定領域にある音声データを読み出させ、読み出された音声データに所定の符号化処理を実行する。そして、音声符号化ライブラリ関数152は、DMAC33を制御し、符号化されたデータを、メインメモリ12の第2の所定領域に格納させ、実行を完了したことを音声記録プログラム123に通知し、符号化処理を終了し、図8のステップS12に戻り、ステップS13に進む。   As a result, the speech encoding library function 152 is executed in the main processor 31. That is, the audio encoding library function 152 controls the DMAC 33 to read out audio data in the first predetermined area of the main memory 12 and execute a predetermined encoding process on the read audio data. Then, the audio encoding library function 152 controls the DMAC 33, stores the encoded data in the second predetermined area of the main memory 12, notifies the audio recording program 123 that the execution is completed, and encodes the code. The process is terminated, the process returns to step S12 in FIG. 8, and proceeds to step S13.

以上により、メインメモリ12の第2の所定領域に格納された符号化データの利用が可能になる。すなわち、ステップS40の処理の結果、ステップS34の音声符号化モジュール151と同様の結果が得られる。   As described above, the encoded data stored in the second predetermined area of the main memory 12 can be used. That is, as a result of the process in step S40, a result similar to that of the speech encoding module 151 in step S34 is obtained.

なお、図8の例においては、説明の便宜上、1の符号化処理が終了した場合にサブプロセッサ32の資源を開放するように説明したが、実際には、音声データの記録処理が終了するまで(すなわち、入力される音声データのすべての符号化処理が終了するまで)、サブプロセッサ32の資源は、ロックされ開放されない。   In the example of FIG. 8, for convenience of explanation, it has been described that the resource of the sub-processor 32 is released when one encoding process is completed, but actually, until the recording process of the audio data is completed. The resource of the sub processor 32 is locked and not released until all the encoding processing of the input voice data is completed.

以上のように、サブプロセッサ32が実行するモジュールだけでなく、モジュールの実行単位で、サブプロセッサ32と同じ結果が得られるライブラリ関数を生成しておき、サブプロセッサ32の資源が獲得できない場合に、そのライブラリ関数を、情報処理装置1の管理などを実行するメインプロセッサ31で実行させるようにしたので、サブプロセッサ32の資源が空いていなくても、ユーザの要求に応じて、優先させたい処理などをすぐに実行することができる。   As described above, not only the module executed by the sub-processor 32 but also a library function that produces the same result as the sub-processor 32 is generated in the module execution unit, and the resource of the sub-processor 32 cannot be acquired. Since the library function is executed by the main processor 31 that executes management of the information processing apparatus 1, even if the resources of the sub-processor 32 are not available, processing that should be prioritized in response to a user request, etc. Can be executed immediately.

したがって、メインプロセッサとサブプロセッサを臨機応変に用いることが可能になり、情報処理装置1全体のスループットの改善やパフォーマンスの向上を実現することができる。   Therefore, the main processor and sub-processor can be used in a flexible manner, and the throughput and performance of the information processing apparatus 1 as a whole can be improved.

なお、上記説明においては、音声データの記録処理を用いて説明したが、もちろん、これに限ったことではない。また、上記説明においては、情報処理装置がスタンドアローンで動作する場合の処理を説明したが、ソフトウェアセルにもサブプロセッサ32が実行するモジュールだけでなく、そのモジュールの実行単位で、サブプロセッサ32と同じ結果が得られるライブラリ関数を含むようにしておくことにより、ネットワークを介して、他の情報処理装置1にも、上述した処理を実行させることが可能であるし、逆に、他の情報処理装置1から送信されてきたソフトウェアセルに応じて、上述した処理を実行することも可能である。   In the above description, the audio data recording process has been described. However, the present invention is not limited to this. In the above description, the processing when the information processing apparatus operates stand-alone has been described. However, not only the module executed by the sub-processor 32 but also the sub-processor 32 in the execution unit of the module in the software cell. By including a library function that can obtain the same result, it is possible to cause the other information processing apparatus 1 to execute the above-described processing via the network. It is also possible to execute the above-described processing according to the software cell transmitted from.

以上により、情報処理装置1全体は、もちろんのこと、通信システム全体のスループットの改善やパフォーマンスの向上を実現することができる。   As described above, the entire information processing apparatus 1 as well as the entire communication system can be improved in throughput and performance.

また、上記説明においては、サブプロセッサ32の資源の有無により、メインプロセッサ31での実行を可能にする場合を説明したが、サブプロセッサ32の資源の有無に拘らず、メインプロセッサ31での実行を最優先するようにしてもよい。   Further, in the above description, the case where execution by the main processor 31 is enabled depending on the presence or absence of the resource of the sub processor 32 has been described. You may make it give top priority.

上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。   The series of processes described above can be executed by hardware, but can also be executed by software. When a series of processing is executed by software, a program constituting the software may execute various functions by installing a computer incorporated in dedicated hardware or various programs. For example, it is installed from a program storage medium in a general-purpose personal computer or the like.

コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム格納媒体は、図1に示されるように、磁気ディスク51(フレキシブルディスクを含む)、光ディスク52(CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む)、光磁気ディスク53(MD(Mini-Disc)(商標)を含む)、もしくは半導体メモリ54などのリムーバブル記録媒体、または、プログラムが一時的もしくは永続的に格納される記録部13−1または13−2などにより構成される。すなわち、このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。   As shown in FIG. 1, a program storage medium for storing a program installed in a computer and executable by the computer includes a magnetic disk 51 (including a flexible disk), an optical disk 52 (CD-ROM (Compact Disc -Read Only Memory), DVD (Digital Versatile Disc) included), magneto-optical disk 53 (including MD (Mini-Disc) (trademark)), or removable recording medium such as semiconductor memory 54, or program temporarily Alternatively, the recording unit 13-1 or 13-2 is stored permanently. That is, such a removable recording medium can be provided as so-called package software.

また、プログラムは、上述したようなリムーバブル記録媒体から情報処理装置1にインストールされる他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、情報処理装置1に無線で転送したり、 LAN(Local Area Network)、インターネットといったネットワークを介して、情報処理装置1に有線で転送し、情報処理装置1においては、そのようにして転送されてくるプログラムを、通信部18で受信し、内蔵する記録部13−1または13−2にインストールすることができる。   In addition to being installed in the information processing apparatus 1 from the removable recording medium as described above, the program is wirelessly transferred from the download site to the information processing apparatus 1 via a digital satellite broadcasting artificial satellite, (Local Area Network) is transferred to the information processing apparatus 1 via a network such as the Internet, and the information processing apparatus 1 receives and incorporates the program transferred in this way by the communication unit 18. It can be installed in the recording unit 13-1 or 13-2.

なお、本明細書において、フローチャートに示されるステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。   In the present specification, the steps shown in the flowcharts include not only processes performed in time series according to the described order, but also processes executed in parallel or individually even if not necessarily performed in time series. Is included.

なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。   In the present specification, the term “system” represents the entire apparatus constituted by a plurality of apparatuses.

本発明の通信システムの構成例を示すブロック図である。It is a block diagram which shows the structural example of the communication system of this invention. メインメモリを説明する図である。It is a figure explaining a main memory. サブプロセッサのローカルストレージを説明する図である。It is a figure explaining the local storage of a sub processor. キー管理テーブルを説明する図である。It is a figure explaining a key management table. 図1の情報処理装置のプログラムを示す図である。It is a figure which shows the program of the information processing apparatus of FIG. 音声データを記録する情報処理装置が実行するプログラムを示す図である。It is a figure which shows the program which the information processing apparatus which records audio | voice data performs. 図5の記録プログラムを示す図である。It is a figure which shows the recording program of FIG. 図1の情報処理装置の記録処理を説明するフローチャートである。3 is a flowchart for explaining a recording process of the information processing apparatus in FIG. 1. 図8のステップS12の符号化処理の例を説明するフローチャートである。It is a flowchart explaining the example of the encoding process of FIG.8 S12.

符号の説明Explanation of symbols

1−1乃至1−3 情報処理装置,2 ネットワーク,11 情報処理コントローラ,12 メインメモリ,13−1および13−2 記録部,15 操作入力部,16 入力部,18 通信部,31 メインプロセッサ,32−1乃至32−3 サブプロセッサ,33 DMAC,34 DC,35 キー管理テーブル記憶部,41,42−1乃至42−3 ローカルストレージ,101 制御プログラム,102 機能プログラム,103 デバイスドライバ,111 OS,123 音声記録プログラム,131 操作入力ドライバ,132 音声入力ドライバ,133 記録制御ドライバ,151 音声符号化モジュール,162 音声符号化ライブラリ関数   1-1 to 1-3 Information processing device, 2 network, 11 information processing controller, 12 main memory, 13-1 and 13-2 recording unit, 15 operation input unit, 16 input unit, 18 communication unit, 31 main processor, 32-1 to 32-3 Sub-processor, 33 DMAC, 34 DC, 35 Key management table storage unit, 41, 42-1 to 42-3 Local storage, 101 Control program, 102 Function program, 103 Device driver, 111 OS, 123 voice recording program, 131 operation input driver, 132 voice input driver, 133 recording control driver, 151 voice coding module, 162 voice coding library function

Claims (6)

データ処理を実行する情報処理装置において、
第1のプログラムに基づいて前記データ処理を実行する、少なくとも1の第1の処理手段と、
装置全体を管理する処理を実行する第2の処理手段と、
前記第1の処理手段において、前記第1のプログラムの実行に必要な計算資源が空いているか否かを判定する資源判定手段と、
前記資源判定手段により前記第1の処理手段において、前記第1のプログラムの実行に必要な計算資源が空いていないと判定された場合、前記第2の処理手段を、前記第1のプログラムと等価な結果が得られる第2のプログラムも実行するように制御する処理制御手段と
を備えることを特徴とする情報処理装置。
In an information processing apparatus that executes data processing,
At least one first processing means for executing the data processing based on a first program;
Second processing means for executing processing for managing the entire apparatus;
In the first processing means, resource determining means for determining whether or not calculation resources necessary for executing the first program are available;
If the first processing means determines that the calculation resources necessary for executing the first program are not available by the resource determination means, the second processing means is equivalent to the first program. An information processing apparatus comprising: a process control unit that performs control so as to execute a second program that obtains a correct result.
前記データ処理は、映像データまたは音声データの処理である
ことを特徴とする請求項1に記載の情報処理装置。
The information processing apparatus according to claim 1, wherein the data processing is processing of video data or audio data.
前記処理制御手段は、前記資源判定手段により前記第1の処理手段において、前記第1のプログラムの実行に必要な計算資源が空いていると判定された場合、前記第1のプログラムを実行するように、前記第1の処理手段を制御する
ことを特徴とする請求項1に記載の情報処理装置。
The processing control unit executes the first program when the resource determining unit determines that the first processing unit has free computing resources necessary for executing the first program. The information processing apparatus according to claim 1, further comprising: controlling the first processing unit.
データ処理を実行する情報処理装置の情報処理方法において、
第1のプログラムに基づいて前記データ処理を実行する、少なくとも1の第1の処理手段において、前記第1のプログラムの実行に必要な計算資源が空いているか否かを判定する資源判定ステップと、
前記資源判定ステップの処理により前記第1の処理手段において、前記第1のプログラムの実行に必要な計算資源が空いていないと判定された場合、装置全体を管理する処理を実行する第2の処理手段を、前記第1のプログラムと等価な結果が得られる第2のプログラムも実行するように制御する処理制御ステップと
を含むことを特徴とする情報処理方法。
In an information processing method of an information processing apparatus that executes data processing,
A resource determination step for determining whether or not a calculation resource necessary for executing the first program is available in at least one first processing unit that executes the data processing based on a first program;
A second process for executing a process for managing the entire apparatus when it is determined in the first process means that the calculation resource necessary for the execution of the first program is not free by the process of the resource determination step. An information processing method comprising: a process control step for controlling the means to execute a second program that obtains a result equivalent to the first program.
データ処理をコンピュータに行わせるプログラムが記録されている記録媒体であって、
第1のプログラムに基づいて前記データ処理を実行する、少なくとも1の第1の処理手段において、前記第1のプログラムの実行に必要な計算資源が空いているか否かを判定する資源判定ステップと、
前記資源判定ステップの処理により前記第1の処理手段において、前記第1のプログラムの実行に必要な計算資源が空いていないと判定された場合、装置全体を管理する処理を実行する第2の処理手段を、前記第1のプログラムと等価な結果が得られる第2のプログラムも実行するように制御する処理制御ステップと
を含むことを特徴とするプログラムが記録されている記録媒体。
A recording medium on which a program for causing a computer to perform data processing is recorded,
A resource determination step for determining whether or not a calculation resource necessary for executing the first program is available in at least one first processing unit that executes the data processing based on a first program;
A second process for executing a process for managing the entire apparatus when it is determined in the first process means that the calculation resource necessary for the execution of the first program is not free by the process of the resource determination step. And a processing control step for controlling the means to execute a second program that obtains a result equivalent to the first program. A recording medium on which the program is recorded.
データ処理をコンピュータに行わせるプログラムであって、
第1のプログラムに基づいて前記データ処理を実行する、少なくとも1の第1の処理手段において、前記第1のプログラムの実行に必要な計算資源が空いているか否かを判定する資源判定ステップと、
前記資源判定ステップの処理により前記第1の処理手段において、前記第1のプログラムの実行に必要な計算資源が空いていないと判定された場合、装置全体を管理する処理を実行する第2の処理手段を、前記第1のプログラムと等価な結果が得られる第2のプログラムも実行するように制御する処理制御ステップと
を含むことを特徴とするプログラム。
A program that causes a computer to perform data processing,
A resource determination step for determining whether or not a calculation resource necessary for executing the first program is available in at least one first processing unit that executes the data processing based on a first program;
A second process for executing a process for managing the entire apparatus when it is determined in the first process means that the calculation resource necessary for the execution of the first program is not free by the process of the resource determination step. And a processing control step for controlling the means so as to execute a second program that obtains a result equivalent to the first program.
JP2004147245A 2004-05-18 2004-05-18 Information processing apparatus and method, recording medium, and program Withdrawn JP2005332009A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004147245A JP2005332009A (en) 2004-05-18 2004-05-18 Information processing apparatus and method, recording medium, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004147245A JP2005332009A (en) 2004-05-18 2004-05-18 Information processing apparatus and method, recording medium, and program

Publications (1)

Publication Number Publication Date
JP2005332009A true JP2005332009A (en) 2005-12-02

Family

ID=35486655

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004147245A Withdrawn JP2005332009A (en) 2004-05-18 2004-05-18 Information processing apparatus and method, recording medium, and program

Country Status (1)

Country Link
JP (1) JP2005332009A (en)

Similar Documents

Publication Publication Date Title
US8103771B2 (en) Distributing processing apparatus, method, and system
RU2616545C2 (en) Working set swap, using sequentially ordered swap file
US20050193085A1 (en) Information processing system, information processing method, and computer program
JP2007257566A (en) Hash value producing program, storage management program and storage system
JP2006164216A (en) Structure of shared partition for operation system and method therefor
JP5426576B2 (en) Data input / output method and apparatus using virtualization technology
KR101119870B1 (en) Information processing system and method
JP2006031481A (en) Information processing system, information processing method, and computer program
US7970137B2 (en) Content reproduction apparatus, content recording apparatus, network system, and content recording/reproduction method
KR20070037697A (en) Data transfer method, data transfer source apparatus, data transfer destination apparatus, storage medium for recording data transfer program and storage medium for recording transferred-data recording program
US8413149B2 (en) Priority based processor reservations
JP2005332009A (en) Information processing apparatus and method, recording medium, and program
JP2000341635A (en) Recording method for hierarchical buffer memory and hierarchical buffer memory structure and data reproduction method and device therefor and video data edition system and computer readable recording medium and system on chip type integrated device
JP4295638B2 (en) Media processing device
JP4349189B2 (en) Network system, program recording reservation method, and information processing apparatus
US20110197202A1 (en) Handling Messages in a Computing Device
KR20100050098A (en) Image processing apparatus and control method thereof
JP2005352909A (en) Information processing device, method therefor, recording medium thereof, and reservation processing program
WO2004017200A1 (en) Information processing method and program and recording medium for implementing the method
JP2004102701A (en) Information processor, information processing method, program, and storage medium
JP2005339401A (en) Information processor and control method thereof, information processing controller, information processing unit and control method thereof, and computer program
JP2005235246A (en) Server apparatus
JP2005251163A (en) Information processing device, information processing method, information processing system and information processing program
JP2005301607A (en) Information processor, information processing system, and information processing method
JP4337642B2 (en) Information processing system, information processing apparatus and method, recording medium, and program

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20070807