JP2007226790A - コンテインメントフレームワーク環境で資源を管理する装置および方法 - Google Patents

コンテインメントフレームワーク環境で資源を管理する装置および方法 Download PDF

Info

Publication number
JP2007226790A
JP2007226790A JP2007034885A JP2007034885A JP2007226790A JP 2007226790 A JP2007226790 A JP 2007226790A JP 2007034885 A JP2007034885 A JP 2007034885A JP 2007034885 A JP2007034885 A JP 2007034885A JP 2007226790 A JP2007226790 A JP 2007226790A
Authority
JP
Japan
Prior art keywords
resource
application
resources
containment framework
framework environment
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.)
Pending
Application number
JP2007034885A
Other languages
English (en)
Inventor
Ho-Seok An
浩 錫 安
Chong-Mok Park
種 穆 朴
Seung-Bum Chung
承 範 鄭
Ho-Bum Kwon
浩 凡 權
Un-Gyo Jung
雲 ▲ぎょ▼ 鄭
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2007226790A publication Critical patent/JP2007226790A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/02Constructional features of telephone sets
    • H04M1/0202Portable telephone sets, e.g. cordless phones, mobile phones or bar type handsets
    • H04M1/0206Portable telephones comprising a plurality of mechanically joined movable body parts, e.g. hinged housings
    • H04M1/0208Portable telephones comprising a plurality of mechanically joined movable body parts, e.g. hinged housings characterized by the relative motions of the body parts
    • H04M1/0225Rotatable telephones, i.e. the body parts pivoting to an open position around an axis perpendicular to the plane they define in closed position
    • H04M1/0227Rotatable in one plane, i.e. using a one degree of freedom hinge
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0253Garbage collection, i.e. reclamation of unreferenced memory
    • G06F12/0261Garbage collection, i.e. reclamation of unreferenced memory using reference counting

Abstract

【課題】 コンテインメントフレームワーク環境で資源を管理する装置および方法に関し、ライフサイクルを有する複数のアプリケーションを含むコンテインメントフレームワーク環境で各アプリケーションのための資源の割当および解除を管理するコンテインメントフレームワーク環境で資源を管理する装置および方法を提供する。
【解決手段】 コンテインメントフレームワーク環境で資源を管理する装置は、所定の資源が割当てられたアプリケーションの固有識別子を生成する識別子生成部と、前記資源と前記固有識別子との間の連結を締結または解除するアプリケーション管理部と、前記連結が締結された場合は前記資源使用に対するカウンタを増加させ、前記連結が解除された場合は前記資源使用に対するカウンタを減少させる資源管理部と、前記カウンタが0である場合は前記資源の解除を行う資源解除部とを含む。
【選択図】図4

Description

