JP5521403B2 - 情報処理装置とリソース管理方法およびプログラム - Google Patents

情報処理装置とリソース管理方法およびプログラム Download PDF

Info

Publication number
JP5521403B2
JP5521403B2 JP2009148786A JP2009148786A JP5521403B2 JP 5521403 B2 JP5521403 B2 JP 5521403B2 JP 2009148786 A JP2009148786 A JP 2009148786A JP 2009148786 A JP2009148786 A JP 2009148786A JP 5521403 B2 JP5521403 B2 JP 5521403B2
Authority
JP
Japan
Prior art keywords
resource
information
processing
codec
manager
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.)
Expired - Fee Related
Application number
JP2009148786A
Other languages
English (en)
Other versions
JP2011008340A (ja
Inventor
悠史 西牧
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 JP2009148786A priority Critical patent/JP5521403B2/ja
Priority to US12/815,857 priority patent/US20100325638A1/en
Priority to CN2010102053679A priority patent/CN101930380A/zh
Publication of JP2011008340A publication Critical patent/JP2011008340A/ja
Application granted granted Critical
Publication of JP5521403B2 publication Critical patent/JP5521403B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5055Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Description

この発明は、情報処理装置とリソース管理方法およびプログラムに関する。詳しくは、アプリケーションからのコーデック処理要求に対してリソースの管理を容易に行えるようにする。
従来、情報信号例えば映像データや音声データ等の記録再生処理や通信処理等において、情報信号の符号化処理や復号化処理が種々の方式を用いて行われている。
このような情報信号の符号化処理や復号化処理を行う場合、例えば特許文献1では、コンテンツデータの復号化処理に必要とされるリソースに関する情報に基づき、記録再生装置において復号化処理が可能な最適なコーデックをサーバ装置で割り出すことが行われている。また、格納されているコンテンツデータから、このコーデックで処理されたコンテンツデータを選択して記録再生装置に送信する処理が行われる。さらに、割り出された最適なコーデックを記録再生装置が備えていないときは、デコードプログラムを情報信号と共にサーバ装置から記録再生装置に送信することが行われている。
特開2006−31337号公報
ところで、記録再生装置やサーバ装置等で、映像データや音声データ等の符号化処理や復号化処理を行う場合、リソース毎の利用状況を管理しておかなければ、空きリソースの割り当て等を行うことができない。しかし、このようなリソース管理をアプリケーションで行うものとすると、アプリケーション毎にリソースの管理を行わなければならずアプリケーションの開発やアプリケーションにおける処理が複雑となり、リソースの割り当て等を容易に行うことができない。
そこで、この発明ではリソースの割り当て等のリソース管理を容易に行うことができる情報処理装置とリソース管理方法およびプログラムを提供することを目的とする。
この発明の第1の側面は、アプリケーションからのコーデック処理要求に対してリソースを割り当てるリソースマネージャを備え、前記リソースマネージャは、コーデック処理機能とリソースの関係を示す第1の情報と、リソースの使用状況を示す第2の情報を有しており、前記第1の情報に基づき前記アプリケーションからのコーデック処理要求に対応するコーデック処理機能を有したリソースを判別して、前記第2の情報に基づき前記判別されたリソースから空きリソースを選択して割り当てるものとし、前記空きリソースの割当てでは、前記コーデック処理要求に応じて、処理の時間に関するパラメータとソフトウェア処理の負荷率に関するパラメータを用いて優先度を決定するための優先度決定パラメータを前記リソース毎に算出して、該算出した優先度決定パラメータに基づき、前記優先度が最も高いリソースを選択する情報処理装置にある。
この発明において、リソースマネージャは、コーデック処理機能とリソースの関係を示す第1の情報と、リソースの使用状況を示す第2の情報を有しており、第1の情報に基づきアプリケーションからのコーデック処理要求に対応するコーデック処理機能を有したリソースを判別する。また、リソースマネージャは、応答時間とリソースの占有時間からリソース毎に優先度の算出を行い、応答時間については応答時間が短いリソースの優先度を高くして、占有時間については占有時間の短いリソースの優先度を高くする。さらに、リソースマネージャは、ソフトウェアリソースに対してソフトウェア処理における負荷率を用いて優先度の算出を行い、負荷率が低いリソースの優先度を高くする。リソースマネージャは、第1の情報に基づいて判別されたリソースから、第2の情報に基づいて空きリソースを選択して、最も優先度の高いリソースを割り当てる。さらに、リソースマネージャは、リソースの割り当てに応じて第2の情報の更新を行う。
また、リソースマネージャは、割り当てたリソースにおけるコマンド実行状況を示す第3の情報を有しており、アプリケーションからリソース解放要求が発行されたとき、リソースマネージャは、第3の情報でコマンドの実行の終了が示されたのちアプリケーションに割り当てたリソースを解放する。さらに、リソースマネージャは、割り当てたリソースからのコマンド実行終了の通知に応じて第3の情報の更新を行い、アプリケーションに割り当てたリソースの解放に応じて第2の情報の更新を行う。
さらに、リソースマネージャは、アプリケーションからのコーデック処理要求に応じて、割り当てられたリソースをリソースコントローラによって制御してコーデック処理を行わせることで、アプリケーションに対してリソースの制御を隠蔽する。
この発明の第2の側面は、リソースマネージャが、コーデック処理機能とリソースの関係を示す第1の情報に基づき、アプリケーションからのコーデック処理要求に対応するコーデック処理機能を有したリソースを判別するステップと、リソースマネージャが、リソースの使用状況を示す第2の情報に基づき、前記判別されたリソースから空きリソースを選択して割り当てるものとし、前記空きリソースの割当てでは、前記コーデック処理要求に応じて、処理の時間に関するパラメータとソフトウェア処理の負荷率に関するパラメータを用いて優先度を決定するための優先度決定パラメータを前記リソース毎に算出して、該算出した優先度決定パラメータに基づき、前記優先度が最も高いリソースを選択するステップとを具備するリソース管理方法にある。
この発明の第3の側面は、情報処理装置を、コーデック処理機能とリソースの関係を示す第1の情報に基づき、アプリケーションからのコーデック処理要求に対応するコーデック処理機能を有したリソースを判別する機能手段と、リソースの使用状況を示す第2の情報に基づき、前記判別されたリソースから空きリソースを選択して割り当てるものとし、前記空きリソースの割当てでは、前記コーデック処理要求に応じて、処理の時間に関するパラメータとソフトウェア処理の負荷率に関するパラメータを用いて優先度を決定するための優先度決定パラメータを前記リソース毎に算出して、該算出した優先度決定パラメータに基づき、前記優先度が最も高いリソースを選択する機能手段として機能させるためのプログラムにある。
なお、本発明のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置に対して、可読な形式で提供する記憶媒体、通信媒体、例えば、光ディスクや磁気ディスク、半導体メモリなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なプログラムである。このようなプログラムを可読な形式で提供することにより、情報処理装置上でプログラムに応じた処理が実現される。
この発明によれば、リソースマネージャによって、コーデック処理機能とリソースの関係を示す第1の情報に基づき、アプリケーションからのコーデック処理要求に対応するコーデック処理機能を有したリソースが判別される。さらに、リソースマネージャによって、リソースの使用状況を示す第2の情報に基づき、判別されたリソースから空きリソースが選択されて割り当てられる。
したがって、リソースが例えばハードウェアリソースであるかソフトウェアリソースであるか区別することなく、自動的に空きリソースを割り当てることができる。また、リソース確保時に、アプリケーションがリソースの使用状況を把握しなくとも、リソースを割り当てることができるようになり、リソース管理が容易となる。
情報処理装置の機能ブロック図である。 情報処理装置のソフトウェア構成を示す図である。 リソースマネージャの構成を示す図である。 リソース確保命令が発行されたときのリソースマネージャの動作を示すフローチャートある。 符号化命令が発行されたときのリソースマネージャの動作を示すフローチャートある。 符号化命令をリソースに対して発行した後のリソースマネージャの動作を示すフローチャートである。 リソース解放命令が発行されたときのリソースマネージャの動作を示すフローチャートである。 リソースの優先度の決定を示すフローチャートである。
以下、発明を実施するための形態について説明する。なお、説明は以下の順序で行う。
1.情報処理装置の構成
2.リソース管理動作
<1.情報処理装置の構成>
図1は、本発明の情報処理装置の機能ブロック図を示している。情報処理装置10は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、ハードウェアコーデック部14を有している。また、情報処理装置10は、ユーザインタフェース部15、入力部16、出力部17、記憶部18、通信部19、メディアドライブ部20、表示部21等を有している。また、情報処理装置10の各部は、バス25を介して接続されている。
CPU11は、ROM12、または記憶部18に記憶されているプログラムにしたがって各種の処理を実行する。例えば、種々のアプリケーションやリソース管理を行うための種々の情報の作成や更新等を行う。
RAM13には、CPU11が実行するプログラムやデータなどが適宜記憶される。
ハードウェアコーデック部14は、情報信号の符号化処理や復号化処理を行う。ハードウェアコーデック部14は、符号化処理や復号化処理を行うハードウェアコーデックが1または複数設けられている。
ユーザインタフェース部15は、キーボードやポインティングデバイス、リモートコントロール信号受信部等を用いて構成されており、ユーザ操作に応じた操作信号をCPU11に出力する。
入力部16は外部機器(図示せず)から供給された情報信号例えば画像信号や音声信号等を、情報処理装置10で処理可能なデータに変換する。出力部17は、外部機器に出力する情報信号を外部機器に対応したデータに変換して出力する。
記憶部18は、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)等の記憶装置が用いられている。記憶部1には、CPU11が実行するプログラム例えばアプリケーションや、API(Application Program Interface)、デバイスドライバ、ソフトウェアコーデック等が記憶される。また、記憶部18には、情報信号例えば映像データや音声データ等も必要に応じて記憶される。
通信部19は、情報処理装置10を外部のネットワーク等に接続するためのものであり、通信部19を介してネットワーク上の他の機器と通信を行う。この通信部19を介して他の機器から取得した種々のデータやプログラム等は、例えばRAM13や記憶部18に記憶されて、必要に応じてCPU11によって読み出される。なお、ROM12が書き換え可能であるとき、通信部19を介して取得したプログラムで、ROM12に記憶されているプログラムを更新することも行われる。
メディアドライブ部20は、装着されているリムーバブルメディア30、例えば磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどに記録されている種々のデータやプログラム等の読み出しを行うためのものである。なお、読み出されたプログラムは、通信部19で取得したプログラムと同様に処理される。
表示部21は、表示素子例えば液晶パネル等を用いて構成されており、ユーザに対して各種情報表示を行う。例えば、CPU11が各種動作状態や入力状態、通信状態に応じて表示情報を表示部21に供給すると、表示部21は表示情報に基づき表示素子を駆動して動作状態等の表示を行う。
なお、情報処理装置10は、ハードウェアコーデックやソフトウェアコーデックおよびAPIを有する構成であれば、図1に示す機能ブロック図の構成に限られるものではない。
図2は、情報処理装置のソフトウェア構成を示している。情報処理装置10は、アプリケーション51-1〜51-i、API(Application Program Interface)60、デバイスドライバ71を有したソフトウェア群を備えている。また、情報処理装置10は、ハードウェアで構成されて情報信号の符号化処理や復号化処理を行うハードウェアコーデック14-1〜14j、ソフトウェアで構成されて情報信号の符号化処理や復号化処理を行うソフトウェアコーデック81-1〜81-kを有している。
アプリケーション51-1〜51-iは、情報信号の記録再生や編集および加工等を行うためのプログラムである。アプリケーション51-1〜51-iは、記録再生や編集および加工等において情報信号の符号化処理や復号化処理を行うとき、コーデック処理要求例えばリソース確保命令や符号化命令,復号化命令の出力を行う。また、アプリケーション51-1〜51-iは、情報信号の符号化処理や復号化処理を終了するとき、リソース解放命令の出力を行う。なお、アプリケーションは、複数である場合に限られるものではなく1つであってもよい。
API60は、アプリケーション51-1〜51-iから出力された命令の解釈等を行い、リソースの管理や自動切り替えを実現する。例えば、API60は、リソースの占有状態に応じてハードウェアコーデックやソフトウェアコーデック等のリソースの割り当てや解放を行う。また、API60は、符号化処理や復号化処理を行うための命令を割り当てたリソースに分配または発行する。
API60は、ファンクションマネージャ61、コールバックマネージャ62、リソースマネージャを有している。
ファンクションマネージャ61は、どのようなハードウェアコーデックやソフトウェアコーデックを有しているか識別可能とする関数や情報等を管理して、アプリケーション51-1〜51-iに対して提供可能とする。
コールバックマネージャ62は、ハードウェアコーデックやソフトウェアコーデックに対して処理要求を行ったときに、処理要求に対する戻り値の管理を行う。
リソースマネージャ63は、ファンクションマネージャ61やコールバックマネージャ62で管理されている関数や情報を利用して、ハードウェアリソースであるハードウェアコーデックやソフトウェアリソースであるソフトウェアコーデックのリソース管理を行う。また、リソースマネージャ63は、アプリケーション51-1〜51-iからのリソース確保命令やリソース解放命令に応じて、最適なリソースの提供およびリソースの解放を行う。
ハードウェアコーデック14-1〜14-jとソフトウェアコーデック81-1〜81-kは、それぞれ情報信号の符号化処理や復号化処理を行うリソースである。ハードウェアコーデック14-1〜14-jとソフトウェアコーデック81-1〜81-kは、符号化処理または復号化処理のいずれかの一方の処理を行うコーデックであってもよく、符号化処理と復号化処理の両方の処理を行うコーデックであってもよい。また、ハードウェアコーデック14-1〜14-jとソフトウェアコーデック81-1〜81-kは、同じ方式のコーデックであってもよく、異なる方式のコーデックであってもよい。
図3は、リソースマネージャの構成を示している。リソースマネージャ63は、ハードウェアリソースコントローラ631、ソフトウェアリソースコントローラ632、コントロールマネージャ633を有している。
ハードウェアリソースコントローラ631は、ハードウェアリソースとアプリケーションとのインタフェースを提供するリソースコントローラである。また、ソフトウェアリソースコントローラ632は、ソフトウェアリソースとアプリケーションとのインタフェースを提供するリソースコントローラである。ハードウェアリソースコントローラ631やソフトウェアリソースコントローラ632は、アプリケーションからの符号化命令や復号化命令に応じてハーウェアリソースやソフトウェアリソースを制御して、符号化処理や復号化処理をリソースで行わせる。
このように、ハードウェアリソースコントローラ631やソフトウェアリソースコントローラ632を介してリソースを動作させることで、上位のアプリケーションに対して、リソースの制御をリソースマネージャ63で隠蔽して、符号化処理や復号化処理を共通のインタフェースで各アプリケーションから行えるようにする。
コントロールマネージャ633は、コーデック処理機能とリソースとの関係を示す第1の情報、例えば機能−リソース対応表633aを有している。また、コントロールマネージャ633は、リソースの使用状況を示す第2の情報、例えばリソース使用状況管理表633bを有している。さらに、コントロールマネージャ633は、割り当てたリソースにおけるコマンド実行状況を示す第3の情報、例えば実行情報管理表633cを有している。
コントロールマネージャ633は、アプリケーション51-1〜51-iのいずれかでコーデック処理要求が行われたとき、機能−リソース対応表633aに基づきのコーデック処理要求に対応するコーデック処理機能を有したリソースを判別する。また、コントロールマネージャ633は、リソース使用状況管理表633bに基づき、判別されたリソースから空きリソースを選択して、コーデック処理要求を行ったアプリケーションに対して選択した空きリソースを割り当てる。
機能−リソース対応表633aは、上述のようにコーデック処理機能とリソースの対応関係を示している。例えば、情報処理装置10は、ハードウェアリソースとして、MPEG(Moving Picture Experts Group)−2方式の符号化処理と復号化処理が可能なハードウェアコーデック14-1と、MPEG−4方式の符号化処理と復号化処理が可能なハードウェアコーデック14-2を有している。また、情報処理装置10は、ソフトウェアリソースとして、MPEG−2方式の符号化処理と復号化処理が可能なソフトウェアコーデック81-1と、MPEG−4方式の復号化処理のみが可能なソフトウェアコーデック81-2を有している。この場合、機能−リソース対応表633aは、表1に示すようになる。なお機能IDは、コーデック処理機能の機能名毎に割り当てた識別値である。
Figure 0005521403
表1の機能ID「1」では、MPEG−2の方式の符号化処理を行うとき、ハードウェアコーデック14-1またはソフトウェアコーデック81-1を必要とすることが示されている。機能ID「2」では、MPEG−2の方式の復号化処理を行うとき、ハードウェアコーデック14-1またはソフトウェアコーデック81-1を必要とすることが示されている。また、機能ID「3」では、MPEG−4の方式の符号化処理を行うとき、ハードウェアコーデック14-2を必要とすることが示されている。さらに、機能ID「4」では、MPEG−2の方式の復号化処理を行うとき、ハードウェアコーデック14-2またはソフトウェアコーデック81-2を必要とすることが示されている。
リソース使用状況管理表633bは、リソースの使用状況を示している。なお、情報処理装置10には、上述のようにハードウェアコーデック14-1,14-2と、ソフトウェアコーデック81-1,81-2が設けられているものとする。
ここで、例えば情報処理装置10のアプリケーション51-1ではハードウェアコーデック14-1を用いており、アプリケーション51-2ではハードウェアコーデック14-2を用いているものとする。この場合、リソース使用状況管理表633bは、表2に示すようになる。
Figure 0005521403
表2に示すハードウェアコーデック14-1では、機能ID「1,2」すなわちMPEG−2の方式の符号化処理と復号化処理が可能であることが示されている。また、ハードウェアコーデック14-1は、アプリケーション51-1によって占有されている状態であることが示される。
また、ハードウェアコーデック14-2では、機能ID「3,4」すなわちMPEG−4の方式の符号化処理と復号化処理が可能であることが示されている。また、ハードウェアコーデック14-2は、アプリケーション51-2によって占有されている状態であることが示される。
ソフトウェアコーデック81-1では、機能ID「1,2」すなわちMPEG−2の方式の符号化処理と復号化処理が可能であることが示されている。また、ソフトウェアコーデック81-1は、利用されていない状態すなわち空きリソースであることが示される。
ソフトウェアコーデック81-2では、機能ID「4」すなわちMPEG−4の方式の復号化処理のみが可能であることが示されている。また、ソフトウェアコーデック81-2は、空きリソースであることが示される。
さらに、各リソースには、空きリソースから最適なリソースを選択可能とするための優先度が設定されている。なお、優先度については後述する。
実行情報管理表633cは、アプリケーションに割り当てたリソースにおけるコマンド実行状況を示している。なお、情報処理装置10には、上述のようにハードウェアコーデック14-1,14-2と、ソフトウェアコーデック81-1,81-2が設けられているものとする。
ここで、例えば情報処理装置10のアプリケーション51-1に対してハードウェアコーデック14-1が割り当てられているときの実行情報管理表633c-1は、表3に示すようになる。
Figure 0005521403

