JP2011504268A - ソフトウェア・コンポーネントを作成するための方法 - Google Patents

ソフトウェア・コンポーネントを作成するための方法 Download PDF

Info

Publication number
JP2011504268A
JP2011504268A JP2010534466A JP2010534466A JP2011504268A JP 2011504268 A JP2011504268 A JP 2011504268A JP 2010534466 A JP2010534466 A JP 2010534466A JP 2010534466 A JP2010534466 A JP 2010534466A JP 2011504268 A JP2011504268 A JP 2011504268A
Authority
JP
Japan
Prior art keywords
class object
child
identifier
child class
mbean
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.)
Granted
Application number
JP2010534466A
Other languages
English (en)
Other versions
JP5209058B2 (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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2011504268A publication Critical patent/JP2011504268A/ja
Application granted granted Critical
Publication of JP5209058B2 publication Critical patent/JP5209058B2/ja
Active 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】 「親」Mbeanが複数の「子」Mbeanを生成および管理する、Mbeanの固有クラスを作成するための方法を提供する。
【解決手段】 親クラス・オブジェクト記述に基づいて、親クラス・オブジェクトに関するメモリを割り振ること、親クラス・オブジェクトにより、子クラス・オブジェクト記述に基づいて第1の子クラス・オブジェクトに関するメモリを割り振ること、第1の子クラス・オブジェクトに、第2の子クラス・オブジェクトに対応する第2の識別子から固有の第1の識別子を割り当てることであって、第2の子クラス・オブジェクトも、子クラス・オブジェクト記述に基づいて親クラス・オブジェクトによって割り振られる、割り当てること、および、第1の子クラス・オブジェクトを第2の子クラス・オブジェクトと区別できるように、第1の識別子を格納することを含む、方法。
【選択図】 図1

Description

請求される主題は、一般的には、管理コンピュータ・プログラミング・オブジェクトに関する技術に関し、より具体的には、追加のManaged JavaBeanオブジェクトを生成し管理することができるManaged JavaBean(Mbean)プログラミング・オブジェクトに関する。
ここ数十年の間、コンピュータは互いに接続されるようになった。もともと、コンピュータはスタンド・アロン型のデバイスであり、通常は、それぞれが特定のタスク向けに設計およびプログラミングされるものであった。しかし、すぐにコンピュータをネットワークに結合することの利点が明らかとなった。コンピュータのネットワークによって、プリンタやメモリなどのリソースを共有でき、最終的には処理タスクも共有し分配することができる。たとえば、データベースの異なるセグメントを検索するために異なるプロセッサあるいはコンピュータまたはその両方を割り当てることによって、大規模データベースの検索を複数の相互に排他的なタスクに分割することができることがある。
コンピュータの相互接続が進むにつれて、複数のコンピュータが協働できるようにするための技術が開発されてきた。こうした開発の1つが、元来、カリフォルニア州マウンテンビューのサン・マイクロシステムズ社によって開発された高水準プログラミング言語の、JAVA(R)である。JAVA(R)は、プログラマが、プラットフォームに依存しないコードを開発できるようにするものである。簡単に言えば、JAVA(R)プログラミング言語で作成されたコードは、コンピュータ上で実行しているJAVA(R)仮想マシン(JVM)によって、特定のコンピュータに対応する実際のコンピュータ命令に変換、すなわち「解釈」される。言い換えれば、特定のコンピュータ・ハードウェアおよび関連付けられたオペレーティング・システムに対応するJVMをインストールすることによって、プログラマは、特定のハードウェアおよびオペレーティング・システムに関係なくコードを作成することができる。
従来型コンピュータの接続の増加に加えて、コンピューティング・コンポーネントを組み込んだ多くのデバイスも相互接続され、JAVA(R)対応型になってきている。その例には、インターネットすなわち「ウェブ」電話、ケーブル・ボックスおよびテレビジョン、ならびにアプリケーション・クライアントおよびサーバが含まれる。こうしたJAVA(R)対応型リソースの管理を容易にするために、JAVA(R)Management Extensions(JMX)が開発された。JMXは、JAVA環境においてデバイス、アプリケーション、およびサービスを管理および監視するための標準である。JMXは、JAVA(R)リソースおよびプログラミング・オブジェクトを管理するために、管理アーキテクチャ、設計パターン、アプリケーション・プログラミング・インターフェース(API)、ならびに、ウェブ・ベース、分散型、動的、およびモジュール式のソリューションを構築するためのサービスを定義する。
JMXは、管理の対象となるオブジェクトを表すプログラミング・オブジェクトである、JAVA(R)Managed Beanすなわち「Mbean」の作成および実装を提供する。各Mbeanは、対応するリソースの特定構成パラメータの監視、管理、およびこれに対する変更の通知受け取りを、ユーザまたはプログラムが実行できるようにする、管理インターフェースを有する。たとえば、あるアプリケーションを表すMbeanは、そのアプリケーションのキャッシュ・サイズに対応する属性および方法を含むことができる。この例では、「cacheSize」属性を読み取ることで、アプリケーションのキャッシュ・サイズを戻し、「cacheSize」属性を書き込むことで、アプリケーションのキャッシュのサイズを更新し、すなわちアプリケーションの構成を変更することになる。
マルチ・ユーザの分散型環境に呼び出しを含めるためにJMX仕様が改訂されてきたが、通常、JMX Mbeanはスタンド・アロン型オブジェクトである。すなわち、Mbeanは機能に関して階層状に編成されていない。言い換えれば、当分野の現状では、エンド・ユーザは事前に定義されたMbeanにアクセスすることはできるが、個々のMbeanが「親」Mbeanによって管理され、割り当てられた名前に基づいてアクセスされる、Mbeanのクラスを生成することはできない。加えて、Mbeanは「単体(singleton)」オブジェクトである。任意の特定タイプのうちの単一のMbeanのみがインスタンス化され、その単一のMbeanはいかなるクライアント状態情報も格納しない。特定タイプのMbeanが呼び出されるごとに、クライアント状態情報がMbeanに渡されなければならない。
「親」Mbeanが複数の「子」Mbeanを生成および管理する、Mbeanの固有クラスを作成するための方法が提供される。ユーザが特定のMbeanの機能を要求する場合、特定タイプのMbean、すなわち親Mbeanが呼び出される。親Mbeanは、要求を実行するのではなく、要求を実行するための子Mbeanを生成する、ファクトリ・メソッドである。子Mbeanには、同じ親の他の子とその子とを区別する名前が割り当てられ、親を呼び出したプロセスにその名前が与えられる。このようにして、呼び出し側プロセスは、割り当てられた名前を使用して、今後の要求のために特定の子Mbeanにアクセスすることができる。
開示された技術は、1つまたは複数のプロセスが固有の機能に関して特定の子Mbeanを調整できるようにすることによって、Mbeanの機能を拡張する。たとえば、第1の子Mbeanは1つの特定データベースへのアクセスを提供し、第2の子Mbeanは異なるデータベースへのアクセスを提供することができる。第1および第2の両方のMbeanは、単一の親Mbeanによって管理される。割り当てられた名前によって指定され、異なるデータベースに接続されるが、それ以外は同様の、2つの異なるMbeanを呼び出すための機能により、Mbeanの管理が簡略化される。コンピューティング分野の当業者であれば、開示された技術がデータベース接続に加えて機能を提供できることを理解されたい。たとえば、提供される機能は、通信チャネルまたは特定処理タスクへの接続とすることができる。
さらに、開示された技術は、クライアントMbean内の状態情報を維持する手段を提供する。親Mbeanは、たとえばデータベース接続情報を含むクライアント状態情報を格納するために、子Mbeanを作成する。親Mbean内で、キーまたは子の名前と共に、特定のメソッドが呼び出された場合、このメソッド呼び出しは、クライアント状態情報を格納する適切な子Mbeanに転送される。
この概要は、記載された主題の包括的説明であるものとは意図されておらず、むしろ、それらに関連付けられた機能の一部の簡単な概略を提供することが意図されている。当業者であれば、以下の図面および詳細な説明の検証時に、記載された主題の他のシステム、方法、機能、特徴、および利点が明らかとなろう。
本発明の好ましい諸実施形態について、以下の図面を参照しながら単なる例として説明する。
本発明の好ましい実施形態に従った、コンピューティング・システムの一例を示すブロック図である。 本発明の好ましい実施形態に従った、図1のコンピューティング・システム上で実行し、技法をサポートする、コンピュータ・アーキテクチャの一例を示すブロック図である。 本発明の好ましい実施形態に従った、一実装例で採用されるChildMbeanTableObject(CMTO)メモリ・オブジェクトの一例を示す図である。 本発明の好ましい実施形態に従った、一例で採用されるClientStateInformationObject(CSIO)メモリ・オブジェクトの一例を示す図である。 本発明の好ましい実施形態に従った、Mbeanセットアップ・プロセスの一例を示す流れ図である。 図5と共に紹介された例で採用されるMbean呼び出しプロセスを示す流れ図である。 図6のプロセスと共に採用される照会実行プロセスを示す流れ図である。 図5のMbeanセットアップ・プロセスと共に採用される例外処理プロセスを示す流れ図である。
特にJAVA(R)Management Extensions(JMX)標準を参照しながら説明するが、本発明の諸実施形態は、複数のアプリケーション・ユーザによるプログラミング・オブジェクトへのアクセスが望ましい、任意の情報技術(IT)で実装可能である。コンピューティング分野の当業者であれば、開示された諸実施形態が、以下で説明する環境に加えて、多様なコンピューティング環境に関連するものであることを理解されよう。さらに、JAVA(R)管理ビーン(MBean)およびJAVA環境に関して説明するが、本発明の諸実施形態は他のタイプの管理モジュール、アプリケーション、または、1つのプログラミング・オブジェクトが他のプログラミング・オブジェクトを生成および管理するために作成される、任意の他のタイプの相互依存コンピュータ論理にも適用可能である。言い換えれば、開示された技術は、相互依存コンピュータ・コードが存在し、ユーザまたは開発者が、コンピューティング環境が高度に信頼可能であることを保証する必要があるかまたはそれを望む、任意の状況に適用可能である。
加えて、開示された技術の方法は、ソフトウェア、ハードウェア、あるいはソフトウェアおよびハードウェアの組み合わせで、実装可能である。ハードウェア部分は、特化された論理を使用して実装可能であり、ソフトウェア部分は、メモリに格納し、マイクロプロセッサ、パーソナル・コンピュータ(PC)、またはメインフレームなどの、好適な命令実行システムによって実行可能である。
本書との関連において、「メモリ」または「記録メディア」とは、命令実行のシステム、装置、またはデバイスによって、またはこれらと共に、プログラムあるいはデータまたはその両方を、含む、格納する、通信する、伝搬する、または移送する、任意の手段とすることができる。メモリおよび記録メディアは、電子、磁気、光、電磁、または半導体の、システム、装置、またはデバイスとすることができるが、これらに限定されることはない。メモリおよび記録メディアは、たとえば、ポータブル・コンピュータ・ディスケット、ランダム・アクセス・メモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROMまたはフラッシュ・メモリ)、およびポータブル・コンパクト・ディスク読み取り専用メモリ、または、プログラムあるいはデータまたはその両方が格納可能な他の好適なメディア、などを含むこともできるが、これらに限定されることはない。
記載された主題に従い、一実施形態は、JAVA MBeanの有用性を簡略化および拡張するためのプログラム化された方法を対象とする。「プログラム化された方法」という用語は、本明細書で使用される場合、現在実行されている1つまたは複数のプロセス・ステップ、または別の方法として、将来のある時点で実行可能とされた1つまたは複数のプロセス・ステップを表すために、定義される。「プログラム化された方法」という用語は、3つの代替形式を予想する。第1に、プログラム化された方法は、現在実行されているプロセス・ステップを備える。第2に、プログラム化された方法は、コンピュータによって実行された場合に1つまたは複数のプロセス・ステップを実行する、コンピュータ命令を具体化する、コンピュータ読み取り可能メディアを備える。最後に、プログラム化された方法は、1つまたは複数のプロセス・ステップを実行するために、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組み合わせによってプログラミングされた、コンピュータ・システムを備える。「プログラム化された方法」という用語は、同時に複数の代替形式を有するものと解釈されるのではなく、むしろ、任意の所与の時点で、複数の代替形式のうちの1つのみが存在する、代替形式の最も真の意味で解釈されるものであることを理解されよう。
次に図面を参照すると、図1は、本発明の好ましい実施形態に従った、コンピューティング・システム・アーキテクチャ100の一例を示すブロック図である。コンピューティング・システム100は、中央処理ユニット(CPU)104を含み、モニタ106、キーボード108、およびマウス110に結合された、クライアント・コンピュータ102を含む。モニタ106、キーボード108、およびマウス110は、コンピューティング・システム100およびクライアント・コンピュータ102との人間の対話を容易にする。CPU104には、CPU104に組み込まれる、すなわち内部デバイスであるか、または、ユニバーサル・シリアル・バス(USB)ポート(図示せず)などであるがこれに限定されない様々な一般に使用可能な接続デバイスによって、CPU104に外部的に接続されることが可能な、データ・ストレージ・コンポーネント112が接続される。
データ・ストレージ112は、第1のMbeanまたは「Mbean_1」114、第2のMbeanまたは「Mbean_1A」118、および第3のMbeanまたは「Mbean_1B」120を含む、いくつかの例示的Java管理バンドルまたは「Mbean」を格納するように示されている。典型的なアプリケーションまたはシステムは、多くのMbeanを含むことができるが、簡潔にするために、3つのみが示されていることに留意されたい。データ・ストレージ112上には、オペレーティング・システム(OS)122およびJAVA実行エンジン(JXE)124も格納される。Mbean_1 114と共に、子テーブルまたは「Child_Table_1」116が格納される。Child_Table_1 116は、Mbean_1 114の一部として示されているが、Mbean_1 114の子Mbeanに加えて、他の親Mbean(図示せず)に関連付けられた、子Mbeanの作成および管理を容易にする、スタンド・アロン型エンティティとすることができる。Mbean_1A 118およびMbean_1B 120と共に、それぞれ、クライアント状態情報オブジェクト(CSIO)118および121が格納される。
以下の説明では、Mbean_1 114、Child_table_1 116、Mbean_1A 118、CSIO_1A 119、Mbean_1B 120、およびCSIO_1B 121は、本発明の好ましい実施形態に従って作成および管理されたオブジェクトである。Mbean_1 114は、親Mbeanであり、Mbean_1A 118およびMbean_1B 120は、Mbean_1 114の子Mbeanである。Child_table_1 116は、Mbean_1A 118およびMbean_1B 120の作成および管理のために、Mbean_1 114によって使用される。Mbean_1A 118およびMbean_1B 120は、同じタイプのオブジェクトであるが、異なるインスタンス化であるため、Mbean_1A 118およびMbean_1B 120がそれぞれ専用のクライアント状態情報を、それぞれCSIO_1A 119およびCSIO_1B 121に格納できるようにする。以下の例では、クライアント状態情報は、それらそれぞれの名前および接続に関するデータを含む。本発明のいくつかの実施形態は、多くの他のタイプのクライアント状態情報の格納が可能であり、接続情報は単なる一例として使用されている。Mbean_1 114、Child_table_1 116、Mbean_1A 118、CSIO_1A 119、Mbean_1B 120、CSIO_1B 121、OS122、およびJXE124については、図2〜図8に関して、以下でより詳細に説明する。
クライアント・コンピュータ102はインターネット128に接続され、インターネット128はサーバ・コンピュータ130にも接続される。この例では、クライアント・コンピュータ102およびサーバ130はインターネット128を介して通信的に結合されているが、ローカル・エリア・ネットワーク(LAN)(図示せず)および直接有線接続などであるがこれらに限定されない、任意数の通信メディアを介しても結合可能である。
図2は、クライアント・コンピュータ102(図1)によって表される、コンピューティング・プラットフォームまたはハードウェア上で実行する、コンピューティング・システム・アーキテクチャ140のブロック図である。他の可能なプラットフォームには、サーバ130(図1)などのコンピューティング・プラットフォーム、テレビジョン・セット・トップ・ボックス、サービス・ゲートウェイ、ケーブル・モデム、大衆消費電子デバイス、パーソナル・コンピュータ(PC)、産業用コンピュータ、および自動車などが含まれるが、これらに限定されるものではない。OS122(図1)は、クライアント・コンピュータ102のリソースを管理する。本発明の諸実施形態をサポート可能な3つのOSの例には、Linux、Macintosh、および様々なバージョンのWindowsが含まれ、それらのすべてならびにその他が、コンピューティング分野の当業者に良く知られているものとする。
前述のように、この例では、OS122はJXE124(図1)をサポートし、JXE124は、カリフォルニア州サンタクララのサン・マイクロシステムズ社の製品である、JAVA(R)プログラミング言語を実装する。JXE124は、JAVA(R)プログラムを実行するJAVA(R)ランタイム・エンジン(JRE)(図示せず)を含み、JAVA(R)プログラムは、固有の機械コードにコンパイルされるのではなく、JXE124のJREによって解釈されるバイト・コードにコンパイルされる。このようにして、任意のハードウェア・プラットフォーム102、およびJXE124のような対応するJXEを含むOS122上で実行するための、特定のJAVA(R)プログラムを作成することができる。
JXE124は、とりわけ、この例では、JAVA(R)Management Extension(JMX)142によって管理される、Mbean_1 114(図1)、Mbean_1A 118(図1)、およびMbean_1B 120を含む、Mbeanのための実行環境を提供する。以下の説明では、Mbean114、118、および120は、本発明の好ましい実施形態に従ってJMX142によって管理されるMbeanの例として使用される。Mbean114、118、および120は、ハードウェア・プラットフォーム120上に常駐するものとして示されるが、たとえばサーバ130(図1)に関連付けられ、サーバ130上で実行される、メモリ(図示せず)に格納されるなど、それぞれが異なるプラットフォーム上に位置することが可能である。
図3は、本発明の好ましい実施形態に従って採用される、ChildMbeanTableObject(CMTO)150メモリ・オブジェクト150の一例である。CMTO150は、図1および図2と共に紹介される、child_table_1 116の1つの可能な実施形態の例である。CMTOメモリ・オブジェクト150は、単にオブジェクト200の名前、すなわち「ChildMbeanTableObject」を記述するタイトル・セクション152と、CMTOメモリ・オブジェクト150に関連付けられたメモリ要素または属性を含む属性セクション154と、CMTOメモリ・オブジェクト150と共に実行可能な関数または方法を含む方法セクション156とを含む。説明される属性および方法は、単なる例示のために使用されることに留意されたい。追加あるいは異なる、またはその両方の、属性および方法が、本発明の諸実施形態を実装するために採用可能である。
属性セクション154は、「cmtoID」属性158および「childMbeanIDs」属性160を含む。この例では、オブジェクト150のインスタンス化は、Mbean_1 114(図1および図2)と共にchild_table_1 116として格納される。CmtoID属性158は、オブジェクト150の特定インスタンスへの参照を含むタイプCMTObjectIDの変数である。オブジェクト150の各インスタンスは、各インスタンスを固有に識別可能にする、属性に関する固有の値158を有する。ChildMbeanIDs属性160は、開示された技術に従って作成された、子Mbeanのインスタンス化への参照を格納する、タイプVectorの変数である。Mbean_1A 118およびMbean_1B 120は、属性160によって参照される子Mbeanの例である。属性158および160の両方について、図4〜図8と共に、以下でより詳細に説明する。
オブジェクト150の方法セクション156は、2つの例示的関数または方法、すなわち、AddConnection方法162およびTransmitStatement方法164を含む。簡潔にするために、2つの方法のみが示されている。プログラミング分野の当業者であれば、オブジェクト150などのオブジェクトは、通常、様々な属性に関する値を設定および取得するためのコンストラクタ、デストラクタ、および方法を含むが、これらに限定されない、多くの追加の方法を含むことを理解されたい。CMTOメモリ・オブジェクト150は、本発明の好ましい実施形態に従って使用可能な、メモリ・オブジェクトの単なる一例であることも理解されたい。より少ない、より多い、あるいは異なる、またはそれらすべての、属性および方法を備えた、他のメモリ・オブジェクトを採用することが可能である。加えて、本発明の好ましい実施形態に従って、機能およびデータ・ストレージを実装するためのオブジェクト150を採用する以外に、多くの方法がある。たとえば、諸実施形態は、関係データベースと共にコンピュータ・プログラムによって実装可能である。
AddConnection方法162は、Mbeanセットアップ・プロセス200(図5を参照)のMbean作成ブロック262中に呼び出される。方法162は、タイプCSIObjectの変数である、1パラメータ、csiObjectパラメータで呼び出される。タイプCSIObjectの変数については、図4と共に、以下でより詳細に説明する。簡単に言えば、方法162は、ユーザが特定データベース(図示せず)への新しい接続を作成したい場合に呼び出される。csiObjectパラメータ内の情報は、Mbean_1A 118(図1および図2)またはMbean_1B 120(図1および図2)などの新しい子Mbeanを作成し、指定されたデータベースへの接続を確立し、呼び出しプロセスに対応するクライアント状態情報を新しい子Mbeanに提供するために、Mbean_1 114(図1および図2)などの親Mbeanに必要な情報を提供する。
TransmitStatement方法164は、Mbean呼び出しプロセス250(図6を参照)の子Mbean呼び出しブロック270中に呼び出される。方法164は、タイプChildMbeanIDのMbeanIDパラメータおよびタイプStringのsqlStatementパラメータという、2つのパラメータで呼び出される。MbeanIDパラメータは、Mbean_1 114が、sqlStatementパラメータ内で具体化される要求の送信先である適切な子Mbeanを識別できるようにする。クライアント状態情報または照会の宛先である特定データベースに関する任意の情報は、伝送の必要がないことに留意されたい。Mbean_1 114は、MbeanIDパラメータで適切な子Mbeanを識別し、クライアント状態情報は、AddConnection方法162で子が作成された場合に伝送された。SqlStatementパラメータは、回答を予測してconnectionID属性182(図4を参照)に関連付けられたデータベースに伝送される、構造化照会言語(SQL)ステートメントを格納する。
データベースの接続および照会が、開示された技術を採用するために可能な方法の一例に過ぎないことに留意されたい。コンピューティング分野の当業者であれば、本発明の好ましい実施形態に従った応用例から恩恵を受けるはずである、多くの他の応用例を理解されよう。
図4は、本発明の好ましい実施形態に従って採用される、ClientStateInformationObject(CSIO)メモリ・オブジェクト170の一例である。CSIO170は、図1と共に上記で紹介された、CSIO_1A 119およびCSIO_1B 121の一実施形態の例である。CSIO170は、単にオブジェクト200の名前、すなわち「ChildStateInformationObject」を記述するタイトル・セクション172と、CSIO170に関連付けられたメモリ要素または属性を含む属性セクション174と、CSIO170と共に実行可能な関数または方法を含む方法セクション176とを含む。説明される属性および方法は、単なる例示のために使用されることに留意されたい。追加あるいは異なる、またはその両方の、属性および方法が、本発明の諸実施形態を実装するために採用可能である。
CSIO170の属性セクション172は、csioID属性178、childMbeanID属性180、connectionID属性172、serverName属性184、portNumber属性186、databaseAlias属性188、およびuserName属性190を含む。CsioID属性178は、オブジェクト170の特定インスタンスへの参照を含む、タイプCSIObjectIDの変数である。オブジェクト170の各インスタンスは、各インスタンスを固有に識別可能にする、属性に関する固有の値178を有する。
タイプCSIObjectIDの変数であるChildMbeanID属性180は、オブジェクト170が関連付けられた特定のMbeanを識別する。タイプMbeanIDの変数であるConnectionID属性182は、対応する子Mbeanが関連付けられた特定の接続を識別する。ServerName属性184、portNumber属性186、databaseAlias属性188、およびuserName属性190は、すべてタイプStringの変数であり、接続を確立するために必要なデータベース名および特定情報を含む、関連付けられた接続に関する情報を格納する。
オブジェクト170の方法セクション176は、2つの例示的な関数または方法、すなわちConnectToDatabase方法192およびTransmitQuery方法194を含む。ConnectToDatabase方法192は、タイプConnectionIDの値を戻す、Mbean呼び出しプロセス250(図6を参照)のMbean作成ブロック262中に呼び出される関数である。方法192は、参照されるデータベースへの接続を確立するために、属性184、186、188、および190に格納された情報を採用する。戻された値はconnectionID属性182に格納される。TransmitQuery方法194は、タイプStringの値を戻す関数である。戻り値は、属性182で参照されたデータベースから方法194のパラメータに格納された照会への回答、すなわち、sqlStatement、タイプStringの変数を表す。
簡潔にするために、2つの方法のみが示されている。プログラミング分野の当業者であれば、オブジェクト170などのオブジェクトは、通常、様々な属性に関する値を設定および取得するためのコンストラクタ、デストラクタ、および方法を含むが、これらに限定されない、多くの追加の方法を含むことを理解されたい。CSIO170は、本発明の諸実施形態を実装するために使用可能な、メモリ・オブジェクトの単なる一例であることも理解されよう。より少ない、より多い、あるいは異なる、またはそれらすべての、属性および方法を備えた、他のメモリ・オブジェクトを採用することが可能である。加えて、本発明の諸実施形態において、機能およびデータ・ストレージを実装するためのオブジェクト170を採用する以外に、多くの方法がある。たとえば、諸実施形態は、関係データベースと共にコンピュータ・プログラムによって実装可能である。
図5は、本発明の好ましい実施形態に従った実装の一例である、Mbeanセットアップ・プロセス200の流れ図である。この例では、プロセス200はデータ・ストレージ112(図1)に格納され、CPU104(図1)のプロセッサ(図示せず)上で実行され、そのどちらも、クライアント・システム102(図1)に組み込まれている。もちろん、プロセス200、ライブラリ、および任意の他の必要なコードは、データ・ストレージ112以外の場所に格納することができる。たとえば、プロセス200は、任意の必要なコードを、インターネット128(図1)を介してサーバ130(図1)から取り出すことができる。
プロセス200は「Mbeanのセットアップ開始」ブロック202で開始され、すぐに「ライブラリのインポート」ブロック204へと進む。ブロック204中に、プロセス200は、所望の機能を実装するために必要な可能性のある任意の必要なライブラリ・モジュール(図示せず)を、データ・ストレージ112から取り出す。「Mbeanクラスをロード」ブロック206中に、プロセス200は、この例ではMbean_1 114(図1および図2)のインスタンス化である、親Mbeanのインスタンス化を定義するために、データ・ストレージ112から適切なクラス定義を取り出す。「Mbeanの作成」ブロック208中に、プロセス200は、ブロック206で取り出されたクラス定義およびブロック204で取り出されたライブラリに対してメモリを割り振ることによって、Mbean_1 114を作成する。
「子テーブルを作成」ブロック中に、プロセス200は、この例ではchild_table_1 116(図1および図2)である、子テーブルを作成する。子テーブルの構造の一例が、図3と共に上記で説明した、ChildTableObject150である。child_table_1が作成されると、プロセス200は「Mbeanのセットアップを終了」ブロック219へと進み、ここでプロセスは完了する。
ブロック204、206、208、および210に関連付けられた処理中に、たとえばメモリまたは必要なコードの特定部片が使用不可能であるなどのエラーが発生した場合、非同期割り込み212が生成される。その場合、プロセス200は「例外をキャッチ」ブロック214へ進む。ブロック214中に、プロセス200は現在実行中のいずれの処理をも中止し、移行ポイントAへ進む。例外の生成に関連付けられた処理が実行されると、プロセス200は「Mbeanのセットアップを終了」ブロック219に戻り、ここでプロセス200は伝送ポイントBを介して完了する。移行ポイントA、B、ならびにポイントAとBの間で発生する例外処理について、図8と共に以下でより詳細に説明する。
図6は、図5と共に紹介された実装で採用されるMbean呼び出しプロセス250の流れ図である。この例では、プロセス250はデータ・ストレージ112(図1)に格納され、CPU104(図1)のプロセッサ(図示せず)上で実行され、そのどちらも、クライアント・システム102(図1)に組み込まれている。プロセス250は、図4と共に上記で説明したMbeanセットアップ・プロセス200によってMbean_1 114がインスタンス化されると、Mbean_1 114(図1および図2)によって実行される処理を表す。
プロセス250は「Mbeanの呼び出しを開始」ブロック252で開始され、すぐに「呼び出しまで待機」ブロック254へと進む。ブロック254中に、プロセス250は、Mbean_1A 118(図1および図2)またはMbean_1B 120(図1および図2)などの子Mbeanにアクセスするための要求が受信されるまで、中断状態待機である。要求が受信されると、プロセス250は「呼び出しを受信」ブロック256へと進み、その後、「呼び出しを解析」ブロック258へと進む。ブロック258中に、プロセス250は、特定の呼び出しと共に含められた情報に基づいて、実行と共に処理する方法を決定する。
「新しいMbeanであるか」ブロック260中に、プロセス250は、ブロック256中に受信され、ブロック258中に解析された呼び出しが、未だ存在しない子Mbeanへのアクセス要求を表すか否かを決定する。これを表す場合、プロセス250は「Mbeanを作成」ブロック262へと進み、ここで要求された子Mbeanが作成される。ブロック262中に新しいMbeanが作成されると、プロセスは、「IDを割り当て」ブロック264中に、Mbeanを固有に識別するためのchildMbeanID180(図4)を作成する。「テーブル・エントリを作成」ブロック266中に、プロセス250は、新しく作成されたMbeanに関する情報を、この例ではchild_table_1 116(図1および図2)である、Mbeanセットアップ・プロセス200のブロック210(図5)中に作成されたChildMbeanTableObject150に追加する。
ブロック260中に、ブロック258中に受信された呼び出しが既に存在するMbeanに関連付けられている旨をプロセスが決定した場合、制御は「子Mbeanを識別」ブロック268へと進む。ブロック268中に、プロセス250は、child_table_1 116に格納された情報に基づいて、受信した呼び出しを特定の子Mbeanに対して相関する。
ブロック268およびブロック266に続き、制御は「子Mbeanを呼び出し」ブロック270へと進む。ブロック270中にプロセス250は、ブロック268中に識別されたか、またはブロック262中にインスタンス化された、子Mbeanへの呼び出しを実行する。ブロック256中に受信された呼び出しが、単に子Mbeanの作成に関する要求であった場合、プロセス250は、呼び出しを実行せずにブロック270を通過することに留意されたい。適切なMbeanが呼び出されると(または、ブロック256中に受信された呼び出しが子Mbeanを作成するための要求であった場合)、プロセス250は「結果を伝送」ブロック272へと進み、ここでプロセス250は、ブロック256中に受信した呼び出しを開始したプロセスに、現行の処理の結果を伝送する。結果は、図7と共に以下で説明する照会実行プロセス300によって生成された照会結果、作成されたMbeanを呼び出しプロセスが今後のいずれかの呼び出しで指定できるような、ブロック264中に生成されたchildMbeanIDの戻り、あるいはその両方を、含むことができる。その後、プロセス250は「呼び出しまで待機」ブロック254に戻り、前述のように処理が続行される。
プロセス250は、Mbean_1 114が実行されている限り、動作を続行するように設計される。ユーザによって明示的に、または他の関連プロセスの結果として自動的に、Mbean_1 114が終了された場合、非同期割り込み274が生成される。割り込み274から、プロセス250は「クリーンアップ」ブロック276へと進み、ここでMbean_1 114を終了するために任意の必要な機能が実行される。クリーンアップ・プロセスの2つの例は、任意の関連子Mbeanの終了と、作成および実行プロセス250中に割り振られた可能性のある任意のメモリの解放である。最後に、プロセス250は「Mbeanの呼び出しを終了」ブロック279へと進み、ここでプロセス250は完了する。
図7は、図6のプロセス250と共に採用される照会実行プロセス300の流れ図である。この例では、プロセス300はデータ・ストレージ112(図1)に格納され、CPU104(図1)のプロセッサ(図示せず)上で実行され、そのどちらも、クライアント・システム102(図1)に組み込まれている。プロセス300は、Mbean_1 114(図1および図2)などの親Mbeanへの特定の呼び出しと相関する。
プロセスは「照会の実行を開始」ブロック302で開始され、すぐに「MbeanIDおよびステートメントを取得」ブロック304へと進む。ブロック304中に、Mbean_1 114は、プロセス300を介して、特定のデータベースからのデータに対する要求を表すSQLステートメントと共に、childMbean属性180(図4)に格納されたようなchildMbeanIDを受信する。図4および図6と共に上記で説明したように、childMbeanIDは、特定の子Mbean、およびこの例では特定データベースへの接続を、固有に識別する。「Mbeanを識別」ブロック306中に、プロセス300は、ブロック304中に受信したchildMbeanIDを、この例ではMbean_1A 118(図1および図2)である特定の子Mbeanと相関する。
「ステートメントを伝送」ブロック308中に、ブロック304中に受信したSQLステートメントが、ブロック306中に識別されたMbean_1A 118へと伝送される。「結果を受信」ブロック310中に、プロセス300は、ブロック308中に伝送された照会に応答して、Mbean_1A 118から回答を受信する。「結果を処理」ブロック312中に、プロセス300は、ブロック310中に受信した回答を評価し、すなわち、回答が真正な回答であるかまたはエラー・メッセージであるかを判別し、適宜動作する。「結果を伝送」ブロック314中に、プロセス300は、ブロック310中に受信した回答、またはブロック312中に生成されたエラー・メッセージを、ブロック304中に受信したステートメントに起因するプロセスに伝送する。最後に、プロセス300は「照会の実行を終了」ブロック319に進み、ここでプロセス300は完了する。
開示された技術の処理によって、この例では、プロセスが、複数のデータベース接続を確立すること、およびそれらの接続をMbean_1 114によって管理させることを、実行可能となることに留意されたい。これにより、そうでなければ複数のMbeanを管理することになる内容が、大幅に簡略化される。コンピューティング分野の当業者であれば、開示された技術がデータベース接続以外の多くの分野で応用されることを理解されたい。
図8は、図5のMbeanセットアップ・プロセスと共に採用される例外処理プロセス350の流れ図である。この例では、プロセス350はデータ・ストレージ112(図1)に格納され、CPU104(図1)のプロセッサ(図示せず)上で実行され、そのどちらも、クライアント・システム102(図1)に組み込まれている。プロセス350は、Mbeanセットアップ・プロセス200(図5)に関連付けられた例外処理機能に関して説明されるが、説明されるか否かにかかわらず、開示された技術に関連付けられたいずれのプロセスも、同様の例外処理機能を有することになる。
プロセス350は、プロセス200から移行ポイントA(図5)を介して開始され、すぐに「例外を受信」ブロック352へと進む。ブロック352中に、プロセス350は、プロセス200の「例外をキャッチ」ブロック214(図5)中にキャッチされた例外を受信する。「メッセージをプリント」ブロック354中に、プロセス200を開始したユーザまたはプロセスに適切なエラー・メッセージが伝送される。加えて、クライアント・システム102のモニタ106(図1)上に、メッセージを表示することができる。「追跡をプリント」ブロック356中に、プロセス350は、必要であればプロセス200を開始したユーザまたはプロセスが例外の原因を決定できるように、実行追跡ファイルをログ記録する。最後に、プロセス350は移行ポイントB(図5)に入り、図5と共に上記で説明したように、「Mbeanのセットアップを終了」ブロック219に制御を戻す。
以上、本発明の諸実施形態について、その特定の諸実施形態を参照しながら図示および説明してきたが、当業者であれば、形および細部における前述および他の変更が実行可能であることを理解されよう。