本発明は、コンテインメントフレームワーク環境で資源を管理する装置および方法に関し、より詳しくは、ライフサイクルを有する複数のアプリケーションを含むコンテインメントフレームワーク環境で各アプリケーションのための資源の割当および解除を管理するコンテインメントフレームワーク環境で資源を管理する装置および方法に関するものである。
ジャバは、作成されたコードをプラットフォーム独立で行うオブジェクト指向のプログラミング言語である。ここで、プラットフォームは、プログラムが実行されるハードウェアまたは運営体系のようなソフトウェア環境をいう。ジャバで作成されたコードは、ジャバコンパイラによってジャババイトコードにコンパイルされ、ジャババイトコードは多様なハードウェア基盤のプラットフォームにポーティングされたジャバ仮想マシーンにより実行される。
図1は、従来のコンテインメントフレームワークの構造を示すブロック図であって、コンテインメントフレームワーク(Containment Framework)10は、アプリケーション管理者11、アプリケーション12a,12b,12c、ミドルウェア13、ジャバ仮想マシーン14、および運営体系15を含んで構成される。
ここで、アプリケーションは、ジャバアプリケーション12a,12bおよびネイティブアプリケーション12cを含む。
アプリケーション管理者11は、アプリケーションの状態を切替えることによってアプリケーションのライフサイクルを管理する。例えば、OCAP(Open Cable Application Platform)、ACAP(Advanced open Cable Application Platform)などのミドルウェア13を介して、アプリケーション管理者11はアプリケーションの動作を管理する。
ジャバ仮想マシーン14は、アプリケーションに含まれたクラスをメモリに搭載し、クラスの実行コードを運営体系15の命令コードに切替え、アプリケーションに割当てられた資源を管理する。
資源管理のために、ジャバ仮想マシーン14はガーベッジコレクタを備えるが、ガーベッジコレクタはガーベッジオブジェクト(資源を用いないオブジェクト)を捜し出して、ガーベッジオブジェクトが用いたヒープ資源を運営体系に返還することによって、該当ヒープ資源が他のアプリケーションによって再使用できるようにする。
換言すれば、ジャバプラットフォームにおける資源管理は、ガーベッジコレクタによって行われるものであって、ガーベッジコレクタはオブジェクトが参照されるか否かによって、該当オブジェクトの資源割当または資源解除を管理する。ところで、コンテインメントフレームワークのようにライフサイクルを有するフレームワークで複数のアプリケーションが行われる場合、アプリケーション上で資源解除のための作業が正しく行わなければ、アプリケーションが終了した状態であってもガーベッジコレクタはオブジェクトが実際に有効な状態であるかを確認することができないため、適切な資源解除を行うことができないこともある。
このため、ガーベッジコレクタによる資源解除に関する研究が進められているが、たいてい特定のフレームワークを基盤にする資源管理方法を提示し、一般的なコンテインメントフレームワークでアプリケーション終了時に行われる資源管理方法を提示してはいない。
特許文献2は、ガーベッジコレクションのようなAPI callの発生の際、どの仮想アドレスが修正されたのかチェックし、ガーベッジコレクションと別途にメモリを管理するメモリマネージャを備えたガーベッジコレクションにおける効率的なWrite−Watchメカニズムを開示している。
しかし、これはメモリ資源のような一般的なフレームワーク上での資源解除に対する方法のみを開示し、ライフサイクルを有するコンテインメントフレームワークでの資源解除方法に対しては言及していない。
したがって、複数のアプリケーションがライフサイクルをもって動作するコンテインメントフレームワーク環境で終了するアプリケーションの資源を効率的に解除することができる方法の登場が求められる。
韓国特許公開第10−2005−0066277号公報 米国特許第6738875号公報
本発明は、ライフサイクルを有する複数のアプリケーションを含むコンテインメントフレームワーク環境で各アプリケーションのための資源の割当および解除に関する情報を用いて全体フレームワークでの資源を管理することにその目的がある。
本発明の目的は、以上で言及した目的に制限されず、言及していないまた他の目的は下記記載によって当業者が明確に理解できるものである。
前記目的を達成するために、本発明の一態様に係わるコンテインメントフレームワーク環境で資源を管理する装置は、所定の資源が割当てられたアプリケーションの固有識別子を生成する識別子生成部と、前記資源と前記固有識別子との間の連結を締結または解除するアプリケーション管理部と、前記連結が締結された場合は前記資源使用に対するカウンタを増加させ、前記連結が解除された場合は前記資源使用に対するカウンタを減少させる資源管理部と、前記カウンタが0である場合は前記資源の解除を行う資源解除部とを含む。
本発明の他の態様に係わるコンテインメントフレームワーク環境で資源を管理する方法は、(a)所定の資源が割当てられたアプリケーションの固有識別子を生成するステップと、(b)前記資源と前記固有識別子との間の連結を締結または解除するステップと、(c)前記連結が締結された場合は前記資源使用に対するカウンタを増加させ、前記連結が解除された場合は前記資源使用に対するカウンタを減少させるステップと、(d)前記カウンタが0である場合は前記資源の解除を行うステップとを含む。
コンテインメントフレームワーク環境で資源を管理する装置および方法によれば、ライフサイクルを有する複数のアプリケーションを含むコンテインメントフレームワーク環境で、各アプリケーションのための資源の割当および解除に関する情報を用いて全体フレームワークでの資源を管理することによって、資源の不要な使用を防止することができる長所がある。
その他、実施形態の具体的な事項は詳細な説明および図面に含まれている。
本発明の利点および特徴、そしてそれらを達成する方法は、添付する図面と共に詳細に後述する実施形態を参照すれば明確になる。しかし、本発明は以下にて開示する実施形態に限定されず、互いに異なる多様な形態によって実施され、単に本実施形態は本発明の開示が完全なものとなるようにし、本発明が属する技術分野で通常の知識を有する者に発明の範疇を完全に知らせるために提供されるものであって、本発明は請求項の範疇によってのみ定義されるものである。明細書の全体に亘り、同一参照符号は同一構成要素を示す。
以下、添付した図面を参照して、本発明の好ましい実施形態を詳細に説明する。
図2は、本発明の実施形態に係わるアプリケーションによって資源が用いられることを示す概念図である。
コンテインメントフレームワーク環境で資源を管理する装置(以下、資源管理装置という)は少なくとも1つ以上のアプリケーション211,212を用いて資源を用いることができる。ここで、アプリケーション211,212は、ライフサイクルを有するコンテインメントフレームワーク環境でのジャバアプリケーションであり得るが、例えば、エクスレット(Xlet)、ミドレット(Middlelet)、またはアプレット(Applet)であり得る。
そして、アプリケーション211,212によって用いられる資源は、メモリ資源251、ファイル資源252、およびネットワーク資源253のうち、少なくとも1つであり得る。
図2は、第1のアプリケーション211が2つのメモリ資源251および1つのネットワーク資源253を用い、第2のアプリケーション212が1つのメモリ資源251、2つのファイル資源252、および1つのネットワーク資源253を用いていることを示す。
すなわち、各々のアプリケーション211,212は、互いに異なる複数の資源を同時に用いることができ、同一の資源を複数用いることができる。また、1つのアプリケーションによって使用中である資源をまた他のアプリケーションが用いることもできる。
アプリケーションは随時発生して消滅することができるが、特定のアプリケーションによって占有された資源が該当アプリケーションの消滅により解除されなければ、以後に発生したアプリケーションはその資源を用いることができない場合もある。これに伴い、本発明の資源管理装置は、各アプリケーションに割当てられた資源に対する使用および解除要否に対する情報を維持して、特定のアプリケーションが消滅する場合は該当アプリケーションに割当てられたすべての資源を解除する。すなわち、アプリケーションと資源との間の連結関係を切ることによって、以後に発生したアプリケーションが該当資源を用いることができるようにすることである。例えば、資源管理装置がジャバ環境で動作する場合、資源管理装置は修正されたジャバ仮想マシーンを用いてガーベッジコレクタを強制に行うことによって、互いに異なるジャバオブジェクトを回収して資源を再使用することができる。
例えば、図2で第1のアプリケーション211が終了する場合、第1のアプリケーション211と第1のアプリケーション211に割当てられた2つのメモリ資源251および1つのネットワーク資源253との間の連結関係を切断し、資源の使用権限を運営体系に返還することによって、資源管理装置は第1のアプリケーション211に割当てられた資源の解除を行う。
特定の資源を用いるアプリケーションが終了した以後は、そのアプリケーションによって該当資源が用いられる場合にも資源管理装置による資源解除は行うことができる。
図3は、本発明の実施形態に係わるコンテインメントフレームワークの構造を示すブロック図であって、コンテインメントフレームワーク300は、アプリケーション管理者311、アプリケーション312a,312b,312c、ミドルウェア320、資源管理インターフェース330、ジャバ仮想マシーン340、および運営体系350を含んで構成される。
ここで、アプリケーションは、ジャバアプリケーション312a,312b、およびネイティブアプリケーション312cを含む。
アプリケーション管理者311は、アプリケーションの状態を切替えることによってアプリケーションのライフサイクルを管理する。ここで、アプリケーション管理者311は、OCAP(Open Cable Application Platform)、ACAP(Advanced open Cable Application Platform)などのミドルウェア320を介してアプリケーションの動作を管理することができる。
ジャバ仮想マシーン340は、アプリケーションに含まれたクラスをメモリに搭載してクラスの実行コードを運営体系350の命令コードに切替えてアプリケーションに割当てられた資源を管理する。
この時、資源管理インターフェース330が修正されたジャバ仮想マシーン340を用いて資源を管理することができる。すなわち、ライフサイクルを有するコンテインメントフレームワーク300上での資源割当および解除などを管理するものであって、アプリケーションが終了する場合、アプリケーションに割当てられた資源を強制的に解除する役割を行う。資源管理インターフェース330に対する詳しい説明は図4を介して後述する。
図4は、本発明の実施形態に係わるコンテインメントフレームワーク環境で資源を管理する装置を示すブロック図であって、資源管理装置400は、アプリケーション管理部410、識別子生成部420、格納部430、資源制御部440、資源管理部450、および資源解除部460を含んで構成される。
識別子生成部420は、所定の資源が割当てられたアプリケーションの固有識別子(以下、アプリケーション識別子という)を生成する。ここで、資源はメモリ資源、ファイル資源、およびネットワーク資源のうち、少なくとも1つを含むことができる。すなわち、アプリケーションは、メモリ資源、ファイル資源、およびネットワーク資源のうち、少なくとも1つを用いることができるものであって、各々の資源を複数用いることもできる。ここで、アプリケーションはエクスレット、ミドレット、またはアプレットのように所定のライフサイクルを有するコンテインメントフレームワーク環境でのジャバアプリケーションであり得る。
そして、識別子生成部420は、アプリケーションのスレッド識別子を用いてアプリケーション識別子を生成することができ、アプリケーションの登録順序を用いてアプリケーション識別子を生成することもできる。
アプリケーション管理部410は、資源とアプリケーション識別子との間の連結を管理する。すなわち、アプリケーションによって特定の資源が用いられる場合、アプリケーション識別子と資源との間の連結を締結し、特定の資源の使用が完了する場合、アプリケーション識別子と資源との間の連結を解除する。
また、アプリケーション管理部410は、アプリケーションの初期化および状態切替えを行うこともできるが、初期化されたアプリケーションをメモリに搭載し、搭載されたアプリケーションが一時停止すればこれを実行させ、実行されたアプリケーションを消滅させる。ここで、アプリケーション管理者は、実行されたアプリケーションの状態を一時停止状態に切替えることもできる。
資源管理部450は、アプリケーション管理部410による連結が締結された場合は資源使用に対するカウンタを増加させ、連結が解除された場合は資源使用に対するカウンタを減少させる役割をする。前述した通り、資源管理装置400によって用いられる資源は、メモリ資源、ファイル資源、およびネットワーク資源を含むが、これに伴って資源管理部450は、メモリ資源管理部、ファイル資源管理部、およびネットワーク資源管理部を含むことができる。すなわち、資源管理部450は、アプリケーション別資源管理だけでなく、資源の種類による管理を行う。
ここで、資源管理部450は、1つのアプリケーションに割当てられたすべての資源に対するカウンタの増加または減少を行う。例えば、特定のアプリケーションに1つのメモリ資源と3つのファイル資源が割当てられている場合、資源管理部450は資源の種類に関わらず、該当アプリケーションに割当てられた4つの資源に対するカウンタの増加または減少を行う。
一方、資源管理装置400で実行されるアプリケーションは複数であることができるが、これに伴い、資源管理部450はアプリケーションが複数である場合、各々のアプリケーションに割当てられた資源に対するカウンタの増加または減少を行う。例えば、第1のアプリケーションおよび第2のアプリケーションがアプリケーション管理部410によってメモリに搭載されて実行される場合、資源管理部450は第1のアプリケーションに割当てられた資源に対するカウンタと第2のアプリケーションに割当てられた資源に対するカウンタとを別途に管理する。
アプリケーションによる資源の割当および解除はリアルタイムで行われるが、これに伴い、資源管理部450はリアルタイムで資源に対するカウンタを管理することができる。
格納部430は、アプリケーション識別子と資源が対応して作成されたテーブル(以下、資源テーブルという)を格納する役割をする。資源テーブルに含まれた内容は資源の割当および解除によって更新することができる。
格納部430は、ハードディスク、フラッシュメモリ、CFカード(Compact Flash Card)、SDカード(Secure Digital Card)、SMカード(Smart Media(登録商標)Card)、MMCカード(Multimedia Card)、またはメモリスティック(Memory Stick)など、情報の入出力が可能なモジュールであって、資源管理装置400の内部に備えられていることもでき、別途の装置に備えられていることもできる。
資源制御部440は、資源テーブルの作成および更新を行う。すなわち、アプリケーション管理部410によってアプリケーションが初期化されれば、アプリケーションに割当てられた資源を確認して、アプリケーション識別子と共に割当てられた資源の種類を資源テーブルに含ませる。
また、資源制御部440は、識別子生成部420、アプリケーション管理部410、格納部430、資源管理部450、資源解除部460、および資源管理装置400の全般的な制御を行う。
資源解除部460は、資源管理部450によって管理された資源使用に対するカウンタが0である場合に該当資源の解除を行う。すなわち、アプリケーションによる資源の占有を解除させるものであって、ジャバ環境でガーベッジコレクタが資源解除部460の役割を行うことができる。
図5は、本発明の実施形態に係わる資源テーブルを示す図面であって、ファイル資源に対するテーブルを示す。資源テーブル500は、アプリケーション識別子と資源が対応して作成されたテーブルであって、アプリケーション識別子フィールド510、資源識別子フィールド520、および資源使用要否フィールド530を含んで構成される。
アプリケーション識別子フィールド510には、アプリケーションの固有識別子が含まれる。前述した通り、アプリケーション識別子は、アプリケーションのスレッド識別子を用いて生成することができ、アプリケーションの登録順序を用いて生成することもできる。
資源識別子フィールド520にはアプリケーションに割当てられた資源の種類を示す固有識別子(資源識別子)が含まれる。資源には、メモリ資源、ファイル資源、およびネットワーク資源を含むことができ、その他にアプリケーションに割当てられて用いられる資源を含むこともできる。これに伴い、メモリ資源テーブル、ファイル資源テーブル、およびネットワーク資源テーブルが別途に備えられることができ、各資源に対する統合テーブルが備えられることもできる。
1つのアプリケーション識別子に複数の資源を対応することができ、同一の資源に対してもその一連番号を別にして対応することができる。例えば、第1のファイル資源および第2のファイル資源が1つのアプリケーション識別子に対応することができる。
資源使用要否フィールド530には該当資源に対するアプリケーションの使用要否を示すフラッグが含まれる。換言すれば、アプリケーションが該当資源を用いる場合は1の値がフラッグに挿入され、アプリケーションが該当資源を用いない場合は0の値がフラッグに挿入され得る。
資源テーブル500は、資源制御部440によって生成して更新されるが、資源制御部440はアプリケーション管理部410から受信した資源とアプリケーション識別子との間の連結関係を用いて資源テーブル500を更新し、資源管理部450が該当資源使用に対するカウンタを更新するようにする。
図6は、本発明の実施形態に係わるコンテインメントフレームワーク環境で資源が用いられる過程を示すフローチャートである。
コンテインメントフレームワーク環境で資源を用いるために資源管理装置400のアプリケーション管理部410は、先ずアプリケーションの初期化を行う(S610)。すなわち、アプリケーションに割当てられる資源の種類およびその大きさを確認することで、資源管理装置400で実行されるアプリケーションが複数である場合、アプリケーション管理部410は各々のアプリケーションに対する初期化を行うことができる。
アプリケーション初期化が行われることによって、識別子生成部420は所定の資源が割当てられたアプリケーションの固有識別子(アプリケーション識別子)を生成する(S620)。ここで、資源は、メモリ資源、ファイル資源、およびネットワーク資源のうち、少なくとも1つであり得る。また、資源管理装置400で実行されるアプリケーションは、ライフサイクルを有するジャバアプリケーションを含む。
識別子生成部420は、アプリケーションのスレッド識別子を用いてアプリケーション識別子を生成することができ、アプリケーションの登録順序を用いてアプリケーション識別子を生成することもできる。アプリケーション識別子が生成されることによって、資源制御部440は生成されたアプリケーション識別子と該当アプリケーションに割当てられた資源を対応させて格納部430に保存する。すなわち、資源テーブル500を更新する(S630)。
そして、アプリケーション管理部410は、アプリケーションに対する状態切替えを行う。すなわち、初期化されたアプリケーションをメモリに搭載し、一時停止したアプリケーションを実行することで、この時、アプリケーションと割当てられた資源との間の連結を締結する(S640)。アプリケーションの実行の結果は資源制御部440に伝えられ、資源制御部440は資源テーブル500で該当資源に対する使用要否フラッグを1に設定し、その結果を資源管理部450に伝達する。
これに伴い、資源管理部450は、該当アプリケーションの資源使用に対するカウンタを増加させる(S650)。例えば、該当資源がファイル資源である場合、資源管理部450のファイル資源管理部(図示せず)がファイル資源使用に対するカウンタを増加させ、該当資源がネットワーク資源である場合、資源管理部450のネットワーク資源管理部(図示せず)がネットワーク資源使用に対するカウンタを増加させる。
資源使用に対するカウンタの増加は、アプリケーション管理部410によるアプリケーションの状態が実行状態に切替えることによって行われ、複数のアプリケーションに割当てられた資源使用に対するカウンタが同時に増加することもできる。
図7は、本発明の実施形態に係わるコンテインメントフレームワーク環境で資源が解除される過程を示すフローチャートである。
コンテインメントフレームワーク環境で資源を解除するために資源管理装置400のアプリケーション管理部410は、アプリケーションと資源との間の連結を解除する(S710)。連結解除の結果は資源制御部440に伝えられ、資源制御部440は格納部430に保存された資源テーブル500で該当資源の使用要否フラッグを0に設定し、その結果を資源管理部450に伝達する。
これに伴い、資源管理部450は、該当アプリケーションの資源使用に対するカウンタを減少させる(S720)。例えば、該当資源がファイル資源である場合は資源管理部450のファイル資源管理部(図示せず)がファイル資源使用に対するカウンタを減少させ、該当資源がネットワーク資源である場合は資源管理部450のネットワーク資源管理部(図示せず)がネットワーク資源使用に対するカウンタを減少させる。
一方、プログラムコードまたはユーザによるアプリケーション終了命令が入力されることができるが(S730)、アプリケーション終了命令が入力されることによって、アプリケーション管理部410は該当アプリケーションの状態を消滅状態に切替えて該当アプリケーションに割当てられたすべての資源の連結を解除する(S740)。連結解除の結果は資源制御部440に伝えられるが、資源制御部440は資源テーブル500で該当アプリケーションに割当てられたすべての資源の使用要否フラッグを0に設定し、その結果を資源管理部450に伝達する。
これに伴い、資源管理部450は、該当アプリケーションに割当てられたすべての資源使用に対するカウンタを減少させる(S750)。カウンタ減少の結果は再び資源制御部440に伝えられるが、資源制御部440はカウンタが0になったかを確認し(S760)、カウンタが0になったら資源解除部460に資源解除制御コードを伝達する。
資源解除制御コードが伝達された資源解除部460は、該当アプリケーションに割当てられたすべての資源を解除する(S770)。ジャバ環境である場合、ガーベッジコレクタが資源解除部460の役割を行ってアプリケーションに割当てられたすべての資源を強制的に解除することができる。
図4のブロック図の各ブロックと図6〜図7のフローチャートの各ステップの組合せは、コンピュータプログラムインストラクションによって行われる可能性があることが理解できる。これらコンピュータプログラムインストラクションは、汎用コンピュータ、特殊用コンピュータ、またはその他のプログラム可能なデータプロセシング装備のプロセッサに搭載することができるため、コンピュータまたはその他のプログラム可能なデータプロセシング装備のプロセッサを介して行われるそのインストラクションがブロック図の各ブロックまたはフローチャートの各ステップで説明された機能を行う手段を生成するようになる。これらコンピュータプログラムインストラクションは、特定方式で機能を実現するために、コンピュータまたはその他のプログラム可能なデータプロセシング装備を指向することができるコンピュータ利用可能またはコンピュータ読取可能なメモリに格納することも可能であるため、そのコンピュータ利用可能またはコンピュータ読取可能なメモリに格納されたインストラクションは、ブロック図の各ブロックまたはフローチャートの各ステップで説明された機能を行うインストラクション手段を含む製造品目を生産することも可能である。コンピュータプログラムインストラクションは、コンピュータまたはその他のプログラム可能なデータプロセシング装備上に搭載することも可能であるため、コンピュータまたはその他のプログラム可能なデータプロセシング装備上で一連の動作ステップが行われ、コンピュータで実行されるプロセスを生成してコンピュータまたはその他のプログラム可能なデータプロセシング装備を行うインストラクションはブロック図の各ブロックおよびフローチャートの各ステップで説明された機能を実行するためのステップを提供することも可能である。
また、各ブロックまたは各ステップは、特定された論理的機能を実行するための1つ以上の実行可能なインストラクションを含むモジュール、セグメント、またはコードの一部を示すことができる。また、いくつかの代替実行例ではブロックまたはステップで言及した機能が順序を外れて発生することも可能であることを注目しなければならない。例えば、連続して図示されている2つのブロックまたはステップは実質的に同時に行われることも可能であり、またはそのブロックまたはステップが時々該当機能により逆順に行われることも可能である。
以上、添付した図面を参照して本発明の実施形態を説明したが、本発明が属する技術分野で通常の知識を有する者であれば、本発明がその技術的思想や必須の特徴を変更せず、他の具体的な形態によって実施することができるということを理解できる。したがって、以上で記述した実施形態はすべての面で例示的なものであり、限定的なものではないことを理解しなければならない。
従来のコンテインメントフレームワークの構造を示すブロック図である。 本発明の実施形態に係わるアプリケーションによって資源が用いられることを示す概念図である。 本発明の実施形態に係わるコンテインメントフレームワークの構造を示すブロック図である。 本発明の実施形態に係わるコンテインメントフレームワーク環境で資源を管理する装置を示すブロック図である。 本発明の実施形態に係わる資源テーブルを示す図である。 本発明の実施形態に係わるコンテインメントフレームワーク環境で資源が用いられる過程を示すフローチャートである。 本発明の実施形態に係わるコンテインメントフレームワーク環境で資源が解除される過程を示すフローチャートである。
符号の説明
410 アプリケーション管理部
420 識別子生成部
430 格納部
440 資源制御部
450 資源管理部
460 資源解除部