表3において、アプリケーション51-1は、ハードウェアコーデック14-1を用いてMPEG−2の方式の符号化処理あるいは復号化処理が行われていることが示される。また、実行情報管理表633cでは、実行カウンタが設けられている。実行カウンタは、符号化命令や復号化命令の実行状況を管理するためのカウンタである。実行カウンタは、例えば命令が発行されたときカウント値をインクリメントする。また、実行カウンタは、命令の完了を示すコールバックの関数が返ってきたらカウント値をデクリメントする。したがって、実行カウンタのカウント値に基づき、命令の実行状況を管理することができる。
<2.リソース管理動作>
次に、情報処理装置10で行われるリソース管理動作についてフローチャートを用いて説明する。
図4は、アプリケーションからコーデック処理要求としてリソース確保命令が発行されたときのリソースマネージャ63の動作を示している。なお、コーデック処理要求では、例えばアプリケーション51-3からMPEG−2方式の符号化処理を行うためのリソース確保命令が行われた場合を例示している。
ステップST1でリソースマネージャ63は、リソース確保要求が行われたか否かを判別する。リソースマネージャ63は、リソース確保命令が発行されていないときステップST1に戻り、リソース確保命令が発行されたときステップST2に進む。
ステップST2でリソースマネージャ63は、機能−リソース対応表を参照する。リソースマネージャ63は、機能−リソース対応表633aを参照して、コーデック処理を行うために必要となるリソースの情報を取得してステップST3に進む。例えばコーデック処理としてMPEG−2方式の符号化処理を行い、機能−リソース対応表633aが表1であるとき、リソースマネージャ63で取得されるリソースの情報は、「ハードウェアコーデック14-1またはソフトウェアコーデック81-1」となる。
ステップST3でリソースマネージャ63は、リソース使用状況管理表を参照する。リソースマネージャ63は、リソース使用状況管理表633bを参照して、ステップST2で取得した情報で示されているリソースの使用状況を取得する。例えばステップST2で取得した情報が「ハードウェアコーデック14-1またはソフトウェアコーデック81-1」であり、機能−リソース対応表633aは表2とする。この場合、リソースマネージャ63で取得されるリソースの使用状況は、「ハードウェアコーデック14-1はアプリケーション51-1で占有」「ソフトウェアコーデック81-1は空きリソース」となる。
ステップST4でリソースマネージャ63は、空きリソースが存在するか否かを判別する。リソースマネージャ63は、空きリソースが存在するときステップST5に進み、空きリソースが存在しないときはステップST11に進む。
ステップST5でリソースマネージャ63は、空きリソースが複数であるか否か判別する。リソースマネージャ63は、空きリソースが複数存在するときステップST6に進み、空きリソースが1つであるとき、空きリソースをコーデック処理に用いる占有リソースとしてステップST7に進む。
ステップST6でリソースマネージャ63は、優先度から占有リソースを決定する。リソースマネージャ63は、複数の空きリソースの優先度を比較して、優先度が最も高い1つの空きリソースを占有リソースに決定してステップST7に進む。
ステップST7でリソースマネージャ63は、リソース使用状況管理表の更新を行う。リソースマネージャ63は、コーデック処理を行う占有リソースを決定したことから、ソース使用状況管理表633bにおける占有リソースの占有状況を、空きリソースから占有状態に更新してステップST8に進む。例えば、リソース確保命令がアプリケーション51-3から発行されており、占有リソースが「ソフトウェアコーデック81-1」に決定されたとき、リソースマネージャ63は、リソース使用状況管理表633bを表2から表4に更新する。
Figure 0005521403