Claims (20)

  1. 親クラス・オブジェクト記述に基づいて、親クラス・オブジェクトに関するメモリを割り振るステップと、
    前記親クラス・オブジェクトにより、子クラス・オブジェクト記述に基づいて第1の子クラス・オブジェクトに関するメモリを割り振るステップと、
    前記第1の子クラス・オブジェクトに、第2の子クラス・オブジェクトに対応する第2の識別子とは異なる第1の識別子を割り当てるステップであって、前記第2の子クラス・オブジェクトも、前記子クラス・オブジェクト記述に基づいて前記親クラス・オブジェクトによって割り振られる、ステップと、
    前記第1の子クラス・オブジェクトを前記第2の子クラス・オブジェクトと区別できるように、前記第1の識別子を格納するステップと、
    を含む、方法。
  2. 前記第1の子クラス・オブジェクトにクライアント状態情報を渡すステップと、
    前記第1の子クラス・オブジェクトと共に、前記クライアント状態情報を格納するステップと、
    をさらに含む、請求項1に記載の方法。
  3. 前記クライアント状態情報が、関連付けられたクライアントとデータベースとの間の接続に対応する情報である、請求項1に記載の方法。
  4. 前記親クラス・オブジェクトを呼び出すステップと、
    前記親クラス・オブジェクトへの前記呼び出しと共に、前記親クラス・オブジェクトに識別子を渡すステップと、
    前記渡された識別子を、前記第1の識別子または前記第2の識別子のいずれかと相関するステップと、
    前記渡された識別子を、それぞれ前記第1の識別子または前記第2の識別子のいずれと相関するかに基づいて、前記第1の子クラス・オブジェクトまたは前記第2の子クラス・オブジェクトのいずれかを呼び出すステップと、
    をさらに含む、請求項1に記載の方法。
  5. 前記親クラス・オブジェクト、前記第1の子クラス・オブジェクト、および前記第2の子クラス・オブジェクトが、JAVA(R)プログラミング・オブジェクトである、請求項1に記載の方法。
  6. 前記第1の子クラス・オブジェクトが第1のデータベースへの接続を提供し、前記第2の子クラス・オブジェクトが第2のデータベースへの接続を提供する、請求項1に記載の方法。
  7. 前記第1の子クラス・オブジェクトが第1の通信チャネルへの接続を提供し、前記第2の子クラス・オブジェクトが第2の通信チャネルへの接続を提供する、請求項1に記載の方法。
  8. 親クラス・オブジェクト記述と、
    子クラス・オブジェクト記述と、
    前記親クラス・オブジェクト記述に従って生成された親クラス・オブジェクトにより、前記子クラス・オブジェクト記述に基づいて子クラス・オブジェクトを生成するための論理と、
    前記第1の子クラス・オブジェクトに対応する第1の識別子と、
    前記第1の識別子に基づいて、前記第1の子クラス・オブジェクトを第2の子クラス・オブジェクトと区別するための論理であって、前記第2の子クラス・オブジェクトが、前記子クラス・オブジェクト記述に基づいており、前記親クラス・オブジェクトによって生成される、区別するための論理と、
    を備える、システム。
  9. 前記親クラス・オブジェクトを生成するクライアントに対応するクライアント状態情報と、
    前記クライアント状態情報を前記第1の子クラス・オブジェクトに渡すための論理と、
    前記クライアント状態情報を前記第1の子クラス・オブジェクトと共に格納するための論理と、
    をさらに備える、請求項8に記載のシステム。
  10. 前記クライアント状態情報が、前記クライアントとデータベースとの間の接続に対応する情報である、請求項9に記載のシステム。
  11. 前記親クラス・オブジェクトを呼び出すための論理と、
    前記親クラス・オブジェクトへの前記呼び出しと共に、前記親クラス・オブジェクトに識別子を渡すための論理と、
    前記渡された識別子を、前記第1の識別子または前記第2の識別子のいずれかと相関するための論理と、
    前記渡された識別子を、それぞれ前記第1の識別子または前記第2の識別子のいずれと相関するかに基づいて、前記第1の子クラス・オブジェクトまたは前記第2の子クラス・オブジェクトのいずれかを呼び出すための論理と、
    をさらに備える、請求項8に記載のシステム。
  12. 前記親クラス・オブジェクト、前記第1の子クラス・オブジェクト、および前記第2の子クラス・オブジェクトが、JAVA(R)プログラミング・オブジェクトである、請求項8に記載のシステム。
  13. 前記第1の子クラス・オブジェクトが第1のデータベースへの接続を提供し、前記第2の子クラス・オブジェクトが第2のデータベースへの接続を提供する、請求項8に記載のシステム。
  14. 前記第1の子クラス・オブジェクトが第1の通信チャネルへの接続を提供し、前記第2の子クラス・オブジェクトが第2の通信チャネルへの接続を提供する、請求項8に記載のシステム。
  15. メモリと、
    親クラス・オブジェクト記述に基づいて、親クラス・オブジェクトに関するメモリを割り振るための、プロセッサ上での実行のために前記メモリ上に格納された、論理と
    前記親クラス・オブジェクトにより、子クラス・オブジェクト記述に基づいて第1の子クラス・オブジェクトに関するメモリを割り振るための、前記プロセッサ上での実行のために前記メモリ上に格納された、論理と
    前記第1の子クラス・オブジェクトに、第2の子クラス・オブジェクトに対応する第2の識別子とは異なる第1の識別子を割り当てるための、前記プロセッサ上での実行のために前記メモリ上に格納された、論理であって、前記第2の子クラス・オブジェクトも、前記子クラス・オブジェクト記述に基づいて前記親クラス・オブジェクトによって割り振られる、割り当てるための論理と、
    前記第1の子クラス・オブジェクトを前記第2の子クラス・オブジェクトと区別できるように、前記第1の識別子を格納するための、前記プロセッサ上での実行のために前記メモリ上に格納された、論理と
    を備える、コンピュータ・プログラミング。
  16. 前記第1の子クラス・オブジェクトにクライアント状態情報を渡すための、前記プロセッサ上での実行のために前記メモリ上に格納された、論理と、
    前記第1の子クラス・オブジェクトと共に、前記クライアント状態情報を格納するための、前記プロセッサ上での実行のために前記メモリ上に格納された、論理と、
    をさらに備える、請求項15に記載のコンピュータ・プログラミング。
  17. 前記クライアント状態情報が、関連付けられたクライアントとデータベースとの間の接続に対応する情報である、請求項16に記載のコンピュータ・プログラミング。
  18. 前記親クラス・オブジェクトを呼び出すための、前記プロセッサ上での実行のために前記メモリ上に格納された、論理と、
    前記親クラス・オブジェクトへの前記呼び出しと共に、前記親クラス・オブジェクトに識別子を渡すための、前記プロセッサ上での実行のために前記メモリ上に格納された、論理と、
    前記渡された識別子を、前記第1の識別子または前記第2の識別子のいずれかと相関するための、前記プロセッサ上での実行のために前記メモリ上に格納された、論理と、
    前記渡された識別子を、それぞれ前記第1の識別子または前記第2の識別子のいずれと相関するかに基づいて、前記第1の子クラス・オブジェクトまたは前記第2の子クラス・オブジェクトのいずれかを呼び出すための、前記プロセッサ上での実行のために前記メモリ上に格納された、論理と、
    をさらに備える、請求項15に記載のコンピュータ・プログラミング。
  19. 前記親クラス・オブジェクト、前記第1の子クラス・オブジェクト、および前記第2の子クラス・オブジェクトが、JAVA(R)プログラミング・オブジェクトである、請求項15に記載のコンピュータ・プログラミング。
  20. 前記第1の子クラス・オブジェクトが第1のデータベースへの接続を提供し、前記第2の子クラス・オブジェクトが第2のデータベースへの接続を提供する、請求項15に記載のコンピュータ・プログラミング。