Claims (18)

  1. 所定の資源が割当てられたアプリケーションの固有識別子を生成する識別子生成部と、
    前記資源と前記固有識別子との間の連結を締結または解除するアプリケーション管理部と、
    前記連結が締結された場合は前記資源使用に対するカウンタを増加させ、前記連結が解除された場合は前記資源使用に対するカウンタを減少させる資源管理部と、
    前記カウンタが0である場合は前記資源の解除を行う資源解除部とを含むコンテインメントフレームワーク環境で資源を管理する装置。
  2. 前記資源は、メモリ資源、ファイル資源、およびネットワーク資源のうち、少なくとも1つを含む請求項1に記載のコンテインメントフレームワーク環境で資源を管理する装置。
  3. 前記アプリケーションは、ライフサイクルを有するジャバアプリケーションを含む請求項1に記載のコンテインメントフレームワーク環境で資源を管理する装置。
  4. 前記識別子生成部は、前記アプリケーションのスレッド識別子を用いて前記固有識別子を生成する請求項1に記載のコンテインメントフレームワーク環境で資源を管理する装置。
  5. 前記固有識別子と前記資源が対応して作成されたテーブルを格納する格納部をさらに含む請求項1に記載のコンテインメントフレームワーク環境で資源を管理する装置。
  6. 前記テーブルの作成および更新を行う資源制御部をさらに含む請求項5に記載のコンテインメントフレームワーク環境で資源を管理する装置。
  7. 前記資源管理部は、1つのアプリケーションに割当てられたすべての資源に対する前記カウンタの増加または減少を行う請求項1に記載のコンテインメントフレームワーク環境で資源を管理する装置。
  8. 前記資源管理部は、前記アプリケーションが複数である場合、各々のアプリケーションに割当てられた資源に対する前記カウンタの増加または減少を行う請求項1に記載のコンテインメントフレームワーク環境で資源を管理する装置。
  9. 前記資源解除部は、前記アプリケーションが終了した場合、前記アプリケーションに割当てられた資源を解除する請求項1に記載のコンテインメントフレームワーク環境で資源を管理する装置。
  10. (a)所定の資源が割当てられたアプリケーションの固有識別子を生成するステップと、
    (b)前記資源と前記固有識別子との間の連結を締結または解除するステップと、
    (c)前記連結が締結された場合は前記資源使用に対するカウンタを増加させ、前記連結が解除された場合は前記資源使用に対するカウンタを減少させるステップと、
    (d)前記カウンタが0である場合は前記資源の解除を行うステップとを含むコンテインメントフレームワーク環境で資源を管理する方法。
  11. 前記資源は、メモリ資源、ファイル資源、およびネットワーク資源のうち、少なくとも1つを含む請求項10に記載のコンテインメントフレームワーク環境で資源を管理する方法。
  12. 前記アプリケーションは、ライフサイクルを有するジャバアプリケーションを含む請求項10に記載のコンテインメントフレームワーク環境で資源を管理する方法。
  13. 前記(a)ステップは、前記アプリケーションのスレッド識別子を用いて前記固有識別子を生成するステップを含む請求項10に記載のコンテインメントフレームワーク環境で資源を管理する方法。
  14. 前記固有識別子と前記資源が対応して作成されたテーブルを格納するステップをさらに含む請求項10に記載のコンテインメントフレームワーク環境で資源を管理する方法。
  15. 前記テーブルの作成および更新を行うステップをさらに含む請求項14に記載のコンテインメントフレームワーク環境で資源を管理する方法。
  16. 前記(c)ステップは、1つのアプリケーションに割当てられたすべての資源に対する前記カウンタの増加または減少を行うステップを含む請求項10に記載のコンテインメントフレームワーク環境で資源を管理する方法。
  17. 前記(c)ステップは、前記アプリケーションが複数である場合、各々のアプリケーションに割当てられた資源に対する前記カウンタの増加または減少を行うステップを含む請求項10に記載のコンテインメントフレームワーク環境で資源を管理する方法。
  18. 前記(d)ステップは、前記アプリケーションが終了した場合、前記アプリケーションに割当てられた資源を解除するステップを含む請求項10に記載のコンテインメントフレームワーク環境で資源を管理する方法。