ステップST8でリソースマネージャ63は、リソース確保処理を行う。リソースマネージャ63は、アプリケーションからのリソース確保命令に対して、決定された占有リソースを割り当ててステップST9に進む。
ステップST9でリソースマネージャ63は、実行情報管理表の更新を行う。リソースマネージャ63は、リソース確保命令の発行を行ったアプリケーションと決定された占有リソースの情報およびコーデックのフォーマットの情報に基づき、実行情報管理表を更新してステップST10に進む。例えばアプリケーション51-3からMPEG−2方式の符号化処理を行うためのリソース確保命令が発行されて、占有リソースが「ソフトウェアコーデック81-1」に決定されたとき、表5に示す実行情報管理表633c-3を追加する。なお、アプリケーション51-3に対するリソース確保の通知前では、アプリケーション51-3から符号化命令や復号化命令の発行が行われていないので、実行カウンタは例えば「0」とする。
Figure 0005521403

ステップST10でリソースマネージャ63は、リソース確保完了通知を行う。リソースマネージャ63は、アプリケーションからのリソース確保命令に対して、占有リソースを確保したことから、リソース確保命令を発行したアプリケーションに対して、リソースの確保が完了したことを示す通知を行う。
ステップST4で空きリソースが存在しないと判別されてステップST11に進むと、リソースマネージャ63は、リソース確保失敗通知を行う。リソースマネージャ63は、アプリケーションからのリソース確保命令に対して、占有リソースを確保できないことから、リソース確保命令を行ったアプリケーションに対して、リソースの確保が失敗したことを示す通知を行う。
このようにリソースマネージャ63は、アプリケーションからのリソース確保命令に応じてリソースの確保処理を行い、処理結果をアプリケーションに通知する。
アプリケーションは、リソース確保完了通知がリソースマネージャ63から供給されたとき、コーデック命令の発行を行う。
次に、アプリケーションからコーデック処理要求として符号化命令や復号化命令が発行されたときのリソースマネージャ63の動作について説明する。図5は、例えばアプリケーション51-3からMPEG−2方式の符号化処理を行うための符号化命令が発行された場合を例示している。
ステップST21でリソースマネージャ63は、実行要求が行われたか否かを判別する。リソースマネージャ63は、コーデック処理の実行要求である符号化命令が発行されていないときステップST21に戻り、符号化命令が発行されたときステップST22に進む。
ステップST22でリソースマネージャ63は、実行情報管理表を参照する。リソースマネージャ63は、実行情報管理表を参照して、実行要求発行先であるリソースの情報を取得してステップST23に進む。例えば表5に示す実行情報管理表を参照して、アプリケーション51-3に対して確保されている占有リソースが「ソフトウェアコーデック81-1」であることを取得する。
ステップST23でリソースマネージャ63は、実行要求発行先のリソースを決定する。リソースマネージャ63は、実行情報管理表を参照して取得したリソース情報で示されたリソースを、実行要求発行先のリソースに決定してステップST24に進む。例えば、取得したリソース情報で「ソフトウェアコーデック81-1」が示されている場合、リソースマネージャ63は、アプリケーション51-3からの符号化命令の発行先を「ソフトウェアコーデック81-1」に決定する。
ステップST24でリソースマネージャ63は、実行カウンタを更新する。リソースマネージャ63は、実行要求発行先のリソースに対してアプリケーションからの実行要求の発行に際して、実行カウンタを更新して、実行要求の発行状況を把握可能とする。例えば、リソースマネージャ63は、アプリケーション51-3から符号化命令が発行される毎に実行カウンタをインクリメントする。また、符号化命令に対する処理の完了通知がリソースから供給される毎に実行カウンタをデクリメントする。
ステップST25でリソースマネージャ63は、リソースに実行要求を発行する。リソースマネージャ63は、実行要求発行先のリソースに対してアプリケーションからの実行要求を発行する。例えばリソースマネージャ63は、アプリケーション51-3からの符号化命令をソフトウェアコーデック81-1に発行する。また、リソースマネージャ63は、ソフトウェアリソースコントローラ632を介してソフトウェアコーデック81-1の制御を行い、アプリケーション51-3に対して、ソフトウェアコーデック81-1の制御をリソースマネージャ63で隠蔽する。したがって、アプリケーション51-3は、共通のインタフェースで符号化命令を発行するだけで、アプリケーション51-3から発行された符号化命令に応じた符号化処理をソフトウェアコーデック81-1で行わせることができる。
次に、アプリケーションからの符号化命令や復号化命令をリソースに対して発行した後のリソースマネージャ63の動作について説明する。図6は、例えばアプリケーションからの符号化命令をリソースに対して発行した後のリソースマネージャ63の動作を示している。
ステップST31でリソースマネージャ63は、リソースからコールバック要求が行われたか否かを判別する。リソースマネージャ63は、コールバック要求が行われていないときステップST31に戻り、コールバック要求が行われたときステップST32に進む。
ステップST32でリソースマネージャ63は、リソース使用状況管理表を参照する。リソースマネージャ63は、リソース使用状況管理表633bを参照して、コールバック要求を行ったリソースを用いているアプリケーションの情報を取得してステップST33に進む。例えば、リソース使用状況管理表633bが表4であり、ソフトウェアコーデック81-1からコールバック要求が行われたとき、リソースマネージャ63はリソース使用状況管理表633bから「アプリケーション51-3」の情報を取得する。
ステップST33でリソースマネージャ63は、コールバック先を特定する。リソースマネージャ63は、リソース使用状況管理表633bを参照して取得した情報で示されているアプリケーションをコールバック先としてステップST34に進む。
ステップST34でリソースマネージャ63は、実行情報管理表を参照する。リソースマネージャ63は、アプリケーションIDが、コールバック先として特定したアプリケーションを示している実行情報管理表を参照してステップST35に進む。
ステップST35でリソースマネージャ63は、実行カウンタの更新を行う。リソースマネージャ63は、リソースからコールバック要求が行われたことから、実行要求に対する処理の完了として実行カウンタをデクリメントしてステップST36に進む。
ステップST36でリソースマネージャ63は、アプリケーションに対してコールバック通知を行う。リソースマネージャ63は、コールバック先として特定されたアプリケーションに対して、実行要求に対する処理の完了を示すコールバック通知を行う。例えば、ソフトウェアコーデック81-1からコールバック要求が行われたとき、アプリケーション51-3に対して、符号化命令に対する処理が完了したことを示すコールバック通知を行う。
このように、リソースマネージャ63は、リソース使用状況管理表633bを参照することで、リソースからコールバック要求が行われたとき、符号化命令の発行元のアプリケーションに対して、処理の完了を示すコールバック通知を行うことができる。
また、実行情報管理表633cにおける実行カウンタのカウント値によって、アプリケーションからの符号化命令の処理が完了しているか否かを判別することができる。
次に、アプリケーションからコーデック処理要求としてリソース解放命令が発行されたときのリソースマネージャ63の動作について、図7のフローチャートを用いて説明する。
ステップST41でリソースマネージャ63は、リソース解放要求が行われたか否かを判別する。リソースマネージャ63は、リソース解放命令が発行されていないときステップST41に戻り、リソース解放命令が発行されたときステップST42に進む。
ステップST42でリソースマネージャ63は、実行情報管理表を参照する。リソースマネージャ63は、アプリケーションIDが、リソース解放要求を行ったアプリケーションを示している実行情報管理表を参照して、実行カウンタのカウント値を取得してステップST43に進む。例えば、アプリケーション51-3でリソース解放要求が行われたとき、アプリケーション51-3に関する表5に示す実行情報管理表633c-3を参照してカウント値を取得する。
ステップST43でリソースマネージャ63は、実行要求の処理が完了しているか否かを判別する。リソースマネージャ63は、実行情報管理表を参照して取得した情報に基づき、実行要求の処理が完了しているか否かを判別する。リソースマネージャ63は、カウント値が実行要求の処理の完了を示していないときはステップST42に戻り、処理の完了を示しているときはステップST44に進む。例えば、リソースマネージャ63は、実行カウンタの初期値を「0」として、符号化命令の発行に応じて実行カウンタをインクリメントして、符号化命令に対する処理の完了通知が供給されたとき実行カウンタをデクリメントする。この場合、カウンタ値が「0」でないときは符号化命令に対する処理が完了していないことからステップST42に戻り、カウンタ値が「0」であるときは符号化命令に対する処理が完了していることからステップST44に進む。
ステップST44でリソースマネージャ63は、リソース解放処理を行う。リソースマネージャ63は、リソース解放要求を行ったアプリケーションによって占有されていたリソースを解放してステップST45に進む。例えば、アプリケーション51-3でリソース解放要求が行われたとき、アプリケーション51-3によって占有されていたソフトウェアコーデック81-1を解放して空きリソースとする。
ステップST45でリソースマネージャ63は、実行情報管理表の更新を行う。リソースマネージャ63は、占有されていたリソースの解放に対応させて実行情報管理表の更新を行う。リソースマネージャ63は、アプリケーションIDがリソース解放命令を発行したアプリケーションを示しており、占有リソースが解放したリソースを示している実行情報管理表を選択して、この選択した実行情報管理表を削除してステップST46に進む。例えば、アプリケーションIDがリソース解放命令を発行したアプリケーション51-3を示しており、占有リソースが解放したソフトウェアコーデック81-1を示している表5の実行情報管理表を削除する。
ステップST46でリソースマネージャ63は、リソース使用状況管理表の更新を行う。リソースマネージャ63は、占有されていたリソースの解放に対応させてリソース使用状況管理表633bの更新を行い、解放されたリソースの占有状況を未使用状態に変更する。例えばソフトウェアコーデック81-1が解放されたとき、表4に示すリソース使用状況管理表633bのソフトウェアコーデック81-1の占有状況を更新して、表2に示すリソース使用状況管理表とする。
このように、リソースマネージャ63は、リソース解放要求に応じてリソースの解放および実行情報管理表とリソース使用状況管理表の更新を行うことで、リソースマネージャ63では、実行情報管理表とリソース使用状況管理表を最新の状態とすることができる。
以上のような処理をリソースマネージャ63で行えば、リソースが例えばハードウェアリソースであるかソフトウェアリソースであるか区別することなく、自動的に空きリソースを割り当てることができる。また、リソース確保時に、アプリケーションがリソースの使用状況を把握しなくとも、リソースを割り当てることができる。また、アプリケーションからリソース解放の要求がなされたとき、符号化処理や復号化処理が完了してからリソースの解放が行われるので、処理の途中でリソースが解放されてしまうことを防止できる。さらに、リソースマネージャ63は、アプリケーションに対してリソースの制御を隠蔽できるので、符号化処理や復号化処理を共通のインタフェースで各アプリケーションから行うことができるようになる。したがって、情報処理装置10では、リソースマネージャ63によって、リソース管理を容易に行うことができるようになる。
次に、空きリソースから最適なリソースを選択可能とするための優先度の決定について、図8のフローチャートを用いて説明する。
優先度は、
(1)時間処理の保障、実行命令の応答時間(コーデック処理の実行命令を発行してからコーデック処理が完了するまでの時間)
(2)リソースの占有時間(アプリケーション起動時からのリソース占有時間の総和) (3)ソフトウェア処理における負荷率(CPU負荷率)
により決定する。
また、優先度の更新は、符号化命令や復号化命令の発行毎または優先度の更新要求毎に行う。
リソースマネージャ63は、リソース(n)の優先度を決定するための優先度決定パラメータPpenalty(n)を式(1)に基づいて算出する。なお、式(1)において、応答パラメータPresponse(n)は、リソース(n)についての時間処理の保障、実行命令の応答時間に関するパラメータである。また、占有パラメータPoccupancy(n)は、リソース(n)についての占有時間に関するパラメータである。さらに、負荷パラメータPloadは、ソフトウェア処理における負荷率すなわちCPU負荷率に関するパラメータである。また、優先度決定パラメータPpenalty(n)の値が小さいとき優先度を高くして、優先度決定パラメータPpenalty(n)の値が大きいとき優先度を低くする。