JP2010534466A 2007-11-20 2008-11-19 ソフトウェア・コンポーネントを作成するための方法 Active JP5209058B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/943,220 2007-11-20
US11/943,220 US7958145B2 (en) 2007-11-20 2007-11-20 Creating multiple MBeans from a factory MBean
PCT/EP2008/065859 WO2009065866A1 (en) 2007-11-20 2008-11-19 Generation and management of managed javabean objects

Publications (2)

Publication Number Publication Date
JP2011504268A true JP2011504268A (ja) 2011-02-03
JP5209058B2 JP5209058B2 (ja) 2013-06-12

Family

ID=40364287

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010534466A Active JP5209058B2 (ja) 2007-11-20 2008-11-19 ソフトウェア・コンポーネントを作成するための方法

Country Status (5)

Country Link
US (2) US7958145B2 (ja)
JP (1) JP5209058B2 (ja)
KR (1) KR20100089831A (ja)
TW (1) TW200923785A (ja)
WO (1) WO2009065866A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010250378A (ja) * 2009-04-10 2010-11-04 Nec Corp ソフトウェア開発支援装置、システム、ソフトウェア開発支援装置の機能拡張方法、及びプログラム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8239709B2 (en) * 2009-08-12 2012-08-07 Apple Inc. Managing extrinsic processes
JP5348413B2 (ja) * 2009-09-01 2013-11-20 日本電気株式会社 アプリケーションサーバ、オブジェクト管理方法およびオブジェクト管理プログラム
CN111190592B (zh) * 2018-11-15 2022-06-21 武汉斗鱼网络科技有限公司 一种页面创建方法、存储介质、电子设备及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11234276A (ja) * 1997-10-06 1999-08-27 Sun Microsyst Inc ビーンに基づく管理システム
JP2001147874A (ja) * 1999-11-22 2001-05-29 Toshiba Corp クライアントサーバシステム
JP2004295463A (ja) * 2003-03-27 2004-10-21 Nippon Telegr & Teleph Corp <Ntt> アプリケーション管理システム及びその方法
WO2006100772A1 (ja) * 2005-03-23 2006-09-28 Scio Co., Ltd. 計算装置
WO2007114162A1 (ja) * 2006-03-28 2007-10-11 Matsushita Electric Works, Ltd. ネットワークシステム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6938260B1 (en) 2000-07-14 2005-08-30 International Business Machines Corporation Complex data navigation, manipulation and presentation support for visualage Java
JP2003020299A (ja) 2001-07-06 2003-01-24 Shin Etsu Chem Co Ltd 酸化物ガーネット単結晶
US6950825B2 (en) 2002-05-30 2005-09-27 International Business Machines Corporation Fine grained role-based access to system resources
JP3862652B2 (ja) 2002-12-10 2006-12-27 キヤノン株式会社 印刷制御方法及び情報処理装置
US7080126B2 (en) 2003-02-28 2006-07-18 Bea Systems, Inc. Computer program product for performing resource pool maintenance by maintaining resources in several deques
US20050246453A1 (en) 2004-04-30 2005-11-03 Microsoft Corporation Providing direct access to hardware from a virtual environment
JP2006127461A (ja) 2004-09-29 2006-05-18 Sony Corp 情報処理装置、通信処理方法、並びにコンピュータ・プログラム
EP1684177A1 (fr) * 2005-01-25 2006-07-26 France Telecom Procédé et systeme d'administration dans un environement JMX comprenant une application d'administration et des systemes logiciels à administrer
US8549098B2 (en) 2006-01-12 2013-10-01 Broadcom Israel Research, Ltd. Method and system for protocol offload and direct I/O with I/O sharing in a virtualized network environment
US7904548B2 (en) * 2006-03-31 2011-03-08 Oracle International Corporation System and method of monitoring an enterprise wide RFID deployment using standards based JMX technology
US8407704B2 (en) * 2006-09-26 2013-03-26 International Business Machines Corporation Multi-level memory architecture using data structures for storing access rights and performing address translation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11234276A (ja) * 1997-10-06 1999-08-27 Sun Microsyst Inc ビーンに基づく管理システム
JP2001147874A (ja) * 1999-11-22 2001-05-29 Toshiba Corp クライアントサーバシステム
JP2004295463A (ja) * 2003-03-27 2004-10-21 Nippon Telegr & Teleph Corp <Ntt> アプリケーション管理システム及びその方法
WO2006100772A1 (ja) * 2005-03-23 2006-09-28 Scio Co., Ltd. 計算装置
WO2007114162A1 (ja) * 2006-03-28 2007-10-11 Matsushita Electric Works, Ltd. ネットワークシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010250378A (ja) * 2009-04-10 2010-11-04 Nec Corp ソフトウェア開発支援装置、システム、ソフトウェア開発支援装置の機能拡張方法、及びプログラム

