(57)【特許請求の範囲】
【請求項１】
複数のアプリケーションプログラムによるリソースの使用の管理を行うリソース管理システムであって、
リソースの使用の許容限界を示す限界情報と、アプリケーションプログラムに対して与えたリソースの使用権の分量を示す使用権情報とを記憶するリソース管理用情報データベースと、
アプリケーションプログラムが必要とする最小限度のリソースの数量を示す最小要求量情報を含むリソースの使用要求を受け付けるリソース要求受付手段と、
前記リソース要求受付手段を介して前記リソースの使用要求を受け付け、前記限界情報と前記使用権情報と前記最小要求量情報とに基づいて、前記最小要求量情報の示す数量以上の第１量の使用を許容できるか否かを判断し、使用を許容できる場合には、当該リソースの使用権を当該アプリケーションプログラムに与えるとともに、前記リソース管理用情報データベース中の使用権情報を、前記使用要求に対して前記第１量の使用権が付与されていることを示すよう更新するリソース使用管理手段とを備え、
前記使用要求は、リソース取得の必要な程度を示す取得優先度情報と、取得後にリソースを使用継続することの必要な程度を示す使用継続優先度情報とを含んでおり、
前記リソース要求受付手段は、取得優先度情報と使用継続優先度情報とを含むリソースの使用要求を受け付け、
前記リソース使用管理手段は、前記リソース要求受付手段によりアプリケーションプログラムからのリソースの使用要求が受け付けられたときには、受け付けられた当該使用要求に含まれる取得優先度情報と、当該リソースについて既になされている他のアプリケーションプログラムによる使用要求に対応する前記リソース管理用情報データベース内の使用継続優先度情報とを比較し、当該リソースの使用を許容できるか否かを判断し、使用を許容できる場合には、当該リソースの使用権を当該アプリケーションプログラムに与えるとともに、受け付けられた当該使用要求に含まれる使用継続優先度情報を、前記リソース管理用情報データベースに格納する
ことを特徴とするリソース管理システム。
【請求項２】
前記使用要求は、アプリケーションプログラムが必要とする最大限度のリソースの数量を示す最大要求量情報を含んでおり、
前記リソース要求受付手段は、前記最大要求量情報を含むリソースの使用要求を受け付け、
前記リソース使用管理手段は、前記第１量を、前記最小要求量情報の示す数値以上で、前記最大要求量情報の示す数値以下の値とする
ことを特徴とする請求項１記載のリソース管理システム。
【請求項３】
前記使用要求は、リソースの使用を望む時間を示す有効期限情報を含んでおり、
前記リソース要求受付手段は、前記有効期限情報を含むリソースの使用要求を受け付け、
前記リソース使用管理手段は、当該リソースの使用を許容できる場合には、前記有効期限情報に基づき有効期限を定めて当該リソースの当該有効期限付きの使用権を当該アプリケーションプログラムに与える
ことを特徴とする請求項１記載のリソース管理システム。
【請求項４】
前記リソース使用管理手段は、時間経過を計測する計時部を有し、当該計時部を用いて、アプリケーションプログラムに使用権を付与した時からの前記有効期限の経過を計測し、当該有効期限の経過時に前記アプリケーションプログラムに対してリソース解放を要求する
ことを特徴とする請求項３記載のリソース管理システム。
【請求項５】
前記使用要求は、リソースの使用を望む時間を示す有効期限情報を含んでおり、
前記リソース要求受付手段は、前記有効期限情報を含むリソースの使用要求を受け付け、
前記リソース使用管理手段は、当該リソースの使用を許容できる場合には、前記有効期限情報に基づき有効期限を定めて当該リソースの当該有効期限付きの使用権を当該アプリケーションプログラムに与え、さらに、第２のアプリケーションプログラムからリソースについての第２の使用要求を受けた場合に、当該使用要求に含まれる取得優先度情報と、当該リソースについて既になされている第１のアプリケーションプログラムによる第１の使用要求に対応する前記リソース管理用情報データベース内の使用継続優先度情報とを比較して、前記第１の使用要求についてのリソースを必要とする程度の方が低いときには、前記第１のアプリケーションプログラムに対して付与している使用権の分量を低減させるとともに当該使用権についての有効期限を延長し、前記第２のアプリケーションプログラムに対して使用権を付与する
ことを特徴とする請求項３記載のリソース管理システム。
【請求項６】
前記リソース使用管理手段は、前記第２のアプリケーションプログラムから前記第２の使用要求を受けて、前記第１のアプリケーションプログラムに対して付与していた使用権の分量を低減させて第２のアプリケーションプログラムに対して使用権を付与した場合には、後に前記第２のアプリケーションプログラムによるリソースの使用が終了したときに、前記第１のアプリケーションプログラムに対して付与している使用権の分量を増大させる
ことを特徴とする請求項５記載のリソース管理システム。
【請求項７】
前記リソース使用管理手段は、前記第１のアプリケーションプログラムに対して付与している使用権の分量を低減させる際に、前記第１の使用要求に対応する前記リソース管理用情報データベース内の前記最小要求量情報の示す数値を限度として用いる
ことを特徴とする請求項５記載のリソース管理システム。
【請求項８】
前記リソース使用管理手段は、アプリケーションプログラムからリソースの使用要求を受けた場合に、当該リソースについて既に他のアプリケーションプログラムに使用権を付与しているために当該使用要求に対してリソースの使用を許容できないと判断した場合には、前記他のアプリケーションプログラムに付与している使用権に付された有効期限に基づいて有効期限が切れるまでの時間を示す情報を当該使用要求を行ったアプリケーションプログラムに通知する
ことを特徴とする請求項３記載のリソース管理システム。
【請求項９】
前記リソースはデータ転送経路として用いられるものであり、
前記リソース使用管理手段によるアプリケーションプログラムに対しての使用権の付与は、前記リソース管理用情報データベース内の前記使用権情報中の、当該アプリケーションプログラムによる使用要求に対して割り当てた使用権の分量を示す現在使用量情報を、特定するためのＩＤを通知することにより行われ、
前記アプリケーションプログラムは、通知された前記ＩＤをサーバプログラムに通知することにより、当該サーバプログラムを介してリソースを使用してのデータ転送を行うクライアントプログラムであり、
前記サーバプログラムは、前記アプリケーションプログラムから通知されたＩＤを用いて、前記リソース管理用情報データベース内に格納されている現在使用量情報を特定し、当該現在使用量情報を参照してこれに従った分量を使用してデータ転送を行う
ことを特徴とする請求項１記載のリソース管理システム。
【請求項１０】
前記リソースは、データ転送用のローカルバスであり、
前記リソースの使用の許容限界及び使用権の分量は、データ転送帯域幅で表され、
前記サーバプログラムは、前記現在使用量情報の示すデータ転送帯域幅でデータ転送を行う
ことを特徴とする請求項９記載のリソース管理システム。
【請求項１１】
前記リソース要求受付手段は、リソースの使用開始時期と使用終了時期とを特定する使用期間情報を含むリソースの使用予約を受け付け、
前記リソース管理用情報データベースは、アプリケーションプログラムに対して予約に応じて与えたリソースの使用権の分量を示す使用権情報及び当該予約に係る使用期間情報とを記憶し、
前記リソース使用管理手段は、前記リソース要求受付手段を介してリソースの予約を受け付け、前記限界情報、前記使用権情報及び前記使用期間情報に基づいて、当該予約についての使用開始時期から使用終了時期までの間において予約されたリソースの使用を許容できるか否かを判断し、使用を許容できる場合には、当該使用開始時期になり次第、当該使用終了時期までの有効期限が付された使用権を予約元のアプリケーションプログラムに与えるとともに、前記使用権情報及び前記使用期間情報を、前記リソース管理用情報データベースに格納する
ことを特徴とする請求項１記載のリソース管理システム。
【請求項１２】
複数のアプリケーションプログラムによるデータ転送用のリソースの使用管理を行うリソース管理処理をコンピュータに実行させるための制御プログラムを記録した記録媒体であって、
前記リソース管理処理は、
アプリケーションプログラムが必要とする最小限度のリソースの数量を示す最小要求量情報を含むリソースの使用要求を受け付けるリソース要求受付ステップと、
前記リソース要求受付ステップによりリソースの使用要求が受け付けられると、リソースの使用の許容限界を示す限界情報と、アプリケーションプログラムに対して与えたリソースの使用権の分量を示す使用権情報とを記憶するリソース管理用情報データベースを参照し、前記限界情報と前記使用権情報と前記最小要求量情報とに基づいて、前記最小要求量情報の示す数量以上の第１量のリソースの使用を許容できるか否かを判断する使用許否判断ステップと、
前記使用許否判断ステップによりリソースの使用を許容できると判断された場合に、当該リソースの使用権を当該アプリケーションプログラムに与えるとともに、前記リソース管理用情報データベース中の使用権情報を、前記使用要求に対して第１量の使用権が付与されていることを示すように更新するリソース使用管理ステップとを含み、
前記使用要求は、リソース取得の必要な程度を示す取得優先度情報と、取得後にリソースを使用継続することの必要な程度を示す使用継続優先度情報とを含んでおり、
前記リソース要求受付ステップは、取得優先度情報と使用継続優先度情報とを含むリソースの使用要求を受け付け、
前記リソース使用管理ステップは、前記リソース要求受付ステップによりアプリケーションプログラムからのリソースの使用要求が受け付けられたときには、受け付けられた当該使用要求に含まれる取得優先度情報と、当該リソースについて既になされている他のアプリケーションプログラムによる使用要求に対応する前記リソース管理用情報データベース内の使用継続優先度情報とを比較し、当該リソースの使用を許容できるか否かを判断し、使用を許容できる場合には、当該リソースの使用権を当該アプリケーションプログラムに与えるとともに、受け付けられた当該使用要求に含まれる使用継続優先度情報を、前記リソース管理用情報データベースに格納する
ことを特徴とする記録媒体。
【請求項１３】
リソースの使用の許容限界を示す限界情報と、アプリケーションプログラムに対して与えたリソースの使用権の分量を示す使用権情報とを記憶するリソース管理用情報データベースを用いて、複数のアプリケーションプログラムによるリソースの使用の管理を行うためのリソース管理方法であって、
アプリケーションプログラムが必要とする最小限度のリソースの数量を示す最小要求量情報を含むリソースの使用要求を受け付けるリソース要求受付ステップと、
前記リソース要求受付ステップによりアプリケーションプログラムからの前記リソースの使用要求が受け付けられた場合に、前記限界情報と前記使用権情報と前記最小要求量情報とに基づいて、前記最小要求量情報の示す数量以上の第１量の使用を許容できるか否かを判断し、使用を許容できる場合には、当該リソースの使用権を当該アプリケーションプログラムに与えるとともに、前記リソース管理用情報データベース中の使用権情報を、前記使用要求に対して前記第１量の使用権が付与されていることを示すよう更新するリソース使用管理ステップとを含み、
前記使用要求は、リソース取得の必要な程度を示す取得優先度情報と、取得後にリソースを使用継続することの必要な程度を示す使用継続優先度情報とを含んでおり、
前記リソース要求受付ステップは、取得優先度情報と使用継続優先度情報とを含むリソースの使用要求を受け付け、
前記リソース使用管理ステップは、前記リソース要求受付ステップによりアプリケーションプログラムからのリソースの使用要求が受け付けられたときには、受け付けられた当該使用要求に含まれる取得優先度情報と、当該リソースについて既になされている他のアプリケーションプログラムによる使用要求に対応する前記リソース管理用情報データベース内の使用継続優先度情報とを比較し、当該リソースの使用を許容できるか否かを判断し、使用を許容できる場合には、当該リソースの使用権を当該アプリケーションプログラムに与えるとともに、受け付けられた当該使用要求に含まれる使用継続優先度情報を、前記リソース管理用情報データベースに格納する
ことを特徴とするリソース管理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータで処理を実行する際にアプリケーションプログラムにより用いられるハードウェア資源又はソフトウェア資源（以下、リソースという）を管理する技術に関する。
【０００２】
【従来の技術】
コンピュータ上で実行される各種アプリケーションプログラムは、ハードディスク装置、バス、メモリ等のリソースを用いて、データ入出力、データ転送等を行う。
かかるリソースは、使用の許容限界を有する。例えば、ハードディスク装置、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス等には、そのバス等を通じてなされるデータ転送の速度に関する限界、即ち、データ転送帯域幅の限界がある。一方、一定のタイミングでデータ転送がなされるべき同期系処理を内容とするアプリケーションプログラムが正常に動作するためには、所定のリソースについて所定量のデータ転送帯域を確保することが必要となる。
【０００３】
このため、複数のアプリケーションプログラムを同時に実行するシステムにおいて、各アプリケーションプログラムが他のアプリケーションプログラムを無視して無制限にリソースを使用するならば、同期系処理を内容とするアプリケーションプログラムが正常に動作を行うことができないという事態が生じ得る。
この事態を回避するために、マルチタスクＯＳ配下で複数のアプリケーションプログラムを実行するシステムにおいては、同一のリソースを使用した同期系処理を行うタスクが２つ並行しては実行されないように、各アプリケーションプログラムが排他的に実行されるようにプログラミングされること等が従来行われていた。
【０００４】
例えば、ＣＰＵ、メモリ、ハードディスク装置、バス、モニタ及びＶＴＲ等から構成され、映像編集を行うための従来のノンリニア編集システムにおいては、ユーザ指示受付用の制御プログラム等により、ＶＴＲ等を入力装置として用いて入力される映像を一定の転送速度でハードディスクに書き込む録画処理と、既にハードディスクに書き込まれた映像を一定速度で再生しつつ編集するための編集処理とを、ユーザが同時に実行させることができないように制御されていた。このような制御は、録画処理又は編集処理に必要なデータ転送帯域幅の確実な確保を保証することを目的としてなされるが、リソースの限界としてのデータ転送帯域幅が十分広い場合には、リソースの有効活用ができない欠点をもつ。
【０００５】
複数のアプリケーションプログラムを実行するシステムにおいてリソースの有効活用を図るためには、リソースの使用に関して各アプリケーションプログラムが協調的に動作するように、それぞれのアプリケーションプログラムが特別にプログラミングされていることが必要となる。このことは同期系処理を行うタスクと同時に他の非同期系処理を行うタスクを実行する場合においても同様であり、その非同期系処理についてのアプリケーションプログラムは、同期系処理の実行を妨げないように、使用するデータ転送帯域幅を小さくするようにプログラミングされる必要がある。
【０００６】
【発明が解決しようとする課題】
しかしながら、複数のアプリケーションプログラムを実行するシステムにおける各アプリケーションプログラムを、協調動作するように特別にプログラミングすることは、リソースの限界値に左右されること、同時にどのアプリケーションプログラムとどのアプリケーションプログラムが実行されるかが予め定まっていない場合もあること等により困難である上、リソースの変更、追加、アプリケーションプログラムの追加といった、リソース環境及びシステムのプログラム編成の変動の影響を考えると望ましくない。
【０００７】
そこで、本発明は上述の問題点に鑑みてなされたものであり、個々のアプリケーションプログラムがリソース限界値や他のアプリケーションプログラムによるリソースの使用の必要性に依存した処理内容を含まなくても、各アプリケーションプログラムが円滑に実行でき、リソースの有効活用が図れるように、マルチタスクＯＳ配下で実行される各種処理に必要となる各種リソースを、各処理に対して動的に配分するためのリソース管理システムを提供することを目的とする。
【０００８】
【課題を解決するための手段】
上記目的を達成するために、本発明に係るリソース管理システムは、複数のアプリケーションプログラムによるリソースの使用の管理を行うリソース管理システムであって、ここで、前記アプリケーションプログラムは、あるリソースについて、ある有効期限内に、ある分量の使用を許可する旨の情報である使用権を得た場合に、当該有効期限内において当該分量の当該リソースを使用するものであり、リソースの使用の許容限界を示す限界情報と、アプリケーションプログラムに対して与えたリソースの使用権の分量を示す使用権情報とを記憶するリソース管理用情報データベースと、リソースの使用を望む時間を示す有効期限情報を伴ってアプリケーションプログラムからなされるリソースの使用を望む旨の使用要求を受け付けるリソース要求受付手段と、前記リソース要求受付手段を介して前記リソースの使用要求を受け付け、前記限界情報と前記使用権情報とに基づいて当該リソースの使用を許容できるか否かを判断し、使用を許容できる場合には、前記有効期限情報に基づき有効期限を定めて当該リソースの当該有効期限付きの使用権を当該アプリケーションプログラムに与えるとともに、与えた使用権に係る分量に応じて前記使用権情報を更新するリソース使用管理手段とを備えることを特徴とする。
【０００９】
上記構成により、リソース使用管理手段がリソース管理用情報データベースを用いてリソースの総量と使用量、即ち使用権を割り当てた分量とを一元管理するので、リソースを使用する複数のアプリケーションプログラムそれぞれは、リソース限界値や他のアプリケーションプログラムによるリソース使用の必要性に依存した処理内容を含まなくても、リソース使用管理手段に対してリソースの使用要求を行うことにより、そのリソースが現在使用可能である場合にリソースの使用権を得ることができるため、その使用権を得たリソースを用いてデータ転送等の処理を適切に実行することができるようになる。また、このリソース管理システムに対して、リソースの追加変更等によりリソースの数量の限界値が変化した場合にもそれに合わせてリソース管理用情報データベースの内容を変更しておけば、リソースの有効活用が図れるようになる。特に、アプリケーションプログラムが要求するリソースの使用を望む時間により、リソースの使用権についての有効期限が設定されるので、有効期限を超えた時点でリソースが解放されることとなりその後は他のアプリケーションプログラムがそのリソースを利用し得るようになる。つまり、アプリケーションプログラムが自己の処理上の必要性からリソースを要求する時間を決定してリソースの使用要求を行いさえすれば、その他のアプリケーションプログラムにとってリソースがいつまでたっても使用できないような事態を回避することができる。
【００１０】
【発明の実施の形態】
《実施の形態１》
以下、本発明に係るリソース管理システムの実施の形態１について、図１〜図１２を用いて説明する。
＜構成＞
図１は、本発明の実施の形態１に係るノンリニア編集システム１０００のハードウェア構成を示す図である。
【００１１】
ノンリニア編集システム１０００は、ＣＰＵ１０１０と、メモリ１０２０と、キーボード及びマウス等のユーザ入力受付装置１０３０と、ＰＣＩバス１０４０と、エフェクトボード１０５０と、ＶＴＲやディジタルビデオ録画再生装置であるＤＶＣ−ＰＲＯ等の映像入出力装置１０５１と、モニタ１０５２と、ディスプレイ１０５３と、ＳＣＳＩボード１０６０と、ハードディスク装置１０６１と、ネットワークカード１０７０とから構成される。
【００１２】
このノンリニア編集システム１０００は、ユーザの指示に応じて、映像入出力装置１０５１から入力された様々な映像をハードディスク装置１０６１に蓄積し、蓄積された各映像を任意に編集するためのシステムである。
ここで、ＣＰＵ１０１０、メモリ１０２０、ユーザ入力受付装置１０３０、エフェクトボード１０５０、ＳＣＳＩボード１０６０及びネットワークカード１０７０はパーソナルコンピュータ（以下、パソコンという。）の内部に備えられ、ＰＣＩバス１０４０により接続されている。ＰＣＩバス、ハードディスク装置、メモリ等のデータ転送に用いられるリソースは、データ転送帯域に関する限界をもつ。なお、ＰＣＩバス１０４０は、最大クロック周波数が３３ＭＨｚの同期型バスであり、性能限界となる最大データ転送速度は１３３メガバイト／秒（ＭＢｙｔｅｓ／ｓｅｃｏｎｄ、以下、ＭＢ／ｓという。）である。
【００１３】
エフェクトボード１０５０は、パソコンと映像入出力装置１０５１との間で、ＮＴＳＣ／ＰＡＬ信号を符号化又は復号化して送受信し、或いは映像ディジタル信号等をＳＤＩ（Ｓｅｒｉａｌ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ）等を介して送受信する機能を持つインタフェースボードである。
また、ＳＣＳＩボード１０６０は、パソコンと、ハードディスク装置１０６１等の高速のデータ転送が要求される周辺機器とを接続するためのインタフェースボードであり、ネットワークカード１０７０は、パソコンと、外部ネットワークとを接続するためのインタフェースとなるカードである。
【００１４】
図２は、ノンリニア編集システム１０００のソフトウェア構成を示す図である。
同図に示すように、ノンリニア編集システム１０００はソフトウェア面において、リソースマネージャ２０１０と、リソース管理データベース（ＤＢ）２０２０と、複数のクライアント２１００ａ〜２１００ｍと、サーバ２２００ａ〜２２００ｎとから構成される。なお、同図には、サーバ２２００ａ〜２２００ｎ各々によって使用されるリソースであるリソース２３００ａ〜２３００ｎをも示している。また、リソース２３００ａ〜２３００ｎそれぞれは、上述したＰＣＩバス１０４０、ハードディスク装置１０６１等のそれぞれに相当する。
【００１５】
ここで、リソース管理ＤＢ２０２０は、ハードディスク内のファイル又はメモリ１０２０の一領域に格納されたリソース管理のためのデータの集合である。
リソースマネージャ２０１０は、リソース管理ＤＢ２０２０を参照及び更新することにより、リソースの数量及び各クライアントによるリソースの使用状況を把握し、リソースの管理に関する各種制御動作を行うものである。このリソースの管理に関する各種制御動作には、各クライアントからのリソース使用要求を受けてリソース管理ＤＢ２０２０中にキー情報を作成し、クライアントにキー情報のＩＤであるキーＩＤを通知することや、キー情報の有効期限が切れた場合にクライアントに対してリソースを解放すべき旨の指示を通知すること等がある。なお、キー情報等のリソース管理ＤＢ２０２０の内容については後述する。
【００１６】
クライアント２１００ａ〜２１００ｍは、リソースマネージャ２０１０にリソース使用要求を通知することにより、リソースマネージャ２０１０からキーＩＤの通知を受けて、これをサーバに通知して依頼を行うことにより、サーバを介して、リソースを使用してのデータの転送、入出力等を行うものであり、例えば、映像データ等の取込み編集用のデジタイザ、映像データ等の区間単位での編集を行うためのクリップエディタ、映像データ等の時系列的な配置についての編集を行うためのシーケンスエディタ等といったノンリニア編集用のアプリケーションプログラム等である。なお、クライアントは、リソースマネージャからキーＩＤの通知を受けなければ、リソースを使用できない。即ち、キーＩＤの通知は、クライアントに対するリソース使用権の付与という意義をもつ。
【００１７】
また、サーバ２２００ａ〜２２００ｎは、例えばデバイスドライバに相当するプログラムであり、クライアントに通知されたキーＩＤにより特定されるキー情報を参照して、このキー情報に従ってリソース２３００ａ〜２３００ｎを使用することにより、データの転送、入出力等の実行制御を行うサービスプログラムである。
【００１８】
なお、リソースマネージャ２０１０と、サーバ２２００ａ〜２２００ｎと、クライアント２１００ａ〜２１００ｍとは、メモリ１０２０に格納されたプログラムがＣＰＵ１０１０により実行されることによりその機能が実現されるものであり、リソースマネージャ２０１０及びクライアント２１００ａ〜２１００ｍは、マルチタスクＯＳ配下で動作するアプリケーションプログラムであり、リソースマネージャ２０１０はＯＳの起動と同時に起動される。
【００１９】
以下、リソースマネージャに対してクライアントによりなされるリソース使用要求に際して通知されるリソース使用要求詳細情報について説明する。
図３は、リソース使用要求詳細情報２５００の内容を示す図である。
同図に示すようにリソース使用要求詳細情報２５００は、クライアントＩＤ２５０１と、使用対象リソースＩＤ２５０２と、有効期限２５０３と、最大リソース使用量２５０４と、最小リソース使用量２５０５と、取得優先度２５０６と、使用継続優先度２５０７とを含む。なお、同図は、各情報の値の例をも示している。
【００２０】
ここで、クライアントＩＤ２５０１は、リソース使用要求の要求元であるクライアントを識別するためのＩＤである。使用対象リソースＩＤ２５０２は、クライアントが使用を望むリソースを識別するためのＩＤである。有効期限２５０３は、クライアントがリソースの使用を望む期間である。最大リソース使用量２５０４及び最小リソース使用量２５０５は、クライアントが要求するリソースの使用量に関する最大値及び最小値、即ち、望ましい量及び必要最小限の量を示す情報である。
【００２１】
また、取得優先度２５０６は、リソースの取得に関する優先度を示す情報であり、クライアントによるリソースの取得の必要性に応じて、Ｌｅｖｅｌ１〜Ｌｅｖｅｌ４の４種類のうちいずれかの値をとる。Ｌｅｖｅｌ４は、緊急を要するような最も必要性の高い場合に用いられ、必ずリソースを使用するという最大の優先度を意味する。Ｌｅｖｅｌ３は、他のクライアントのリソース使用量を削減することができる限りにおいて、又は他のクライアントがリソースの使用を中断等できる限りにおいて、他のクライアントに優先してリソースを使用し、他のクライアントのリソース使用量を削減できず他のクライアントのリソースの使用を中断できない場合には他のクライアントの使用が終了するのを待ってリソースを使用することを意味する。Ｌｅｖｅｌ２は、他のクライアントがリソースを使用中であれば他のクライアントの使用が終了するのを待ってリソースを使用することを意味する。また、Ｌｅｖｅｌ１は、他のクライアントにより使用されているためリソースが確保できなければリソースを使用しないことを意味する。
【００２２】
使用継続優先度２５０７は、他のクライアントから同一のリソースについての使用要求がなされた場合におけるリソースの使用の継続に関する優先度を示す情報であり、クライアントによるリソースの使用継続の必要性に応じて、Ｌｅｖｅｌ１〜Ｌｅｖｅｌ４の４種類のうちいずれかの値をとる。Ｌｅｖｅｌ４は、最も使用継続の必要性の高い場合に用いられ、現状通りのリソースの使用を継続するという最大の優先度を意味する。Ｌｅｖｅｌ３は、最小リソース使用量までの範囲でリソース使用量を削減されてもよいことを意味する。Ｌｅｖｅｌ２は、他のクライアントによるリソースの取得により、リソースの使用が中断されてもよいことを意味する。また、Ｌｅｖｅｌ１は、リソースを解放してもよいことを意味する。
【００２３】
以下、リソース管理ＤＢ２０２０の内容について説明する。
図４は、リソース管理ＤＢ２０２０の内容を示す図である。
リソース管理ＤＢ２０２０は、リソース毎に、これに対応するリソース管理情報を有する。同図には、リソースＩＤが０ｘ０１であるリソース、ここではＰＣＩバスについてのリソース管理情報３１００と、これに関連するキー情報３２００、３３００、３４００を示している。なお、同図は、各情報の値の例をも示している。
【００２４】
同図に示すように、リソース管理情報３１００は、リソースＩＤ３１０１と、リソース総量３１０２と、キー個数３１０３と、キーＩＤ３１０４、３１０５、３１０６等とを含む。
ここで、リソース総量３１０２は、リソースの使用限界としての数量を示す情報であり、例えば、ＰＣＩバスについては、各クライアントの実行に際して使用可能とするデータ転送帯域幅の合計使用量の限界値を、１００ＭＢ／ｓと定めている。なお、ここでは、データ転送速度を用いてデータ転送帯域幅を表現している。また、リソース総量３１０２の値は、ＰＣＩバス等のリソースが固有に有する現実の能力限界以下の値となるように定められる。キー個数３１０３は、クライアント個々に対応するキー情報についての数、即ち、現在、そのリソースを使用しているクライアントの数を示す。キーＩＤ３１０４、３１０５、３１０６等は、各キー情報を識別するためのＩＤを示し、これらキーＩＤは、キー個数３１０３が示す数だけ存在する。
【００２５】
また、キー情報３２００は、１つのクライアントによる特定のリソースに関する使用状況を管理するための情報であり、キーＩＤ３２０１と、クライアントＩＤ３２０２と、有効期限３２０３と、現在リソース使用量３２０４と、最大リソース使用量３２０５と、最小リソース使用量３２０６と、取得優先度３２０７と、使用継続優先度３２０８とを含む。このキー情報３２００は、リソースマネージャ２０１０に対していずれかのクライアントによりリソースの使用が要求された場合に生成される情報であり、有効期限３２０３と、最大リソース使用量３２０５と、最小リソース使用量３２０６と、取得優先度３２０７と、使用継続優先度３２０８とは、それぞれリソースの使用要求に際してクライアントにより通知されるリソース使用要求詳細情報中の対応する項目、即ち、有効期限２５０３、最大リソース使用量２５０４、最小リソース使用量２５０５、取得優先度２５０６及び使用継続優先度２５０７の値に基づいて設定される。
【００２６】
ここで、キーＩＤ３２０１は、キー情報を識別するためのＩＤであり、このキーＩＤと、リソース管理情報３１００内のキーＩＤとにより、キー情報とリソース管理情報が対応づけられている。クライアントＩＤ３２０２は、各アプリケーションプログラムを識別するためのＩＤであり、キー情報の生成の起因となるリソースの使用要求をしたアプリケーションプログラムについてのＩＤである。
【００２７】
有効期限３２０３は、キー情報自体の有効期限を示す情報であり、これは、クライアントがサーバを介してリソースを使用する場合におけるリソースの使用可能期間を限定するために用いられる。即ち、有効期限３２０３は、リソースマネージャ２０１０がクライアントに付与するリソースの使用権の有効期限を意味する。なお、有効期限３２０３は、リソースマネージャ２０１０により時間経過に合わせて、また、必要に応じて更新される。
【００２８】
現在リソース使用量３２０４は、リソースマネージャ２０１０が決定した現在におけるリソースの使用量を示す情報であり、これは、サーバに参照されることにより、リソースを使用してのデータ転送等がサーバにより実行される場合において、サーバが使用可能なデータ転送帯域幅等のリソースの数量を限定するために用いられる。従って、この現在リソース使用量３２０４は、リソースの使用権の分量、即ち使用可能なリソース数量を意味することになる。
【００２９】
最大リソース使用量３２０５及び最小リソース使用量３２０６は、クライアントが要求するリソースの使用量に関する最大値及び最小値、即ち、望ましい量及び必要最小限の量を示す情報である。
取得優先度３２０７は、リソースの取得に関する優先度を示す情報であり、クライアントによるリソースの取得の必要性に応じて、Ｌｅｖｅｌ１〜Ｌｅｖｅｌ４の４種類のうちいずれかの値をとる。なお、Ｌｅｖｅｌ４であっても、他のクライアントにより使用されているリソースであって、その使用に関連したキー情報の使用継続優先度３２０８がＬｅｖｅｌ４である場合には、リソースの使用開始ができない。
【００３０】
使用継続優先度３２０８は、他のクライアントから同一のリソースについての使用要求がなされた場合におけるリソースの使用の継続に関する優先度を示す情報であり、クライアントによるリソースの使用継続の必要性に応じて、Ｌｅｖｅｌ１〜Ｌｅｖｅｌ４の４種類のうちいずれかの値をとる。
＜動作＞
以下、上述の構成を備えるノンリニア編集システム１０００におけるリソース使用に関連する動作を説明する。
【００３１】
まず、図５及び図６を用いて、クライアントがリソースを使用する場合の基本的な動作について説明する。
図５は、クライアントからリソース使用要求を受けた場合にリソースマネージャの行うリソース使用要求対応処理を示すフローチャートである。
また、図６は、クライアントがリソースを使用する場合のメッセージシーケンスの一例を示す図である。
【００３２】
図６に示すように、クライアント２１００ａは、自己の処理を実行する上で必要となるリソースについてのリソース使用要求メッセージ４００１をリソースマネージャ２０１０に対して送信する。
なお、メッセージの送受信は、メッセージ受信用のアドレス、ハンドル等を相互に得て、そのアドレス等に対してメッセージを送ることによって実現される。このため、例えば、各クライアントは、リソースマネージャ２０１０のメッセージ受信用のアドレス等を予め取得しており、リソース使用要求メッセージ４００１にはクライアント自らのメッセージ受信用のアドレス等を含めている。
【００３３】
また、ここでは、クライアント２１００ａは、クリップエディタというアプリケーションプログラムであり、実時間での映像の再生をしつつ映像データを編集可能にするために、ＰＣＩバスを通じてある程度高速なデータ転送をサーバを介して実行するものとし、また、リソース使用要求メッセージは図３に例示した値をとるリソース使用要求詳細情報２５００を含んでいるものとする。
【００３４】
リソースマネージャ２０１０は、クライアント２１００ａからリソース使用要求メッセージ４００１を受けると、リソース使用要求詳細情報２５００及びリソース管理ＤＢ２０２０を参照して図５に示すリソース使用要求対応処理を行う。即ち、まず、リソースマネージャ２０１０は、クライアント２１００ａに要求されたリソースが使用可能かを判断する（ステップＳ３５０１）。この判断は、使用対象リソースＩＤ２５０２により指定された０ｘ０１というＩＤのリソースについてのリソース管理情報３１００を参照して、リソース総量３１０２からそのリソース管理情報３１００に結合された全てのキー情報中の現在リソース使用量の総和を減算することにより算出されるリソースの使用可能量が、要求された最小リソース使用量以上であるか否かによってなされる。
【００３５】
ステップＳ３５０１において使用可能と判断した場合には、リソースマネージャ２０１０は、リソース使用要求詳細情報に基づいて、キー情報を生成し、生成したキー情報のキーＩＤをリソース管理情報３１００に追加することによりキー情報をリソース管理情報３１００に結合し（ステップＳ３５０４）、キーＩＤを含むキーＩＤ通知メッセージ４００２をクライアント２１００ａに対して送信する（ステップＳ３５０５）。キー情報の生成は、リソース使用要求詳細情報中のクライアントＩＤ等の各項目を、キー情報中の対応する項目の値として用い、更に上述した判断のために算出されたリソースの使用可能量を、キー情報中の現在リソース使用量として用いることによりなされる。こうして図４に示すキー情報３２００は生成される。
【００３６】
ステップＳ３５０１においてリソースの使用が不可能であると判断した場合には、リソースマネージャ２０１０は、リソース使用要求メッセージ４００１に含まれるリソース使用要求詳細情報中の取得優先度と、そのリソースに対して既に生成されている各キー情報中の使用継続優先度とに基づく調整により、即ち、他のクライアントによるリソースの使用を中断させること、或いは他のクライアントによるリソースの使用量を減少させることにより、リソース使用要求に対してリソースを使用させることができる場合には（ステップＳ３５０２）、他のクライアントによるリソースの使用を調整し（ステップＳ３５０３）、キー情報の生成及びキーＩＤ通知メッセージのクライアントへの送信を行う（ステップＳ３５０４、Ｓ３５０５）。
【００３７】
また、ステップＳ３５０２において、リソース使用要求に対してリソースを使用させることができないと判断した場合には、リソースマネージャ２０１０は、リソース使用要求詳細情報中の取得優先度が最低、即ちＬｅｖｅｌ１であるならば（ステップＳ３５０６）、使用不可の旨のメッセージをクライアントに送信し（ステップＳ３５０８）、取得優先度が最低でなければ、リソース使用状況の変化によりリソース管理ＤＢが更新されることを待って（ステップＳ３５０７）、ステップＳ３５０１の判断に戻る。即ち、リソース取得優先度がＬｅｖｅｌ２以上のリソース使用要求を行ったクライアントは、リソースが使用可能となるまで待たされた後にキーＩＤ通知メッセージを受け取ることになる。なお、リソースマネージャ２０１０は、ステップＳ３５０７の処理として、リソース使用要求がなされた後に一度、クライアントにリソース使用待ちの旨のメッセージを送ることとする。
【００３８】
リソースマネージャ２０１０に行われるこのようなリソース使用要求対応処理により、キーＩＤ通知メッセージ４００２を受けたクライアント２１００ａは、サーバ２２００ａに対してキーＩＤを含むリソース使用指示メッセージ４００３を送信する。なお、図２には示していないが、各クライアントからリソース管理ＤＢ２０２０へのアクセスできるシステム構成としてもよく、この場合、クライアント２１００ａは、キーＩＤに基づいてリソース管理ＤＢ２０２０中のキー情報３２００を参照することも可能となる。
【００３９】
サーバ２２００ａは、リソース使用指示メッセージ４００３を受けると、キーＩＤに基づいてリソース管理ＤＢ２０２０中のキー情報３２００を参照し、現在リソース使用量３２０４に示されるデータ転送帯域幅でデータ転送を行うべく転送タイミング等を調整しつつデータ転送を行い、転送終了後にリソース解放通知メッセージ４００４をクライアント２１００ａに送信する。なお、データ転送中には、クライアント２１００ａとサーバ２２００ａの間で転送データの送受信がなされる。
【００４０】
クライアント２１００ａは、サーバ２２００ａからリソース解放通知メッセージ４００４を受けると、キーＩＤを含むリソース解放終了通知メッセージ４００５をリソースマネージャ２０１０に送信する。
リソースマネージャ２０１０はリソース解放終了通知メッセージ４００５を受けると、リソース管理ＤＢ２０２０を更新、即ち該当するキー情報を削除する。こうして、クライアントがリソースを使用する場合の一連の動作が終了する。
【００４１】
次に、図７を用いて、キー情報の有効期限が切れた場合の動作について説明する。
図７は、クライアントがリソースを使用している際にキー情報の有効期限が切れた場合のメッセージシーケンスの一例を示す図である。
同図に示すように、クライアント２１００ａが、リソースマネージャ２０１０にリソース使用要求メッセージ４００１を送信してキーＩＤ通知メッセージ４００２を受け取った後、サーバ２２００ａにリソース使用指示メッセージ４００３を送信し、これに対応してサーバ２２００ａがデータ転送を行うところまでは、前述した例（図６参照）と同様である。
【００４２】
その後、サーバ２２００ａがデータ転送を続けている間に、リソース管理ＤＢ２０２０に含まれるキー情報３２００中の有効期限３２０３が示す期限が切れた場合には、リソースマネージャ２０１０はクライアント２１００ａに対して有効期限切れ通知メッセージ４０１１を送信する。なお、リソースマネージャ２０１０は、有効期限が切れたかどうかを判断するために、例えばマルチタスクＯＳのソフトウェアで実現されたタイマー機能等を用い、キーＩＤ通知メッセージ４００２をクライアント２１００ａに通知した時以後、キー情報３２００中の有効期限３２０３の値を時間経過に合わせて減少させている。
【００４３】
有効期限切れ通知メッセージ４０１１を受けると、クライアント２１００ａは、サーバ２２００ａにリソース解放指示メッセージ４０１２を送信する。
リソース解放指示メッセージ４０１２を受けると、サーバ２２００ａは、データ転送を中止してリソースを解放し、クライアント２１００ａに対してリソース解放通知メッセージ４００４を送信する。
【００４４】
これ以後、前述した例（図６参照）と同様に、クライアント２１００ａは、リソースマネージャ２０１０にリソース解放終了通知メッセージ４００５を送信し、これを受けたリソースマネージャ２０１０はリソース管理ＤＢ２０２０を更新する。こうしてリソースの使用開始後にキー情報の有効期限が切れた場合の一連の動作が終了する。
【００４５】
次に、図８及び図５を用いて、あるクライアントがリソースを使用している間に、他のクライアントがリソース使用要求を行った場合の動作について説明する。
図８は、クライアント２１００ｂがリソースを使用している間にクライアント２１００ａがリソース使用要求を行った場合のメッセージシーケンスの一例を示す図である。
【００４６】
ここでは、クライアント２１００ｂは、サーバ２２００ｂを介してネットワークデータの転送等を行うアプリケーションプログラムであり、リソースを使用中であるとする。このリソースについてのリソース管理情報３１００中のリソース総量３１０２は１００ＭＢ／ｓであり、クライアント２１００ｂによる使用に対応するキー情報は、現在リソース使用量が６０ＭＢ／ｓ、最小リソース使用量が３０ＭＢ／ｓ、使用継続優先度がＬｅｖｅｌ３であるものとする。なお、サーバ２２００ａとサーバ２２００ｂとがそれぞれ使用するリソース２３００ａとリソース２３００ｂとは実際は単一のＰＣＩバスであるとする。
【００４７】
同図に示すように、クライアント２１００ａは、リソースマネージャ２０１０にリソース使用要求メッセージ４００１を送信する。このリソース使用要求メッセージ４００１に含まれるリソース使用要求詳細情報は、図３に例示する値をもつ。
リソース使用要求メッセージ４００１を受けて、リソースマネージャ２０１０は、上述したリソース使用要求対応処理（図５参照）を開始する。即ち、リソースマネージャ２０１０は、クライアント２１００ａに要求されたリソースは使用可能でないと判断し（ステップＳ３５０１）、他のクライアントの使用を調整することにより使用可能になると判断し（ステップＳ３５０２）、他の使用の調整を行う（ステップＳ３５０３）。
【００４８】
つまり、リソースマネージャ２０１０は、リソース使用要求詳細情報中の取得優先度がＬｅｖｅｌ３であり、クライアント２１００ｂの使用に対応するキー情報の使用継続優先度がＬｅｖｅｌ３であるので、クライアント２１００ｂの使用に対応するキー情報の現在リソース使用量を６０ＭＢ／ｓから３０ＭＢ／ｓに低減させ、そのキー情報の有効期限を延長させるように、リソース管理ＤＢ２０２０を更新した後、クライアント２１００ｂに対してデータ転送帯域変更要求メッセージ４０２１を発行する。なお、リソースマネージャ２０１０によりなされるキー情報の有効期限の延長については、後述する。
【００４９】
データ転送帯域変更要求メッセージ４０２１を受けると、クライアント２１００ｂは、サーバ２２００ｂにデータ転送帯域変更指示メッセージ４０２２を送信する。
データ転送帯域変更指示メッセージ４０２２を受けると、サーバ２２００ｂは、リソース管理ＤＢ２０２０中の既にデータ転送開始時に参照したものであるところのキー情報の現在リソース使用量を参照し、これに従ってデータ転送タイミング等を変更することによりデータ転送帯域幅を低減した後、クライアント２１００ｂにデータ転送帯域変更通知メッセージ４０２３を送信する。
【００５０】
データ転送帯域変更通知メッセージ４０２３を受けると、クライアント２１００ｂは、リソースマネージャ２０１０にデータ転送帯域変更終了通知メッセージ４０２４を送信する。
データ転送帯域変更終了通知メッセージ４０２４を受けると、リソースマネージャ２０１０は、現在リソース使用量を７０ＭＢ／ｓとし、クライアント２１００ａから既に受けているリソース使用要求詳細情報に基づいてキー情報を生成し、生成したキー情報をリソース管理情報に結合し（ステップＳ３５０４）、キーＩＤを含むキーＩＤ通知メッセージ４００２をクライアント２１００ａに対して送信する（ステップＳ３５０５）。
【００５１】
キーＩＤ通知メッセージ４００２を受けて、クライアント２１００ａは、サーバ２２００ａにリソース使用指示メッセージ４００３を送信し、これ以後、サーバを介してリソースを使用してのデータ転送を行う。
このように、優先度に応じてリソースの使用量等の調整を行うことによって、リソースマネージャ２０１０は、リソース取得の必要性の高いクライアントに優先的にリソースの使用をさせる。
【００５２】
以下、図９を用いて、上述したリソースマネージャ２０１０によりなされるクライアント２１００ｂの使用に対応するキー情報の有効期限の延長について説明する。
図９は、クライアント２１００ｂの使用に対応するキー情報の有効期限が延長される前後における現在リソース使用量と有効期限との関係を表す図である。
【００５３】
最初、クライアント２１００ｂは、有効期限ｔ１、データ転送帯域幅６０ＭＢ／ｓでリソースを使用していた。時刻ｔ０において、リソースマネージャ２０１０は、リソースをクライアント２１００ａに使用させるために、クライアント２１００ｂについてのデータ転送帯域幅を３０ＭＢ／ｓに低減させるとすると、残存する有効期限である（ｔ１−ｔ０）と６０ＭＢ／ｓとの積を３０ＭＢ／ｓで割った商、即ち（ｔ２−ｔ０）を、新たな残存する有効期限として算出する。このようにして、クライアント２１００ｂが必要とする量のデータ転送を可能とするために、リソースマネージャ２０１０は有効期限を延長する。
【００５４】
なお、クライアント２１００ｂは、上述したデータ転送帯域変更要求メッセージ４０２１をリソースマネージャ２０１０から受けた場合、リソース管理ＤＢ２０２０を参照して、データ転送帯域や有効期限等の変化を確認することもできる。従って、例えば、図１０に示すようなＧＵＩ画面をモニタ等に表示することもできる。
【００５５】
図１０は、リソース使用に関するデータ転送帯域幅と有効期限との変化をユーザに通知するためのＧＵＩ画面の例を示す図である。
以下、前述の例（図８参照）とは逆に、リソースを継続的に使用する必要性の高いクライアントが既にリソースを使用している場合において、リソースを取得する必要性の低いクライアントがリソースマネージャに対してリソースの使用要求を行う例について図１１及び図５を用いて説明する。
【００５６】
図１１は、クライアント２１００ｃがリソースを使用している間にクライアント２１００ｂがリソース使用要求を行った場合のメッセージシーケンスの一例を示す図である。
ここでは、クライアント２１００ｂはサーバ２２００ｎを介して転送の緊急性を要しないネットワークデータの転送等を行う必要があり、そのリソース使用についての取得優先度はＬｅｖｅｌ２であるものとする。また、クライアント２１００ｃは、高速にデータ転送を継続して行う必要があり、サーバ２２００ｎを介して既にリソースを使用しており、そのリソース使用についての使用継続優先度はＬｅｖｅｌ４であるものとする。
【００５７】
クライアント２１００ｃがリソースを使用している最中に、クライアント２１００ｂは、リソースマネージャ２０１０にリソース使用要求メッセージ４００１を送信する。
リソース使用要求メッセージ４００１を受けると、リソースマネージャ２０１０は、図５に示したリソース使用要求対応処理を開始する。ここでは、ステップＳ３５０１、Ｓ３５０２、Ｓ３５０６においてｎｏの判断がなされたとする。リソースマネージャ２０１０は、リソース待ち通知メッセージ４０３１をクライアント２１００ｂに送信してリソース使用状況の変化を待つ（ステップＳ３５０７）。
【００５８】
この後、クライアント２１００ｃによるサーバ２２００ｎを介してのデータ転送が終了すれば、サーバ２２００ｎは、クライアント２１００ｃにリソース解放通知メッセージ４００４を送信し、これを受けて、クライアント２１００ｃは、リソースマネージャ２０１０にリソース解放終了通知メッセージ４００５を送信する。
【００５９】
リソース解放終了通知メッセージ４００５を受けると、リソースマネージャ２０１０は、リソース管理ＤＢ２０２０を更新して該当するキー情報を削除し、ステップＳ３５０１からステップＳ３５０１へ処理を進め、リソースが使用可能であると判断して（ステップＳ３５０１）、クライアント２１００ｂからのリソース使用要求に対応してキー情報を生成し（ステップＳ３５０４）、クライアント２１００ｂにキーＩＤ通知メッセージ４００２を送信する（ステップＳ３５０５）。
【００６０】
なお、本例に基づく一連の手順において、リソースマネージャ２０１０がクライアント２１００ｂに送信したリソース待ち通知メッセージ４０３１は、クライアント２１００ｃによるリソースの使用に対応するキー情報中のクライアントＩＤ及び有効期限を示す情報を含む。従って、リソース待ち通知メッセージ４０３１により、リソースの使用を待たされるクライアントは、リソースの使用を開始できる時刻を予測することができ、また、例えば、図１２に示すようなＧＵＩ画面をモニタ等に表示することにより、ユーザにリソースが解放されるまでの時間に関する情報を提示することができる。
【００６１】
図１２は、リソースが解放されるまでの時間に関する情報をユーザに提示するためのＧＵＩ画面の例を示す図である。
なお、クライアントは、上述のようにリソースの使用を開始できる時刻を予測できるので、例えば、リソースが解放されているかどうか常に調べ続けることなく予測した時刻まで待機するようにすれば、結果的に、ＣＰＵの負荷軽減が図られる。
【００６２】
＜第１変形例＞
以下、上述したノンリニア編集システム１０００の第１変形例について図１３及び図１４を用いて説明する。この第１変形例では、図８に示したメッセージシーケンスでなされる動作に加えて、一度データ転送帯域を低減させられたクライアントに対してデータ転送帯域を増大させるための動作を行う。
【００６３】
図１３は、第１変形例において、クライアント２１００ｂがリソースを使用している間にクライアント２１００ａがリソース使用要求を行った場合のメッセージシーケンスの一例を示す図である。
ここでは、前提条件は図８のメッセージシーケンスに沿って上述したものと同様であり、リソースマネージャ２０１０は、クライアント２１００ｂに対して、データ転送帯域変更要求メッセージ４０２１を送信してデータ転送帯域幅を低減させた後に、クライアント２１００ａに対して、キーＩＤ通知メッセージ４００２を送信して優先的にリソースを使用させる。
【００６４】
その後、クライアント２１００ａによるリソースの使用が終了したときに、リソースマネージャ２０１０は、クライアント２１００ａからリソース解放終了通知メッセージ４００５を受けて、クライアント２１００ａによる使用に関連するキー情報を削除するようにリソース管理ＤＢ２０２０を更新する。この更新に際して、リソースマネージャ２０１０は、先ほどデータ転送帯域幅を低減させたクライアント２１００ｂの使用に関連するキー情報中の現在リソース使用量を、低減前の現在リソース使用量に戻し、キー情報の有効期限を短縮する。なお、クライアント２１００ｂにデータ転送帯域幅を低減させる場合に、リソースマネージャ２０１０は、元の現在リソース使用量を保存しておき、これを用いて低減前の現在リソース使用量に戻す。
【００６５】
リソース管理ＤＢ２０２０の更新後、リソースマネージャ２０１０は、クライアント２１００ｂに対してデータ転送帯域回復通知メッセージ４０４１を送信する。
データ転送帯域回復通知メッセージ４０４１を受けると、クライアント２１００ｂは、サーバ２２００ｂにデータ転送帯域変更指示メッセージ４０２２０を送信する。これを受けて、サーバ２２００ｂは、リソース管理ＤＢ２０２０を参照して、現在リソース使用量に合わせるべくデータ転送帯域幅を調整して、データ転送帯域変更通知メッセージ４０２３０をクライアント２１００ｂに送信する。なお、このデータ転送帯域回復通知メッセージ４０４１からデータ転送帯域変更通知メッセージ４０２３０までの一連の動作は、データ転送帯域変更要求メッセージ４０２１からデータ転送帯域変更通知メッセージ４０２３までの一連の動作と基本的に同様である。
【００６６】
これにより、他のクライアントに使用させるために、データ転送帯域幅を低減されたクライアント２１００ｂが、他のクライアントの使用終了後には元通りのデータ転送帯域幅でリソースを使用することができるようになる。
図１４は、クライアント２１００ｂの現在リソース使用量と有効期限との関係を表す図である。
【００６７】
クライアント２１００ｂが、有効期限ｔ１、データ転送帯域幅６０ＭＢ／ｓでリソースを使用しているときに、時刻ｔ０において、リソースマネージャ２０１０は、リソースをクライアント２１００ａに使用させるために、クライアント２１００ｂについてのデータ転送帯域幅を６０ＭＢ／ｓから３０ＭＢ／ｓに低減させるように制御し、その後、クライアント２１００ａによるリソースの使用が終了すると、クライアント２１００ｂについてのデータ転送帯域幅を元の６０ＭＢ／ｓに戻し、有効期限を一度延長（図９参照）したｔ２よりも短くする。このリソースマネージャ２０１０による制御により図１４に示すような現在リソース使用量と有効期限との変化が生じる。
【００６８】
＜第２変形例＞
以下、上述したノンリニア編集システム１０００の第２変形例について図１５を用いて説明する。上述したノンリニア編集システム１０００が、各クライアントがリソースを使用する直前に、リソースマネージャに対してリソース使用要求を行うこととしていたのに対し、この第２変形例は、各クライアントが、将来においてリソースを使用する場合に、予めリソースの使用予約を行うことができるようにしたものである。
【００６９】
即ち、この第２変形例においては、リソースマネージャ２０１０は、リソースの使用予定をも管理する。従って、リソース管理ＤＢ２０２０には、上述した内容に加えて、各リソースについての各クライアントによる使用時刻の予定を管理するための情報であるリソース管理予定表が含まれる。
図１５は、第２変形例におけるリソース管理ＤＢ２０２０中のリソース管理予定表の内容例を表現した図である。同図では、ＲＳ−４２２通信インタフェース、信号の符号化及びデータの復号化を行うＣＯＤＥＣ、ハードディスク装置（ＨＤＤ）、ネットワークカードについての各クライアントによる使用予定を管理するためのリソース管理予定表の例を示している。なお、同図中、実線の矢印、破線の矢印、１点鎖線の矢印、２点鎖線の矢印で示す区間は、それぞれ別のクライアントによる使用予定を示す。
【００７０】
リソースの使用予定の管理を実現するために、各クライアントは、リソースマネージャに対してリソース使用要求を行う際に、図３に示すリソース使用要求詳細情報に、リソースの使用開始時期に関する情報を加えたものをリソースマネージャに通知することとし、このリソースの使用開始時期に関する情報と有効期限とにより、使用開始時期から使用終了時期までの使用期間を特定することができるので、これに基づいて、リソースマネージャはリソース管理ＤＢのリソース管理予定表を更新することとする。
【００７１】
また、クライアントによる使用予約に対して、その使用期間においてリソースを使用させることができる場合には、上述したキー情報を作成し、リソースマネージャはその使用予約を有効なものとする旨のメッセージをそのクライアントに送信し、その後、使用開始時期になり次第、キー情報を上述したリソース管理情報に結合するとともにそのクライアントにキーＩＤを通知する。従って、リソースの使用予約をしたクライアントは、その使用開始時期になったときにそのリソースの使用権を得ることになる。
【００７２】
なお、各クライアントによるリソースの使用予定が競合する場合には、リソースマネージャは、リソース使用要求詳細情報中の取得優先度又は使用継続優先度に基づいて調整を行うこととする。即ち、リソースマネージャは、クライアントにより新たにリソースの使用予約がなされた場合にその使用開始時期から使用終了時期までの間において、そのリソースが他のクライアントにより既に使用される予定になっているか否かをリソース管理ＤＢのリソース管理予定表を参照して判断し、使用期間が重複する場合には、双方の取得優先度又は使用継続優先度を比較して予め定めてある基準に基づいていずれの使用予約を有効なものとするかを決定する。使用予約を無効とした場合には、リソースマネージャはその使用予約を行ったクライアントに、使用予約を無効とした旨のメッセージを送信する。
【００７３】
＜補足＞
（１）本実施の形態ではリソースマネージャは、マルチタスクＯＳ配下で動作するアプリケーションプログラムであるとしたが、これに限られるのではなく、ＯＳの一部等、システムプログラムとして位置づけられることとしてもよい。
また、本実施の形態ではサーバは１つのリソースを使用してデータ転送等を行うこととしたが、これに限られることはなく、サーバがリソース複数を使用してもよい。また、１つのリソースは、複数のサーバのいずれからも使用されるものであってもよい。なお、複数のサーバによりＰＣＩバス等のリソースを用いてデータ転送帯域幅を調整しつつ転送を行う場合には、転送タイミングに関する共通のルールを設けてこれに従い転送制御を行うものとする。例えば、データ転送をあるデータ量のパケット単位で行い、同期信号に基づいて時間を複数個のタイムスロットに分割し、各サーバは使用するタイムスロットの数を選択することによりデータ転送帯域幅を調整することとしてもよい。
【００７４】
また、サーバが複数チャネルのデータ転送等の制御機能を有する場合、各クライアントは同時に、そのサーバを利用することとしてもよい。
さらに、クライアントとサーバとは必ずしも独立している必要はなく、一体となっていてもよい。一体となっている場合には、クライアントとサーバとの間のメッセージの送受信は省略してよい。
【００７５】
なお、サーバ自体がキー情報中の有効期限を参照して、有効期限が切れた場合にリソースの解放を行うこととしてもよく、これによれば、クライアントとサーバとを独立させているとき、例えばマルチタスクＯＳ配下で独立したタスクとして扱われるようにしているとき等においては、クライアントに障害が発生していても有効期限が切れるとサーバによりリソースの解放がなされるので他のクライアントによるリソースの使用を妨げることが回避できる。
（２）本実施の形態では、データ転送帯域に関する限界を有するＰＣＩバスを主にリソースの例として用いたため、リソース使用要求詳細情報中の最大リソース使用量及び最小リソース使用量がデータ転送帯域幅の値で指定されることとしたが、例えば、単なる個数に関する限界を有するリソースについては個数値で指定することとしてもよく、単一物であるリソースについては指定不要としてもよい。なお、個数値で指定するものに対しては、本実施の形態で示したデータ転送帯域変更要求メッセージ４０２１等の代わりに、リソースマネージャは、使用個数の変更を要求する旨のメッセージを送信することとすればよい。
【００７６】
また、他のクライアントにリソースを使用させるために、リソースマネージャは、現在そのリソースを使用中のクライアントのその使用に対応するキー情報中の現在リソース使用量を低減させるだけでなく、取得優先度及び使用継続優先度に基づいて、使用中のクライアントに対してリソースの解放を要求する旨のメッセージを送信する場合もあり得る。
（３）本実施の形態では、リソースマネージャがキー情報についての識別子であるキーＩＤをクライアントに伝えることによりリソースの使用権を付与することとしたが、本発明はこれに限定されることはなく、例えば、キーＩＤを用いず、リソースの使用権の付与はキー情報をリソース管理情報に結合することにより行われることとし、サーバはクライアントＩＤを用いて必要なキー情報を特定してアクセスすることとしてもよい。
（４）本実施の形態では、キー情報の有効期限が切れたかどうかはリソースマネージャがリソース管理ＤＢを参照して判断し、有効期限が切れている場合にクライアントに対して有効期限切れ通知メッセージを送信することとしたが、これに限定されることはなく、リソースの使用要求を行ったクライアントがリソースマネージャからキーＩＤとともに有効期限を示す情報を送られること等とすることにより、クライアントがキーＩＤを受け取ることにより取得したリソースの使用権についての有効期限を把握して、有効期限が切れた場合にサーバを制御する等によりリソースの使用を終了させることとしてもよい。
（５）本実施の形態では、リソースの使用要求を行うクライアントがリソース使用要求詳細情報の構成要素として有効期限を指定することとしたが、この有効期限は、ともに指定する最大リソース使用量の使用が可能である場合においての使用期限を意味するものとして用いられるものとしてもよい。この場合、リソースマネージャは、当該クライアントに使用させることができるリソース量に応じて、キー情報の有効期限、即ち、当該クライアントに付与する使用権の有効期限を変化させることになる。
【００７７】
また、リソースマネージャは、リソースの使用要求を行うクライアントから、当該クライアントが転送すべきデータの総量を示す情報を受け取り、その情報と、当該クライアントに使用させることができたリソースの量とに応じて、当該クライアントに付与する使用権の有効期限を定めることとしてもよい。
（６）本実施の形態では、クライアントがリソースの使用要求を行う際にリソース使用要求詳細情報の構成要素として取得優先度及び使用継続優先度を指定することとしたが、これに限定されることはなく、例えば、予めクライアント毎にリソースの取得優先度及び使用継続優先度を定めていることとし、リソースマネージャは、これらを記憶しておく等によりリソース使用要求詳細情報の構成要素の代わりとして用いることとしてもよい。
（７）本実施の形態では、リソース管理ＤＢ２０２０中に生成されたキー情報を識別するためのキーＩＤを、リソースマネージャはリソースの使用要求を行うクライアントに通知することとしたが、キー情報そのものを通知することとしてもよく、クライアントは通知されたキー情報をサーバに与えてそのキー情報に従ったデータ転送を実行させることとしてもよい。
（８）本実施の形態では、１つのパソコンに接続されるリソースの管理を行うシステムを説明したが、これに限られるのではなく、ネットワーク上に分散しているリソースを、１つのリソースマネージャにより一元管理するシステムであることとしてもよい。
【００７８】
図１６は、ネットワーク上に分散しているリソースを１つのリソースマネージャによって一元管理するシステムの例を示す図である。同図に示すシステムは、ユーザが編集操作を行うネットワーク端末５００３又は５００４と、ノンリニア編集機５００１と、リソース管理装置付ビデオサーバ５００２とをネットワークで接続したものであり、ここで、リソース管理装置付ビデオサーバ５００２は、本実施の形態で示したリソースマネージャに相当する機能を有する。
【００７９】
また、本実施の形態で示したノンリニア編集システム１０００と同様の構成をもつ複数のシステムを、ネットワークで接続し、あるノンリニア編集システムにおけるクライアントから他のノンリニア編集システムの管理下にあるリソースの使用を行うことができるようにしてもよい。以下にこの場合の処理手順例を説明する。
【００８０】
まず、クライアントはリソースの取得条件、取得期間、リソース種別等の情報を付随したリソース使用要求メッセージを当該クライアントと同一のノンリニア編集システム中のリソースマネージャに送信する。これを受けて、リソースマネージャは、管理下のリソースに空きがなく使用させることができなければ、他の全てのノンリニア編集システムにおけるリソースマネージャに対してクライアントからのリソース使用要求メッセージを転送してリソースの取得を要請する。リソースの取得の要請を受けたリソースマネージャは、自ら管理するリソースによって、リソース種別で示される種類のリソースについての取得の要請に応えられるか判断し、応えられる場合には、キー情報を作成して、キー情報の所在を示すキーＩＤ通知メッセージを、リソースの取得の要請を行ったリソースマネージャに対して送信する。キーＩＤ通知メッセージを受け取ったリソースマネージャは、最初に受け取ったキーＩＤ通知メッセージをクライアントに通知する。クライアントはリソースマネージャからのキーＩＤ通知メッセージを受けると、他のノンリニア編集システム上のサーバにリソースを使用してのデータ転送を依頼する。
【００８１】
この手順により、クライアントは、必要とするリソースをネットワーク上の他のシステムから取得することができる。
（９）本実施の形態では、リソースの使用要求の際にクライアントからリソースマネージャに送られる使用要求詳細情報には４段階の取得優先度及び使用継続優先度が指定されることとしたが、優先度は何段階であってもよい。また、これらの優先度に関する情報を削除した形態も考えられる。この場合、例えば、リソースの使用要求が競合するときには、先に使用要求をした方が有効となり、後に使用要求をした方は無効、又は先に使用要求した方による使用が終了するまで待たされることとしてもよい。
（１０）本実施の形態では、クライアント、サーバ、リソースマネージャ間でメッセージの送受信がなされることとしたが、特にメッセージ受信用のアドレス又はハンドルを用いたプロセス間通信を用いることに限定されることはなく、そのメッセージの内容である情報の伝達が可能な方法であればいかなる方法が用いられてもよい。
（１１）本実施の形態の第１変形例では、他のクライアントによるリソース使用要求によって、使用可能なデータ転送帯域幅を低減されたクライアントが、他のクライアントによるリソースの使用終了後に、使用可能なデータ転送帯域幅を元の値まで増大される例を示したが、特に他のクライアントによるリソースの使用終了後でなくても、そのリソースの使用状況の変化により使用可能量が増大したなれば、その時にデータ転送帯域幅を増大されるようにしてもよく、また、元の値を超えて増大されるようにしてもよい。
《実施の形態２》
以下、実施の形態１で示したリソース管理システムにおけるリソースマネージャ２０１０、リソース管理ＤＢ２０２０等を（図２参照）、ディジタル映像再生録画装置に適用したリソース管理システムの例を説明する。
【００８２】
但し、この実施の形態２に係るリソース管理システムは、実施の形態１と異なり、クライアントが別種類の複数のリソースを一括して確保することができるようにし、また、一括確保したリソースのうちの一部を解放したり再度確保したりすることができるようにしたものである。このために、クライアントがリソースマネージャに対して送るリソース使用要求詳細情報は、複数のリソースを同時に要求する形式のものを用いることとし、また、クライアントとリソースマネージャの間でリソース一部解放や再確保に関する新たなメッセージを授受することとする。従って、以下、実施の形態１と異なる点を中心に説明する。
【００８３】
図１７は、ディジタル映像再生録画装置におけるハードウェア資源と、入力された映像をディジタル化して記録する機能（以下、「デジタイザ機能」という。）が実行された場合のデータフローを示す図である。
ディジタル映像再生録画装置におけるハードウェア資源には、ハードディスク装置１１１、ＣＯＤＥＣ１１２、１１３、スイッチ１１４、ＭＩＸ回路１１５、Ｄ／Ａコンバータ１１６及びＡ／Ｄコンバータ１１７がある。
【００８４】
ハードディスク装置１１１は、ディジタル形式で圧縮された映像データを保持している。また、ハードディスク装置１１１は、読み出し、又は書き込みのために２チャンネルを有している。
ＣＯＤＥＣ１１２は、映像データをエンコード（圧縮）又はデコード（伸長）するもので、ＣＯＤＥＣ１１３は、映像データをデコード（伸長）する。
【００８５】
スイッチ１１４は、映像データの信号の方向を切り換えるものである。
ＭＩＸ回路１１５は、ＣＯＤＥＣ１１３で伸長された映像データと、ＣＯＤＥＣ１１２で伸長された映像データとを空間的に合成する２チャンネル再生又は、ＣＯＤＥＣ１１３で伸長された映像データを１００％とする１チャンネル再生をして、得られた映像データをＤ／Ａコンバータ１１６に送るものである。
【００８６】
Ｄ／Ａコンバータ１１６は、ＭＩＸ回路１１５から送られてきた映像データのデジタル信号をアナログ信号に変換して出力する。この出力された映像データのアナログ信号は、外部のテレビモニタに接続されることにより映像として見ることができる。
Ａ／Ｄコンバータ１１７は、外部のＶＴＲなどから入力されたアナログ映像データをディジタル形式に変換し、スイッチ１１４を介してＣＯＤＥＣ１１２に出力する。
【００８７】
なお、リソース管理ＤＢでは、これらハードウェア資源の種類毎にリソース管理情報を有することになる。但し、説明の便宜上ハードディスク装置１１１は常時共用可能であることとして、ハードディスク装置１１１の使用権に関する制御についてはここでは触れないこととする。
デジタイザ機能は、ディジタル映像再生録画装置が有するメモリに格納されたあるアプリケーションプログラム（以下、「デジタイザＡＰ」という。）が、その装置が有するＣＰＵにより実行されることで実現されるものである。デジタイザＡＰは、外部のＶＴＲ等から入力されたアナログ映像データをディジタル化としてハードディスク装置１１１に記録する記録処理と、入力中の映像を外部のテレビモニタ等に出力するプレビュー処理とをその内容とするものであり、実施の形態１で示したクライアントの１つに相当する（図２参照）。なお、デジタイザＡＰは記録処理の実行中に、プレビュー処理を行うものであるが、随時、ユーザによるプレビューの停止指示や実行指示を受け付けてこれに応じて、プレビュー処理の停止や再開を行うものである。
【００８８】
このデジタイザが実行される場合に必要となるリソースは、同図のデータフローから明らかなように、ハードディスク装置（ＨＤＤ）１１１と、１つのＣＯＤＥＣと、スイッチ（ＳＷ）１１４と、ＭＩＸ回路１１５と、Ｄ／Ａコンバータ１１６と、Ａ／Ｄコンバータ１１７である。
図１８は、ハードディスク装置に記録されたディジタル映像データを外部のテレビモニタ等に出力して、ユーザによる映像編集を支援する機能（以下、「編集機能」という。）が実行された場合のデータフローを示す図である。
【００８９】
編集機能は、ディジタル映像再生録画装置が有するメモリに格納されたデジタイザＡＰとは別のあるアプリケーションプログラム（以下、「エディタＡＰ」という。）が、その装置が有するＣＰＵにより実行されることで実現されるものである。エディタＡＰも実施の形態１で示したクライアントの１つに相当する（図２参照）。
【００９０】
このエディタＡＰが実行される場合に必要となるリソースは、同図のデータフローから明らかなように、ハードディスク装置（ＨＤＤ）１１１と、１つのＣＯＤＥＣと、ＭＩＸ回路１１５と、Ｄ／Ａコンバータ１１６とである。
以下、デジタイザＡＰとエディタＡＰとが実行される場合の動作について説明する。
【００９１】
ここでは、先にデジタイザＡＰが起動されるとする。
図１９は、デジタイザＡＰの起動後にエディタＡＰが起動された場合のメッセージシーケンスの一例を示す図である。
同図に示すように、デジタイザＡＰは、まずリソース使用要求詳細情報を含むリソースマネージャにリソース使用要求メッセージ６００１を送信する。
【００９２】
ここで、このリソース使用要求メッセージ６００１に含まれるリソース使用要求詳細情報について図２０を用いて説明する。
図２０は、複数のリソースの一括確保が必要な場合に用いられるリソース使用要求詳細情報６５００のデータ構造及び内容例を示したものである。
同図に示すようにリソース使用要求詳細情報６５００は、クライアントＩＤ６５０１と、使用対象リソースＩＤ６５０２と、リソース使用量６５０３と、取得優先度６５０４と、使用継続優先度６５０５とを含む。なお、このリソース使用要求詳細情報６５００が実施の形態１で示したリソース使用要求詳細情報２５００と異なる主な点は、クライアントＩＤ６５０１以外の情報は、使用対象となるリソースの数だけ分の内容を有する点である。リソース使用要求詳細情報６５００においては、有効期限の情報を省略しているが、これを含めてもよく、また、リソース最大使用量とリソース最小使用量という量的な２つのレベルを用いずに、リソース使用量６５０３という１つのレベルを用いているが、これについても同様にしても差し支えない。
【００９３】
デジタイザＡＰは、ＣＯＤＥＣ、スイッチ、ＭＩＸ回路、Ｄ／Ａコンバータ及びＡ／Ｄコンバータをそれぞれ１つ使用する必要があるため、同図の内容例に示したようなリソース使用要求詳細情報を含むリソース使用要求メッセージ６００１を送信するのである。
このリソース使用要求メッセージ６００１を受けて、リソースマネージャは、リソース使用要求詳細情報６５００及びリソース管理ＤＢを参照して実施の形態１で示したようなリソース使用要求対応処理（図５参照）を行う。
【００９４】
ここで、リソースマネージャは要求されたリソースが使用可能であると判断したとして説明を続ける。リソースマネージャは、リソース使用要求詳細情報に基づいて実施の形態１における動作と同様にキー情報を生成し、生成したキー情報のキーＩＤをリソース毎の管理情報であるリソース管理情報に追加することでキー情報をリソース管理情報に結合し、キーＩＤを含むキーＩＤ通知メッセージ６００２をデジタイザＡＰに対して送信する。
【００９５】
このとき、リソース管理ＤＢの内容は、図２１のようになる。
図２１は、複数のリソースの使用要求に対応した直後のリソース管理ＤＢの内容を示す図である。
同図に示すように、ＣＯＤＥＣ、スイッチ（ＳＷ）、ＭＩＸ回路、Ｄ／Ａコンバータ及びＡ／Ｄコンバータについてのリソース管理情報６６０１〜６６０５それぞれに同一のキーＩＤのキー情報６６１１〜６６１５が結合されている。
【００９６】
こうしてリソースマネージャからキーＩＤの通知を受けたデジタイザＡＰは、各リソースに対してサーバ等を介してアクセスし、各リソースに対して必要な情報の初期設定を行う等して各リソースを使用する。つまり、デジタイザＡＰは、記録処理及びプレビュー処理を行う。
ここで、プレビュー処理を停止すべき旨のユーザによる指示がなされた場合には、デジタイザＡＰは、プレビュー処理のみに必要であったＭＩＸ回路１１５とＤ／Ａコンバータ１１６とを解放し、その解放したリソースを示すリソース部分解放詳細情報を含むリソース部分解放通知６００３をリソースマネージャに送信する。
【００９７】
ここで、このリソース部分解放通知６００３に含まれるリソース部分解放詳細情報６７００について図２２を用いて説明する。
図２２は、一括確保したリソースのうちいくつかを解放する場合に用いられるリソース部分解放詳細情報６７００のデータ構造及び内容例を示したものである。
【００９８】
同図に示すようにリソース部分解放詳細情報６７００は、クライアントＩＤ６７０１と、キーＩＤ６７０２と、対象リソースＩＤ６７０３と、リソース解放量６７０４とを含む。
クライアントＩＤ６７０１は一括確保したリソースの一部の解放をするアプリケーションプログラムのＩＤであり、キーＩＤ６７０２は複数リソースのリソース使用要求メッセージに対してリソースマネージャから返却されたキーＩＤであり、対象リソースＩＤ６７０３は解放したリソースを識別するためのＩＤであり、リソース解放量６７０４は解放した数量である。
【００９９】
同図の内容例は、ＭＩＸ回路とＤ／Ａコンバータを解放したことを表している。
リソース部分解放通知６００３を受けると、リソースマネージャは、リソース部分解放詳細情報を参照して、これに応じて、解放されたリソースについてのリソース管理情報に結合されているキー情報を削除し、リソース管理情報を更新する。この結果として、ＭＩＸ回路及びＤ／Ａコンバータについてのリソース管理情報は、キー情報と結合されていない状態となる。
【０１００】
ここでは、デジタイザＡＰがプレビュー処理を停止した後に、ユーザがエディタＡＰを起動したとする。なお、デジタイザＡＰは継続して動作を続けているものとする。起動されたエディタＡＰは、ＣＯＤＥＣ、ＭＩＸ回路及びＤ／Ａコンバータを要求する旨のリソース使用要求詳細情報を含むリソース使用要求メッセージ６００４をリソースマネージャに送信する。
【０１０１】
リソースマネージャは、リソース使用要求メッセージ６００４を受けると、そのリソース使用要求詳細情報及びリソース管理ＤＢを参照し、リソース使用要求対応処理（図５参照）を行う。リソースマネージャは、キー情報を生成し、生成したキー情報のキーＩＤをリソース毎の管理情報であるリソース管理情報に追加することでキー情報をリソース管理情報に結合し、キーＩＤを含むキーＩＤ通知メッセージ６００５をエディタＡＰに対して送信する。
【０１０２】
このとき、リソース管理ＤＢの内容は、図２３のようになる。
図２３は、デジタイザＡＰがプレビュー処理を停止した後にエディタＡＰが起動された状態でのリソース管理ＤＢの内容を示す図である。
この後、ユーザはエディタＡＰに対して実行終了の指示を与えたとすると、エディタＡＰは実行終了に際して使用したリソースを全て解放して、キーＩＤを含むリソース解放終了通知６００６をリソースマネージャに送信する。
【０１０３】
このリソース解放終了通知６００６を受けて、リソースマネージャは、そのキーＩＤで特定される全てのキー情報を削除しリソース管理情報を更新する。
エディタＡＰが終了した後に、ユーザがデジタイザＡＰにプレビュー処理を再開させるよう指示したとすると、デジタイザＡＰは、現在使用しているリソースに加えてプレビュー処理に必要なＭＩＸ回路とＤ／Ａコンバータを使用するために、その旨を示すリソース追加取得詳細情報を含むリソース追加取得要求メッセージ６００７をリソースマネージャに送信する。
【０１０４】
図２４は、既に一括確保しているリソースに加えていくつかのリソースを取得する必要がある場合に用いられるリソース追加取得詳細情報６８００のデータ構造及び内容例を示したものである。
同図に示すようにリソース部分解放詳細情報６８００は、クライアントＩＤ６８０１と、キーＩＤ６８０２と、対象リソースＩＤ６８０３と、リソース取得量６８０４とを含む。
【０１０５】
クライアントＩＤ６８０１はリソースの追加取得を要求するアプリケーションプログラムのＩＤであり、キーＩＤ６８０２は複数リソースのリソース使用要求メッセージに対してリソースマネージャから返却されたキーＩＤであり、対象リソースＩＤ６８０３は取得するリソースを識別するためのＩＤであり、リソース取得量６８０４は要求する数量である。
【０１０６】
リソースマネージャは、リソース追加取得要求メッセージ６００７を受けると、そのリソース追加取得詳細情報及びリソース管理ＤＢを参照し、リソースを使用させることができる場合には、指定されたキーＩＤを含むキー情報を生成し、そのキーＩＤをリソース毎の管理情報であるリソース管理情報に追加することでキー情報をリソース管理情報に結合し、要求されたリソースの使用権を与える意味のリソース追加取得成否通知メッセージ６００８をデジタイザＡＰに送信する。なお、リソースを使用させることができない場合には、リソースの使用権を与えない意味のリソース追加取得成否通知メッセージを送信することになる。このとき、リソース管理ＤＢの内容は、再び図２３のようになる。
【０１０７】
このように、実施の形態２に係るリソース管理システムによれば、アプリケーションプログラムは、複数のリソースの使用権を同時に確保することができるため、他のアプリケーションプログラムとの間で相互にいくつかのリソースの使用権を持ち合うというデッドロック状態が発生することを防止することができる。また、このリソース管理システムによれば、アプリケーションプログラムは、複数のリソースについて一括して確保した使用権について、その一部を放棄したり一部を再度確保したりすることもできる。
《補足》
上記実施の形態１及び２で示したリソースマネージャ、各クライアント及び各サーバ間でなされるメッセージ送受信の手順や、リソースマネージャによりなされるリソース使用要求対応処理の手順等を、汎用のコンピュータ又はプログラム実行機能を有する家電機器に実行させるためのコンピュータプログラムを、記録媒体に記録し又は各種通信路等を介して、流通させ頒布することもできる。
【０１０８】
かかる記録媒体には、ＩＣカード、光ディスク、フレキシブルディスク、ＲＯＭ等がある。流通、頒布されたコンピュータプログラムは、プログラム実行機能を有する家電機器やパーソナルコンピュータ等にインストール等されることにより利用に供され、家電機器やパーソナルコンピュータは、当該コンピュータプログラムを実行して、各実施の形態に示したようなリソース管理に関する機能を実現する。
【０１０９】
【発明の効果】
上記目的を達成するために、本発明に係るリソース管理システムは、複数のアプリケーションプログラムによるリソースの使用の管理を行うリソース管理システムであって、ここで、前記アプリケーションプログラムは、あるリソースについて、ある有効期限内に、ある分量の使用を許可する旨の情報である使用権を得た場合に、当該有効期限内において当該分量の当該リソースを使用するものであり、リソースの使用の許容限界を示す限界情報と、アプリケーションプログラムに対して与えたリソースの使用権の分量を示す使用権情報とを記憶するリソース管理用情報データベースと、リソースの使用を望む時間を示す有効期限情報を伴ってアプリケーションプログラムからなされるリソースの使用を望む旨の使用要求を受け付けるリソース要求受付手段と、前記リソース要求受付手段を介して前記リソースの使用要求を受け付け、前記限界情報と前記使用権情報とに基づいて当該リソースの使用を許容できるか否かを判断し、使用を許容できる場合には、前記有効期限情報に基づき有効期限を定めて当該リソースの当該有効期限付きの使用権を当該アプリケーションプログラムに与えるとともに、与えた使用権に係る分量に応じて前記使用権情報を更新するリソース使用管理手段とを備えることを特徴とする。
【０１１０】
これにより、リソース使用管理手段がリソース管理用情報データベースを用いてリソースの総量と使用量、即ち使用権を割り当てた分量とを一元管理するので、リソースを使用する複数のアプリケーションプログラムそれぞれは、リソース限界値や他のアプリケーションプログラムによるリソース使用の必要性に依存した処理内容を含まなくても、リソース使用管理手段に対してリソースの使用要求を行うことにより、そのリソースが現在使用可能である場合にリソースの使用権を得ることができるため、その使用権を得たリソースを用いてデータ転送等の処理を適切に実行することができるようになる。また、このリソース管理システムに対して、リソースの追加変更等によりリソースの数量の限界値が変化した場合にもそれに合わせてリソース管理用情報データベースの内容を変更しておけば、リソースの有効活用が図れるようになる。特に、アプリケーションプログラムが要求するリソースの使用を望む時間により、リソースの使用権についての有効期限が設定されるので、有効期限を超えた時点でリソースが解放されることとなりその後は他のアプリケーションプログラムがそのリソースを利用し得るようになる。つまり、アプリケーションプログラムが自己の処理上の必要性からリソースを要求する時間を決定してリソースの使用要求を行いさえすれば、その他のアプリケーションプログラムにとってリソースがいつまでたっても使用できないような事態を回避することができる。
【０１１１】
また、前記リソース使用管理手段は、時間経過を計測する計時部を有し、当該計時部を用いて、アプリケーションプログラムに使用権を付与した時からの前記有効期限の経過を計測することにより当該有効期限の経過時に前記アプリケーションプログラムに対してリソース解放を要求することとしてもよい。
また、前記アプリケーションプログラムはリソース解放の要求を受けると、リソースの使用を中止して、リソースを解放した旨を前記リソース使用管理手段に通知し、前記リソース使用管理手段はリソースを解放した旨の前記通知を受けると、これに応じて前記リソース管理用情報データベース中の使用権情報を更新することとしてもよい。
【０１１２】
これらにより、何らかの要因により不必要に長い間リソースを使用し続けるアプリケーションプログラム等によって他のアプリケーションプログラムによるリソースの確保が妨害されることを回避できる。
また、前記リソース使用管理手段は、アプリケーションプログラムからリソースの使用要求を受けるに際して、アプリケーションプログラムが必要とする最小限度のリソースの数量を示す最小要求量情報を受け取り、前記リソース管理用情報データベースに格納するものであり、前記リソース使用管理手段は、アプリケーションプログラムからリソースの使用要求を受けた場合に、当該リソースについて、前記最小要求量情報の示す数量以上の第１量の使用を許容できる場合には、当該アプリケーションプログラムに当該リソースについての使用権を付与するとともに、前記リソース管理用情報データベース中の使用権情報を、前記アプリケーションプログラムによる前記使用要求に対して第１量の使用権が付与されていることを示すように更新することとしてもよい。
【０１１３】
これにより、リソース使用管理手段は、アプリケーションプログラムが必要とする最小限度の量以上のリソースの使用を許容できる場合に、そのアプリケーションプログラムにリソースの使用権を付与するので、このリソース管理システムによれば、例えば、映像データの実時間での再生処理等を行うアプリケーションプログラムに対して、使用権の付与をもってその再生処理等に必要なリソースの確保を保証するといった制御が実現される。
【０１１４】
また、前記リソース使用管理手段は、アプリケーションプログラムからリソースの使用要求を受けるに際して、リソースを必要とする程度を示す優先度情報を受け取り、当該優先度情報を前記リソース管理用情報データベースに格納するものであり、前記リソース使用管理手段は、アプリケーションプログラムからリソースの使用要求を受けた場合に、当該使用要求に対応する優先度情報と、当該リソースについて既になされている他のアプリケーションプログラムによる使用要求に対応する前記リソース管理用情報データベース内の優先度情報とを比較することにより当該リソースの使用を許容できるか否かという前記判断を行うこととしてもよい。
【０１１５】
これにより、あるアプリケーションプログラムによりリソースが使用されている場合に、他のアプリケーションプログラムによりリソースの使用要求がなされたときに、優先度に基づいて、両者を調整するので、アプリケーションプログラムの処理内容等に基づくリソースの必要性に応じて優先度を設定することにより、適切なリソース配分を行うことができるようになる。
【０１１６】
また、前記優先度情報は、リソース取得の必要な程度を示す取得優先度情報と、取得後にリソースを使用継続することの必要な程度を示す使用継続優先度情報とを含み、前記リソース使用管理手段は、アプリケーションプログラムからリソースの使用要求を受けた場合に、当該使用要求に対応する取得優先度情報と、当該リソースについて既になされている他のアプリケーションプログラムによる使用要求に対応する前記リソース管理用情報データベース内の使用継続優先度とを比較することにより当該リソースの使用を許容できるか否かという前記判断を行うこととしてもよい。
【０１１７】
これにより、アプリケーションプログラムは実行する処理内容によって、リソースを取得することに関する優先度と、リソースを取得した後に使用を継続することに関する優先度とをそれぞれ異なるように設定することができるので、例えば、一度リソースを取得できた場合にはそのリソースを使用してのデータ転送等を中断できないような処理内容をもつアプリケーションプログラムにとっては処理の完全な実行が保証されるようになる。即ち、このリソース管理システムによれば、各アプリケーションプログラムの処理内容に応じたリソース配分の制御が実現できる。
【０１１８】
また、前記リソースはデータ転送経路として用いられるものであり、前記リソース使用管理手段によるアプリケーションプログラムに対しての使用権の付与は、前記リソース管理用情報データベース内の前記使用権情報中の、当該アプリケーションプログラムによる使用要求に対して割り当てた使用権の分量を示す現在使用量情報を、特定するためのＩＤを通知することにより行われ、前記アプリケーションプログラムは、通知された前記ＩＤをサーバプログラムに通知することにより、当該サーバプログラムを介してリソースを使用してのデータ転送を行うクライアントプログラムであり、前記サーバプログラムは、前記アプリケーションプログラムから通知されたＩＤを用いて、前記リソース管理用情報データベース内に格納されている現在使用量情報を特定し、当該現在使用量情報を参照してこれに従った分量を使用してデータ転送を行うこととしてもよい。
【０１１９】
これにより、分量を特定してのリソースの使用権の付与がなされるので、リソースを直接使用してデータ転送を行うサーバプログラムを、リソースの使用権の分量に従ってデータ転送を行うものとしておけば、各クライアントプログラムはその処理内容に応じて必要な分量だけリソースを使用することができる。このことは、クライアントプログラムにとっては、リソースマネージャからある分量の使用権を取得しさえすれば、その分量のリソースを使用できることが保証される意義をもつ。従って、このリソース管理システムによれば、例えば非同期系処理を行うアプリケーションプログラムと同期系処理を行うアプリケーションプログラム等のそれぞれが必要とするデータ転送帯域幅等の条件が異なる複数のアプリケーションプログラムを、それぞれが必要とする条件の確保を保証して並列に実行させることができる。
【０１２０】
また、前記リソースは、データ転送用のローカルバスであり、前記リソースの使用の許容限界及び使用権の分量は、データ転送帯域幅で表され、前記サーバプログラムは、前記現在使用量情報の示すデータ転送帯域幅でデータ転送を行うこととしてもよい。
これにより、ＰＣＩバス等のローカルバスを利用してデータ転送を行う複数のアプリケーションプログラムそれぞれに、ＰＣＩバス等のデータ転送帯域幅の限界内で、使用できるデータ転送帯域幅を分け与え、そのデータ転送帯域幅でＰＣＩバス等を用いたデータ転送を実行できることを保証することができる。即ち、各アプリケーションプログラムは自らが必要とするデータ転送帯域幅の確保の保証を得ることができる。
【０１２１】
また、前記リソース使用管理手段は、第２のアプリケーションプログラムからリソースについての第２の使用要求を受けた場合に、当該使用要求に対応する優先度情報と、当該リソースについて既になされている第１のアプリケーションプログラムによる第１の使用要求に対応する前記リソース管理用情報データベース内の優先度情報とを比較して、前記第１の使用要求についてのリソースを必要とする程度の方が低いときには、前記第１のアプリケーションプログラムに対して付与している使用権の分量を低減させるとともに当該使用権についての有効期限を延長し、前記第２のアプリケーションプログラムに対して使用権を付与することとしてもよい。
【０１２２】
これにより、リソースの使用要求の優先度に基づく調整の結果として、優先度が低いアプリケーションプログラムはリソースを使用できる分量を減らされるとともに使用できる有効期限を延長されるので、優先度が低いアプリケーションプログラムにとってもデータ転送を完遂することができることが保証される。
また、前記リソース使用管理手段は、前記第２のアプリケーションプログラムから前記第２の使用要求を受けて、前記第１のアプリケーションプログラムに対して付与していた使用権の分量を低減させて第２のアプリケーションプログラムに対して使用権を付与した場合には、後に前記第２のアプリケーションプログラムによるリソースの使用が終了したときに、前記第１のアプリケーションプログラムに対して付与している使用権の分量を増大させることとしてもよい。
【０１２３】
これにより、リソースの使用要求の優先度に基づく調整の結果として、優先度が低いアプリケーションプログラムに対してのリソースの使用可能分量を減らした後に、また可能となれば分量を増やす制御、即ち、リソースの使用状況に応じた動的なリソース配分の調整制御がなされるので、リソースの有効活用が図られる。
【０１２４】
また、前記リソース使用管理手段は、アプリケーションプログラムからリソースの使用要求を受けた場合に、当該リソースの使用を許容できないと判断したとき、当該リソースの使用を許容できるようになるのを待って当該アプリケーションプログラムに対して当該リソースについての使用権を付与することとしてもよい。
【０１２５】
これにより、アプリケーションプログラムは、リソースが即座には使用できない場合でも使用可能となるのを待ってそのリソースを使用することができる。即ち、リソースが使用できない場合にはその使用の予約をすることができる。
また、前記リソース使用管理手段は、アプリケーションプログラムからリソースの使用要求を受けた場合に、当該リソースについて既に他のアプリケーションプログラムに使用権を付与しているために当該使用要求に対してリソースの使用を許容できないと判断した場合には、前記他のアプリケーションプログラムに付与している使用権に付された有効期限に基づいて有効期限が切れるまでの時間を示す情報を当該使用要求を行ったアプリケーションプログラムに通知することとしてもよい。
【０１２６】
これにより、アプリケーションプログラムは、いつからリソースを使用可能となるかを知ることができ、例えば使用可能となる時刻を画面に表示する等によりユーザに知らしめること等が可能となる。
また、前記リソース使用管理手段は、アプリケーションプログラムによるリソース群についての使用要求を受けた場合には、当該リソース群の使用を許容できるか否かを判断し、使用を許容できるときには、当該アプリケーションプログラムに当該リソース群の使用権を付与するとともにこれに対応して前記リソース管理用情報データベース中の使用権情報を更新することとしてもよい。
【０１２７】
これにより、アプリケーションプログラムは、複数のリソースの一括確保が可能となるため、デッドロックを回避することができるようになる。
また、前記リソース使用管理手段は、リソース群の使用権を付与したアプリケーションプログラムから、当該リソース群に含まれる一部のリソースについてある数量分だけ解放した旨の通知を受けた場合には、リソース管理用情報データベース中の使用権情報が示す当該リソースについて使用権を割り当てた分量を当該数量に応じて更新することとしてもよい。
【０１２８】
これにより、アプリケーションプログラムは、一括確保したリソースのうちの一部を解放することができるので、そのリソースを他のアプリケーションプログラムが使用できるようになる。
また、本発明に係るリソース管理システムは、複数のアプリケーションプログラムによるリソースの使用の管理を行うリソース管理システムであって、ここで、前記アプリケーションプログラムは、あるリソースについて、ある有効期限内に、ある分量の使用を許可する旨の情報である使用権を得た場合に、当該有効期限内において当該分量の当該リソースを使用するものであり、前記リソース管理システムは、リソースの使用開始時期と使用終了時期とを特定する使用期間情報を伴ってアプリケーションプログラムからなされるリソースの使用を望む旨の予約を受け付けるリソース要求受付手段と、リソースの使用の許容限界を示す限界情報と、アプリケーションプログラムに対して予約に応じて与えたリソースの使用権の分量を示す使用権情報及び当該予約に係る使用期間情報とを記憶するリソース管理用情報データベースと、前記リソース要求受付手段を介してリソースの予約を受け付け、前記限界情報、前記使用権情報及び前記使用期間情報に基づいて、当該予約についての使用開始時期から使用終了時期までの間において予約されたリソースの使用を許容できるか否かを判断し、使用を許容できる場合には、当該使用開始時期になり次第、当該使用終了時期までの有効期限が付された使用権を予約元のアプリケーションプログラムに与えるとともに、前記使用権情報及び前記使用期間情報を更新するリソース使用管理手段とを備えることを特徴とする。
【０１２９】
これにより、各アプリケーションプログラムは、将来におけるリソースの使用を確実に行うこと、即ち将来のリソースの確保の保証を得ることができるようになる。
【図面の簡単な説明】
【図１】本発明の１つの実施の形態であるノンリニア編集システム１０００のハードウェア構成を示す図である。
【図２】ノンリニア編集システム１０００のソフトウェア構成を示す図である。
【図３】リソース使用要求詳細情報２５００の内容を示す図である。
【図４】リソース管理ＤＢ２０２０の内容を示す図である。
【図５】クライアントからリソース使用要求を受けた場合にリソースマネージャの行うリソース使用要求対応処理を示すフローチャートである。
【図６】クライアントがリソースを使用する場合のメッセージシーケンスの一例を示す図である。
【図７】クライアントがリソースを使用している際にキー情報の有効期限が切れた場合のメッセージシーケンスの一例を示す図である。
【図８】クライアント２１００ｂがリソースを使用している間にクライアント２１００ａがリソース使用要求を行った場合のメッセージシーケンスの一例を示す図である。
【図９】クライアント２１００ｂの使用に対応するキー情報の有効期限が延長される前後における現在リソース使用量と有効期限との関係を表す図である。
【図１０】リソース使用に関するデータ転送帯域幅と有効期限との変化をユーザに通知するためのＧＵＩ画面の例を示す図である。
【図１１】クライアント２１００ｃがリソースを使用している間にクライアント２１００ｂがリソース使用要求を行った場合のメッセージシーケンスの一例を示す図である。
【図１２】リソースが解放されるまでの時間に関する情報をユーザに提示するためのＧＵＩ画面の例を示す図である。
【図１３】第１変形例において、クライアント２１００ｂがリソースを使用している間にクライアント２１００ａがリソース使用要求を行った場合のメッセージシーケンスの一例を示す図である。
【図１４】クライアント２１００ｂの現在リソース使用量と有効期限との関係を表す図である。
【図１５】第２変形例におけるリソース管理ＤＢ２０２０中のリソース管理予定表の内容例を表現した図である。
【図１６】ネットワーク上に分散しているリソースを１つのリソースマネージャによって一元管理するシステムの例を示す図である。
【図１７】ディジタル映像再生録画装置におけるハードウェア資源と、デジタイザ機能が実行された場合のデータフローを示す図である。
【図１８】編集機能が実行された場合のデータフローを示す図である。
【図１９】デジタイザＡＰの起動後にエディタＡＰが起動された場合のメッセージシーケンスの一例を示す図である。
【図２０】複数のリソースの一括確保が必要な場合に用いられるリソース使用要求詳細情報６５００のデータ構造及び内容例を示したものである。
【図２１】複数のリソースの使用要求に対応した直後のリソース管理ＤＢの内容を示す図である。
【図２２】リソース部分解放詳細情報６７００のデータ構造及び内容例を示す図である。
【図２３】デジタイザＡＰがプレビュー処理を停止した後にエディタＡＰが起動された状態でのリソース管理ＤＢの内容を示す図である。
【図２４】リソース追加取得詳細情報６８００のデータ構造及び内容例を示す図である。
【符号の説明】
１１１    ハードディスク装置
１１２，１１３  ＣＯＤＥＣ
１１４    スイッチ
１１５    ＭＩＸ回路
１１６    Ｄ／Ａコンバータ
１１７    Ａ／Ｄコンバータ
１０００    ノンリニア編集システム
１０１０    ＣＰＵ
１０２０    メモリ
１０３０    ユーザ入力受付装置
１０４０    ＰＣＩバス
１０５０    エフェクトボード
１０５１    映像入出力装置
１０５２    モニタ
１０５３    ディスプレイ
１０６０    ＳＣＳＩボード
１０６１    ハードディスク装置
１０７０    ネットワークカード
２０１０    リソースマネージャ
２０２０    リソース管理ＤＢ
２１００ａ〜２１００ｍ  クライアント
２２００ａ〜２２００ｎ  サーバ
２３００ａ〜２３００ｎ  リソース
２５００    リソース使用要求詳細情報
３１００    リソース管理情報
３２００    キー情報
５００１    ノンリニア編集機
５００２    リソース管理装置付ビデオサーバ
５００３，５００４      ネットワーク端末
【図１】
0004377028.tif 000002
【図２】
0004377028.tif 000003
【図３】
0004377028.tif 000004
【図４】
0004377028.tif 000005
【図５】
0004377028.tif 000006
【図６】
0004377028.tif 000007
【図７】
0004377028.tif 000008
【図８】
0004377028.tif 000009
【図９】
0004377028.tif 000010
【図１０】
0004377028.tif 000011
【図１１】
0004377028.tif 000012
【図１２】
0004377028.tif 000013
【図１３】
0004377028.tif 000014
【図１４】
0004377028.tif 000015
【図１５】
0004377028.tif 000016
【図１６】
0004377028.tif 000017
【図１７】
0004377028.tif 000018
【図１８】
0004377028.tif 000019
【図１９】
0004377028.tif 000020
【図２０】
0004377028.tif 000021
【図２１】
0004377028.tif 000022
【図２２】
0004377028.tif 000023
【図２３】
0004377028.tif 000024
【図２４】
0004377028.tif 000025