Figure 0005521403

ステップST51でリソースマネージャ63は、実行要求が行われたか否かを判別する。リソースマネージャ63は、符号化命令や復号化命令が発行されていないときステップST52に進み、符号化命令や復号化命令が発行されたときステップST53に進む。
ステップST52でリソースマネージャ63は、優先度更新要求が行われたか否かを判別する。リソースマネージャ63は、アプリケーション等から優先度更新要求が行われていないときステップST51に戻り、優先度更新要求が行われたときステップST53に進む。
ステップST53でリソースマネージャ63は、実時間処理を保障するか否か判別する。リソースマネージャ63は、実時間処理を保障するときステップST54に進み、実時間処理を保障しないときステップST55に進む。実時間処理を保障する場合とは、例えば映像データや音声データをリアルタイムで符号化処理して記録する場合等である。また、実時間処理を保障しない場合とは、例えば記録媒体に記録されている符号化信号を復号化して異なる形式の符号化信号に変換する場合のように、リアルタイムで処理を行わなくとも処理が可能な場合等である。
ステップST54でリソースマネージャ63は、実時間処理を保障する場合の応答パラメータを算出する。リソースマネージャ63は、式(2)を用いて応答パラメータPresponse(n)を算出してステップST56に進む。応答パラメータPresponse(n)は、実時間処理を保障する場合、実効命令の応答時間Tresponse(n)が実時間Trealより遅くなるリソースの優先度を低く設定するパラメータである。
Figure 0005521403