Also Published As

Publication number Publication date
US20090132577A1 (en) 2009-05-21
WO2009065866A1 (en) 2009-05-28
US8676842B2 (en) 2014-03-18
KR20100089831A (ko) 2010-08-12
US7958145B2 (en) 2011-06-07
US20110238702A1 (en) 2011-09-29
TW200923785A (en) 2009-06-01
JP5209058B2 (ja) 2013-06-12

Similar Documents

Publication Publication Date Title
US5442791A (en) Integrated remote execution system for a heterogenous computer network environment
US8135841B2 (en) Method and system for maintaining a grid computing environment having hierarchical relations
JP4914717B2 (ja) 維持可能なグリッドマネージャ
US7062516B2 (en) Methods, systems, and articles of manufacture for implementing a runtime logging service storage infrastructure
US6263498B1 (en) Method and apparatus for enabling server side distributed object modification
US9454616B2 (en) Method and system for unifying configuration descriptors
US20020004815A1 (en) Method and apparatus for providing instrumentation data to an instrumentation data source from within a managed code environment
US20100205604A1 (en) Systems and methods for efficiently running multiple instances of multiple applications
WO2015138198A1 (en) High performance distributed computing environment particularly suited for reservoir modeling and simulation
JPH0675889A (ja) 分散不均一環境におけるサーバー機能の実行方法及び装置
JP2007500387A (ja) インストール/実行/削除機構
JP2007500383A (ja) アプリケーションスタートプロトコル
JPH06110808A (ja) クライアントインターフェースをアプリケーションのオブジェクト指向呼出しに対処するための方法及び装置
JPH1083308A (ja) スタブ検索及びローディング・サブシステム、スタブ検索及びローディング方法並びにスタブ検索及びローディング用記録媒体
US20070276630A1 (en) Enabling high availability and load balancing for jmx mbeans
US20220109605A1 (en) Implementing Affinity and Anti-Affinity with Kubernetes
JP2007500385A (ja) グリッドブラウザコンポーネント
US11271895B1 (en) Implementing advanced networking capabilities using helm charts
JP5209058B2 (ja) ソフトウェア・コンポーネントを作成するための方法
US8082553B2 (en) Client management of java management extensions (JMX) Mbean state
US8001523B1 (en) System and methods for implementing an explicit interface member in a computer programming language
Brock et al. Enhancing cloud computing environments using a cluster as a service
US7926068B2 (en) Printing interface for a computer platform
Kravtsov et al. Service-based Resource Brokering for Grid-Based Data Mining.
US8589471B2 (en) Dynamic dispatch for distributed object-oriented software systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110922

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121023

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130107

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: 20130205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130220

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160301

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5209058

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150