JP2007034885A 2006-02-21 2007-02-15 コンテインメントフレームワーク環境で資源を管理する装置および方法 Pending JP2007226790A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060016840A KR100714712B1 (ko) 2006-02-21 2006-02-21 컨테인먼트 프레임워크 환경에서 자원을 관리하는 장치 및방법

Publications (1)

Publication Number Publication Date
JP2007226790A true JP2007226790A (ja) 2007-09-06

Family

ID=38121314

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007034885A Pending JP2007226790A (ja) 2006-02-21 2007-02-15 コンテインメントフレームワーク環境で資源を管理する装置および方法

Country Status (5)

Country Link
US (1) US8881162B2 (ja)
EP (1) EP1821213A1 (ja)
JP (1) JP2007226790A (ja)
KR (1) KR100714712B1 (ja)
CN (1) CN100549965C (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008147150A1 (en) * 2007-05-30 2008-12-04 Electronics And Telecommunications Research Institute Radio resource reallocating method for circuit mode
TW200947307A (en) * 2008-05-02 2009-11-16 Htc Corp Resource management methods and systems, and related operating systems and machine readable medium thereof
US7996484B2 (en) * 2008-12-11 2011-08-09 Microsoft Corporation Non-disruptive, reliable live migration of virtual machines with network data reception directly into virtual machines' memory
CN101788926B (zh) * 2009-12-28 2014-04-30 中兴通讯股份有限公司 J2me应用前台切换的资源调配方法及装置
US8875148B2 (en) * 2011-06-14 2014-10-28 International Business Machines Corporation Product-specific system resource allocation within a single operating system instance
US9720730B2 (en) * 2011-12-30 2017-08-01 Intel Corporation Providing an asymmetric multicore processor system transparently to an operating system
US8516018B1 (en) * 2012-02-28 2013-08-20 Google Inc. Budgeting native resources in resource-constrained devices that employ a dynamic, garbage-collection based view architecture
US9917784B2 (en) * 2015-07-31 2018-03-13 Netapp Inc. Dynamic resource allocation based upon network flow control
KR20200099306A (ko) * 2019-02-14 2020-08-24 삼성전자주식회사 전자 장치 및 상기 전자 장치에서 실행되는 복수의 어플리케이션의 라이프 사이클을 관리하는 방법
CN111897651B (zh) * 2020-07-28 2024-03-19 华中科技大学 一种基于标签的内存系统资源管理方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1145187A (ja) * 1996-10-11 1999-02-16 Sun Microsyst Inc 分散ガーベッジコレクションのためのリソースの管理方法、装置、コンピュータプログラム生産物、コンピュータシステム並びにプラットフォーム間に分散したリソースの割当及び割当解除方法
JP2002259146A (ja) * 2000-05-15 2002-09-13 Matsushita Electric Ind Co Ltd アプリケーション実行装置及び方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6101525A (en) * 1995-05-19 2000-08-08 Emc Corporation Method and apparatus for shared memory cleanup
US6275857B1 (en) * 1996-10-30 2001-08-14 Microsoft Corporation System and method for freeing shared resources in a computer system
US6058423A (en) * 1996-12-23 2000-05-02 International Business Machines Corporation System and method for locating resources in a distributed network
US6058414A (en) * 1998-01-07 2000-05-02 International Business Machines Corporation System and method for dynamic resource access in an asymmetric resource multiple processor computer system
US6505229B1 (en) * 1998-09-25 2003-01-07 Intelect Communications, Inc. Method for allowing multiple processing threads and tasks to execute on one or more processor units for embedded real-time processor systems
US6910210B1 (en) * 1998-11-24 2005-06-21 Microsoft Corp. System and method for terminating applications
US6430599B1 (en) * 1999-06-15 2002-08-06 Sun Microsystems, Inc. Just-in-time services for small footprint devices
US7257812B1 (en) * 1999-12-16 2007-08-14 Sun Microsystems, Inc. Methods and apparatus for managing an application
US7103625B1 (en) * 1999-10-05 2006-09-05 Veritas Operating Corporation Virtual resource ID mapping
US6886085B1 (en) * 2000-04-19 2005-04-26 International Business Machines Corporation Method and apparatus for efficient virtual memory management
US6738875B1 (en) * 2000-07-31 2004-05-18 Microsoft Corporation Efficient write-watch mechanism useful for garbage collection in a computer system
JP2003271429A (ja) * 2002-03-15 2003-09-26 Hitachi Ltd 記憶装置資源管理方法、記憶資源管理プログラム、該プログラムを記録した記録媒体、及び記憶資源管理装置
US7203941B2 (en) * 2002-11-14 2007-04-10 Microsoft Corporation Associating a native resource with an application
JP3896111B2 (ja) * 2003-12-15 2007-03-22 株式会社日立製作所 リソース割り当てシステム、方法及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1145187A (ja) * 1996-10-11 1999-02-16 Sun Microsyst Inc 分散ガーベッジコレクションのためのリソースの管理方法、装置、コンピュータプログラム生産物、コンピュータシステム並びにプラットフォーム間に分散したリソースの割当及び割当解除方法
JP2002259146A (ja) * 2000-05-15 2002-09-13 Matsushita Electric Ind Co Ltd アプリケーション実行装置及び方法

Also Published As

Publication number Publication date
CN100549965C (zh) 2009-10-14
US8881162B2 (en) 2014-11-04
CN101025699A (zh) 2007-08-29
EP1821213A1 (en) 2007-08-22
KR100714712B1 (ko) 2007-05-04
US20070198723A1 (en) 2007-08-23

Similar Documents

Publication Publication Date Title
JP2007226790A (ja) コンテインメントフレームワーク環境で資源を管理する装置および方法
JP4834566B2 (ja) 入出力作業によってブロッキングされたスレッドを強制終了する装置および方法
KR101116615B1 (ko) 자바 가상 머신 상에서 이뤄지는 애플리케이션 및 스레드의자원 관리 시스템 및 방법
KR101998012B1 (ko) 네트워크 서비스 기술자를 업데이트하기 위한 방법 및 장치
JP5156838B2 (ja) リソース管理方法と組込み装置
JP4876438B2 (ja) コンポーネントソフトウェアの運用方法および運用基盤
US8776051B2 (en) Method of providing partially isolated execution environment for multiple applications and digital information apparatus using the same
JP2014059906A (ja) 個々のクラスローダを実装するための方法および装置
KR20100087138A (ko) 메모리 관리
CN107396188B (zh) 一种机顶盒的升级方法及系统
JP2007226800A (ja) 多重ジャバアプリケーション環境で仮想idを用いて資源を管理する装置およびその方法
EP3531280A1 (en) Accelerator loading method and system, and accelerator loading apparatus
CN106980531B (zh) 输入法操作处理方法和装置
CN105224874A (zh) 基于中间件插件框架的插件安全控制方法及客户端
JP2010272059A (ja) メモリ管理方法計算機システム及びプログラム
CN105320503A (zh) 中间件插件框架设计系统及方法
KR100493893B1 (ko) 자바 프로그램에서 클래스 로딩 과정을 단축시키는 시스템및 방법
CN112559127A (zh) 虚拟机创建方法、装置、主机及存储介质
JP6001199B2 (ja) アンドロイドアプリケーションのタイゼン導入可能パッケージ自動変換方法及びこのためのコンピュータ読み取り可能な記録媒体
KR101095426B1 (ko) 엑스렛 어플리케이션 실행 방법 및 기록매체
CN105224297A (zh) 基于中间件插件框架的插件内存资源控制方法及客户端
CN105204829A (zh) 基于中间件插件框架的插件套接字资源控制方法及客户端
KR101617765B1 (ko) 안드로이드 어플리케이션 패키지의 자동 변환 방법
CN107220101B (zh) 一种容器创建方法和装置
JP4504756B2 (ja) Java(登録商標名)実行環境におけるメモリ管理方法及びメモリ管理プログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090914

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090929

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100104

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100107

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100108

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100615

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101015

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20101025

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20110304