なお、式(2)において、「Tresponse(n)」は、リソース(n)のコーデック処理応答時間を示している。また、「Treal」は、実時間処理に必要な最低応答時間を示している。例えば1秒間のフレーム数が60枚である60pのコーデック処理ではTreal≒16msである。
ステップST55でリソースマネージャ63は、実時間処理を保障しない場合の応答パラメータを算出する。リソースマネージャ63は、式(3)を用いて応答パラメータPresponse(n)を算出してステップST56進む。応答パラメータPresponse(n)は、実時間処理を保障しない場合、応答時間Tresponse(n)が長いほどリソースの優先度を低く設定するパラメータである。
Figure 0005521403

なお、式(3)において、「Tresponse(n)」は、リソース(n)のコーデック処理応答時間を示している。また、「N」は、発行された符号化命令(または復号化命令)に応じて行われる処理が可能なリソースの数を示している。
ステップST56でリソースマネージャ63は、占有パラメータを算出する。リソースマネージャ63は、式(4)を用いて占有パラメータPoccupancy(n)を算出してステップST57に進む。占有パラメータPoccupancy(n)は、ハードウェアリソースやソフトウェアリソースが初期化されてから現在時刻までの期間において、アプリケーションにより占有されている総時間が長いほど、リソースの優先度を低く設定するパラメータである。
Figure 0005521403

なお、式(4)において、「Toccupancy(n)」は、リソース(n)の総占有時間を示している。また、「Ttotal」は、アプリケーションの起動時からの総経過時間を示している。
ステップST57でリソースマネージャ63は、全リソースについての算出が完了したか否かを判別する。リソースマネージャ63は、各リソースについて、応答パラメータPresponse(n)と占有パラメータPoccupancy(n)の算出が完了したときにはステップST58に進み、算出が完了していないときはステップST53に戻る。
ステップST58でリソースマネージャ63は、負荷パラメータを算出する。負荷パラメータPloadは、負荷率の高いソフトウェアリソースの優先度を低く設定するパラメータである。リソースマネージャ63は、式(5)を用いて負荷パラメータPloadを算出してステップST59に進む。この負荷パラメータPloadは、負荷率について予め経験的に設定した閾値より高くなった場合、ソフトウェアリソースの優先度を低く設定するパラメータである。
Figure 0005521403

なお、式(5)において、「Lnow」は現在の負荷率を示している。また、「Lth」は許容負荷率であり、例えばシステムに応じて経験的に設定される。さらに、「α」は倍率を示しており、ソフトウェアリソースでは例えば経験的に設定した値(但し、1<α)とされる。また、ハードウェアリソースについては負荷パラメータPloadを「1」に固定する。すなわち、ハードウェアリソースについては、応答パラメータPresponse(n)と占有パラメータPoccupancy(n)に基づいて優先度を算出する。
ステップST59でリソースマネージャ63は、優先度決定パラメータを算出する。リソースマネージャ63は、上述の式(1)を用いて優先度決定パラメータPpenalty(n)を算出してステップST60に進む。
ステップST60でリソースマネージャ63は、優先度の割り当てを行う。リソースマネージャ63は、式(1)の演算を行い、自動で割り当てるリソースの優先順位を決定する。例えば、リソースマネージャ63は、各リソースの優先度決定パラメータPpenalty(n)に基づき、最も優先度決定パラメータPpenalty(n)の値が低くなるリソースから順番に高い優先度を割り当てることでリソースの優先順位を決定する。
このようにリソースの優先度の決定を行えば、アプリケーション側でシステムの状況を把握しなくても、その時点で最適なリソース、例えば処理速度の最も速いリソースを自動的に占有することが可能となる。
なお、本発明は、上述した発明の実施の形態に限定して解釈されるべきではない。この発明の実施の形態は、例示という形態で本発明を開示しており、本発明の要旨を逸脱しない範囲で当業者が実施の形態の修正や代用をなし得ることは自明である。すなわち、本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
この発明における情報処理装置とリソース管理方法およびプログラムでは、リソースマネージャによって、コーデック処理機能とリソースの関係を示す第1の情報に基づき、アプリケーションからのコーデック処理要求に対応するリソースが判別される。さらに、リソースマネージャによって、リソースの使用状況を示す第2の情報に基づき、判別されたリソースから空きリソースが選択されて割り当てられる。
したがって、リソースがハードウェアであるかソフトウェアであるかの区別なしに、使用状況に応じて自動的に空きリソースを割り当てできる。また、リソース確保時に、システムの状況をアプリケーションが把握しなくとも、リソースを割り当てることが可能となりリソース管理が容易となる。このため、例えば画像信号や音声信号のコーデック処理を行う記録装置や再生装置、編集装置等に好適である。
10・・・情報処理装置、11・・・CPU(Central Processing Unit)、12・・・ROM(Read Only Memory)、13・・・RAM(Random Access Memory)、14・・・ハードウェアコーデック部、14-1,14-2,14-j・・・ハードウェアコーデック、15・・・ユーザインタフェース部、16・・・入力部、17・・・出力部、18・・・記憶部、19・・・通信部 、20・・・メディアドライブ部、21・・・表示部、25・・・バス、30・・・リムーバブルメディア、51-1,51-2,51-3,51-i・・・アプリケーション、60・・・API(Application Program Interface)、61・・・ファンクションマネージャ、62・・・コールバックマネージャ、63・・・リソースマネージャ、71・・・デバイスドライバ、81-1,81-2,81-k・・・ソフトウェアコーデック、631・・・ハードウェアリソースコントローラ、632・・・ソフトウェアリソースコントローラ、633・・・コントロールマネージャ、633a・・・機能−リソース対応表、633b・・・リソース使用状況管理表、633c,633c-1,633c-3・・・実行情報管理表

Claims (10)

  1. アプリケーションからのコーデック処理要求に対してリソースを割り当てるリソースマネージャを備え、
    前記リソースマネージャは、コーデック処理機能とリソースの関係を示す第1の情報と、リソースの使用状況を示す第2の情報を有しており、前記第1の情報に基づき前記アプリケーションからのコーデック処理要求に対応するコーデック処理機能を有したリソースを判別して、前記第2の情報に基づき前記判別されたリソースから空きリソースを選択して割り当てるものとし、前記空きリソースの割当てでは、前記コーデック処理要求に応じて、処理の時間に関するパラメータとソフトウェア処理の負荷率に関するパラメータを用いて優先度を決定するための優先度決定パラメータを前記リソース毎に算出して、該算出した優先度決定パラメータに基づき、前記優先度が最も高いリソースを選択する情報処理装置。
  2. 前記リソースマネージャは、前記処理の時間に関するパラメータとして、実時間処理を保障する場合と保障しない場合でのそれぞれにおける応答時間に関するパラメータと、占有時間に関するパラメータを用いる
    請求項1記載の情報処理装置。
  3. 前記リソースマネージャは、前記応答時間については応答時間が短いリソースの優先度を高くして、前記占有時間については占有時間の短いリソースの優先度を高くする
    請求項2記載の情報処理装置。
  4. 前記リソースマネージャは、前記負荷率が低いリソースの優先度を高くする
    請求項2記載の情報処理装置。
  5. 前記リソースマネージャは、前記リソースの割り当てに応じて前記第2の情報の更新を行う
    請求項1記載の情報処理装置。
  6. 前記リソースマネージャは、前記割り当てたリソースにおけるコマンド実行状況を示す第3の情報を有しており、
    前記アプリケーションからリソース解放要求が発行されたとき、前記リソースマネージャは、前記第3の情報でコマンドの実行の終了が示されたのち前記アプリケーションに割り当てたリソースを解放する
    請求項1記載の情報処理装置。
  7. 前記リソースマネージャは、前記割り当てたリソースからのコマンド実行終了の通知に応じて前記第3の情報の更新を行い、前記アプリケーションに割り当てたリソースの解放に応じて前記第2の情報の更新を行う
    請求項6記載の情報処理装置。
  8. 前記リソースマネージャは、前記リソースの制御を行うリソースコントローラを有し、
    前記リソースマネージャは、前記アプリケーションからのコーデック処理要求に応じて、前記リソースコントローラによって前記割り当てられたリソースを制御してコーデック処理を行わせる
    請求項1記載の情報処理装置。
  9. リソースマネージャが、コーデック処理機能とリソースの関係を示す第1の情報に基づき、アプリケーションからのコーデック処理要求に対応するコーデック処理機能を有したリソースを判別するステップと、
    リソースマネージャが、リソースの使用状況を示す第2の情報に基づき、前記判別されたリソースから空きリソースを選択して割り当てるものとし、前記空きリソースの割当てでは、前記コーデック処理要求に応じて、処理の時間に関するパラメータとソフトウェア処理の負荷率に関するパラメータを用いて優先度を決定するための優先度決定パラメータを前記リソース毎に算出して、該算出した優先度決定パラメータに基づき、前記優先度が最も高いリソースを選択するステップと
    を具備するリソース管理方法。
  10. 情報処理装置を、
    コーデック処理機能とリソースの関係を示す第1の情報に基づき、アプリケーションからのコーデック処理要求に対応するコーデック処理機能を有したリソースを判別する機能手段と、
    リソースの使用状況を示す第2の情報に基づき、前記判別されたリソースから空きリソースを選択して割り当てるものとし、前記空きリソースの割当てでは、前記コーデック処理要求に応じて、処理の時間に関するパラメータとソフトウェア処理の負荷率に関するパラメータを用いて優先度を決定するための優先度決定パラメータを前記リソース毎に算出して、該算出した優先度決定パラメータに基づき、前記優先度が最も高いリソースを選択する機能手段
    として機能させるためのプログラム。
JP2009148786A 2009-06-23 2009-06-23 情報処理装置とリソース管理方法およびプログラム Expired - Fee Related JP5521403B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2009148786A JP5521403B2 (ja) 2009-06-23 2009-06-23 情報処理装置とリソース管理方法およびプログラム
US12/815,857 US20100325638A1 (en) 2009-06-23 2010-06-15 Information processing apparatus, and resource managing method and program
CN2010102053679A CN101930380A (zh) 2009-06-23 2010-06-17 信息处理装置、资源管理方法以及程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009148786A JP5521403B2 (ja) 2009-06-23 2009-06-23 情報処理装置とリソース管理方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2011008340A JP2011008340A (ja) 2011-01-13
JP5521403B2 true JP5521403B2 (ja) 2014-06-11

Family

ID=43355429

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009148786A Expired - Fee Related JP5521403B2 (ja) 2009-06-23 2009-06-23 情報処理装置とリソース管理方法およびプログラム

Country Status (3)

Country Link
US (1) US20100325638A1 (ja)
JP (1) JP5521403B2 (ja)
CN (1) CN101930380A (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120183040A1 (en) * 2011-01-19 2012-07-19 Qualcomm Incorporated Dynamic Video Switching
WO2013086701A1 (zh) * 2011-12-14 2013-06-20 华为技术有限公司 虚拟化环境下的音频处理方法和设备
US20150201041A1 (en) * 2013-03-18 2015-07-16 Google Inc. Device dependent codec negotiation
KR101572975B1 (ko) 2013-05-09 2015-11-30 서울대학교산학협력단 기억력 검사 시스템 및 방법
US9232177B2 (en) * 2013-07-12 2016-01-05 Intel Corporation Video chat data processing
CN104661059A (zh) * 2013-11-20 2015-05-27 中兴通讯股份有限公司 一种图片播放的方法、装置及机顶盒
CN107133105B (zh) * 2017-05-17 2020-06-30 华南理工大学 超融合系统、基于超融合系统的数据处理方法
JP6943091B2 (ja) * 2017-09-06 2021-09-29 コニカミノルタ株式会社 画像処理装置、画像処理システム及びプログラム
CN110505478A (zh) * 2018-05-17 2019-11-26 阿里巴巴集团控股有限公司 解码资源的管理方法、装置、设备和介质
US10877766B2 (en) 2018-05-24 2020-12-29 Xilinx, Inc. Embedded scheduling of hardware resources for hardware acceleration
US11416298B1 (en) * 2018-07-20 2022-08-16 Pure Storage, Inc. Providing application-specific storage by a storage system
US11403000B1 (en) 2018-07-20 2022-08-02 Pure Storage, Inc. Resiliency in a cloud-based storage system
US10705993B2 (en) 2018-11-19 2020-07-07 Xilinx, Inc. Programming and controlling compute units in an integrated circuit
CN111026486B (zh) * 2019-12-03 2022-10-25 Tcl 移动通信科技(宁波)有限公司 应用排序方法、应用排序装置及计算机可读存储介质
US11386034B2 (en) 2020-10-30 2022-07-12 Xilinx, Inc. High throughput circuit architecture for hardware acceleration
CN116055715B (zh) * 2022-05-30 2023-10-20 荣耀终端有限公司 编解码器的调度方法及电子设备

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6704489B1 (en) * 1999-05-06 2004-03-09 Matsushita Electric Industrial Co., Ltd. Resource management system and digital video reproducing/recording apparatus
JP2001027986A (ja) * 1999-05-10 2001-01-30 Canon Inc データ処理装置及び処理部選択方法
US7058947B1 (en) * 2000-05-02 2006-06-06 Microsoft Corporation Resource manager architecture utilizing a policy manager
US6799208B1 (en) * 2000-05-02 2004-09-28 Microsoft Corporation Resource manager architecture
EP1182551B1 (en) * 2000-08-21 2017-04-05 Texas Instruments France Address space priority arbitration
US6848103B2 (en) * 2001-02-16 2005-01-25 Telefonaktiebolaget Lm Ericsson Method and apparatus for processing data in a multi-processor environment
US7073177B2 (en) * 2001-05-10 2006-07-04 Sun Microsystems, Inc. Resource managing system for changing resource consumption state of the lower priority resource entity to more restrictive state when resource reached critical level
US20030023660A1 (en) * 2001-06-01 2003-01-30 Bogdan Kosanovic Real-time embedded resource management system
US7321568B2 (en) * 2001-06-01 2008-01-22 Texas Instruments Incorporated Realtime management of processing resources
JP4839585B2 (ja) * 2004-07-29 2011-12-21 日本電気株式会社 資源情報収集配信方法およびシステム
JP2006313337A (ja) * 2005-04-07 2006-11-16 Bridgestone Corp 黒色表示媒体用粒子及びそれを用いた情報表示用パネル
JP4407956B2 (ja) * 2005-10-31 2010-02-03 株式会社ソニー・コンピュータエンタテインメント 情報処理方法および情報処理装置
US20080271030A1 (en) * 2007-04-30 2008-10-30 Dan Herington Kernel-Based Workload Management
JP5233169B2 (ja) * 2007-05-31 2013-07-10 富士通モバイルコミュニケーションズ株式会社 携帯端末
US8249066B2 (en) * 2008-02-19 2012-08-21 Dialogic Corporation Apparatus and method for allocating media resources
JP2010102587A (ja) * 2008-10-24 2010-05-06 Toshiba Corp 情報処理装置

Also Published As

Publication number Publication date
US20100325638A1 (en) 2010-12-23
JP2011008340A (ja) 2011-01-13
CN101930380A (zh) 2010-12-29

Similar Documents

Publication Publication Date Title
JP5521403B2 (ja) 情報処理装置とリソース管理方法およびプログラム
US5812844A (en) Method and system for scheduling the execution of threads using optional time-specific scheduling constraints
KR0152486B1 (ko) 중지-재개 지원 방법 및 시스템
KR101505209B1 (ko) 미디어 장치에서의 다중 운영 체제의 지원
WO2020062669A1 (zh) 电器设备的控制方法、系统、装置、设备及介质
KR20050011689A (ko) 실시간 동작 수행방법 및 시스템
KR20050030871A (ko) 실시간 동작 수행방법 및 시스템
EP2046039A2 (en) Information processing apparatus, information processing system, and controlling method of information processing apparatus
US20080140756A1 (en) Information Processing System, Information Processing Apparatus, Information Processing Method, Recording Medium, and Program
WO2000077599A1 (fr) Systeme et procede de traitement de l'information; procede et dispositif d'attribution de taches; programme de stockage de supports
US20120239952A1 (en) Information processing apparatus, power control method, and recording medium
JP7197794B2 (ja) 情報処理装置および実行制御プログラム
US20060153523A1 (en) Recording apparatus and recording reservation processing method
JP2000101647A (ja) データ送信方法、データ送信装置、及びデータ送信プログラムを記録した記録媒体
CN113473199B (zh) 基于麦克风的设备控制方法及装置
JP4281720B2 (ja) データ処理装置、データ処理方法、データ処理システム、プログラムおよび記録媒体
JP2004528635A (ja) ブロッキングタスクからバジェットを取り除くための方法およびシステム
JP5506250B2 (ja) ストリーム復号装置及びストリーム復号方法
JP2007512592A (ja) 制限されたバケット使用方法及びシステム
CN114265648B (zh) 编码调度方法、服务器及客户端和获取远程桌面的系统
JP2015026132A (ja) リソース制御装置及び方法及びプログラム
JP2002542536A (ja) 匿名のスケジューラ設計パターンを有するオブジェクト指向システム
JP2012079272A (ja) 録画再生装置、i/oスケジューリング方法、及びプログラム
JPH08147178A (ja) 共有資源アクセス方法および共有資源アクセス装置
KR100719416B1 (ko) 데이터 처리 장치 및 데이터 처리 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120229

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130710

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130716

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131022

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131211

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140311

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140324

LAPS Cancellation because of no payment of annual fees