JP4000327B2 - 非同期挙動変更をマネージドアプリケーションプロセスに誘導するためのシステムおよび方法 - Google Patents
非同期挙動変更をマネージドアプリケーションプロセスに誘導するためのシステムおよび方法 Download PDFInfo
- Publication number
- JP4000327B2 JP4000327B2 JP2004370293A JP2004370293A JP4000327B2 JP 4000327 B2 JP4000327 B2 JP 4000327B2 JP 2004370293 A JP2004370293 A JP 2004370293A JP 2004370293 A JP2004370293 A JP 2004370293A JP 4000327 B2 JP4000327 B2 JP 4000327B2
- Authority
- JP
- Japan
- Prior art keywords
- application
- managed
- notifyable
- change
- listener
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/543—Local
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Multi Processors (AREA)
Description
P.van der Linden、「Just Java(登録商標)」、第1章、Sun Microsystems社(第2版、1997)
図1は、例として、複数の異種デバイス上に実施されるランタイム環境(RTE)14、22、24、26を示す機能ブロック図10である。各異種デバイス11は、ランタイム環境14、22、24、26において実行するJava(登録商標)動作環境などのマネージドコードプラットフォームを提供する。1つ以上のアプリケーション27は、ランタイム環境14、22、24、26において実行し得、かつ各実行アプリケーション27およびランタイム環境14、22、24、26の対はマネージドアプリケーションプロセス28を構成する。これらは以下に図2を参照してさらに説明する。異種デバイス11は、非排他的に、デスクトップまたはラップトップコンピュータシステムなどのクライアントコンピュータシステム13を含む。各クライアント13は、格納デバイス15に動作可能に結合され、かつデータ構造およびデータ上で動作する数セットの方法を特定するコードモジュールをそれぞれ定義する1セットのクラス16およびクラスライブラリ17、およびシェア可能なモジュールの集まりを維持する。異種デバイス11はまた、個人データアシスタント21、および一般消費者デバイス(携帯電話23およびセットトップボックス(STB)25など)を含む携帯コンピューティングデバイスを含む。最後に、サーバ18は、グローバルにシェア可能なクラスライブラリ20が維持される格納デバイス19に動作可能に結合される。異種デバイス11のそれぞれは、従来のハードウェアに組み込まれたワイヤレスネットワークコンフィギュレーションを含むネットワーク12を介してインタフェースをとり得る。他のタイプの異種デバイス11および種々のネットワークコンフィギュレーション、構成、およびトポロジーが可能である。
図2は、本発明による、マネージドアプリケーションプロセス34において非同期挙動変更を誘導するためのシステム30を示すブロック図である。システム30は、アプリケーションマネージャ31および1つ以上のマネージドアプリケーションプロセス32を実行するランタイム環境を含む。マネージドアプリケーションプロセス32は、マシン移植可能コード定義互換アプリケーションおよび1つ以上の実行アプリケーション33をインタープリットするJava(登録商標)仮想マシンなどのマネージドコードプラットフォームを含む。格納デバイス30は、全コアマネージドコードプラットフォームを形成する個別のクラス40およびクラスライブラリ42を常に格納する。例として、Java(登録商標)動作環境を参照してシステムを記載したが、Java(登録商標)プログラミング言語などのオブジェクト指向プログラミング言語で好ましきくは書かれたアプリケーションを実行する他の形態のマネージドコードプラットフォームもまた使用され得る。
図3A〜Cは、例として、アプリケーションマネージャ62と複数のマネージドアプリケーションプロセス63、65、67との間の非同期制御およびデータ交換を示す機能ブロック図である。アプリケーションマネージャ62およびマネージドアプリケーションプロセス63、65、67はすべて、ランタイム環境61において実行する。まず図3Aを参照すると、各マネージドアプリケーションプロセス63、65、67は、通知可能オブジェクトのタイプに対応するコンストラクタ69を使用して、通知可能オブジェクトをローカルリスト中に追跡する。
図4は、本発明にしたがってマネージドアプリケーションプロセス中に非同期挙動変更を誘導するための方法90を示す。方法100は、例えば図2のランタイム環境31および他のコンポーネントによって実行され得る一シーケンスのプロセス動作またはステップとして記載される。
図5は、図4の方法90において使用するためのマネージドアプリケーションプロセス32を実行するためのルーチン100を示す。このルーチンの方法は、アプリケーションマネージャ31から受信された変更リクエストに応答して非同期挙動変更を開始することである。
図6は、例として、図5のルーチン100において使用するための誘導された非同期挙動変更を処理するためのルーチン100を示すフロー図である。このルーチンの1つの目的は、通知可能オブジェクト110、111の実行を介してマネージドアプリケーションプロセス102上に挙動変更を生成することである。実行は、リスナ34がアプリケーションマネージャ31からブロードキャストされたメッセージ38を受信した場合に、リスナ34によって引き起こされる。次いで、リスナ34は、各セットの通知可能オブジェクトをマネージドアプリケーションプロセス32の対応のアドレス空間において見出し、そして通知可能オブジェクトにわたって繰り返して挙動変更を生成する役割を果たす。
Claims (11)
- マネージドアプリケーションプロセスの動作を変更するシステムであって、
アプリケーションマネージャ(31)と、
複数のマネージドアプリケーションプロセス(32)であって、該複数のマネージドアプリケーションプロセス(32)の各々は、
オブジェクト指向プログラムコードとして提供される少なくとも1つのアプリケーション(33)と、
該少なくとも1つのアプリケーションを実行するマネージドコードプラットフォームと、
該アプリケーションマネージャと論理的に通信するためのハンドル(36)を含んでいるリスナ(34)と、
オブジェクト指向プログラムコードとして提供される1つ以上の通知可能オブジェクト(35)と
を備え、該アプリケーションマネージャは、該マネージドアプリケーションプロセスに変更リクエストをブロードキャストし、各リスナは、自身のローカルリストにおいて該通知可能オブジェクトにわたって繰り返されて、該マネージドアプリケーションプロセスの動作を変更する、複数のマネージドアプリケーションプロセス(32)と、
該1つ以上の通知可能オブジェクトに対応する1つ以上のコンストラクタを識別するローカルリスト(46)と、
該1つ以上の通知可能オブジェクトを介して変更される該少なくとも1つのアプリケーションと関連した少なくとも1つのプロパティと、
該1つ以上の通知可能オブジェクトを介して変更される該少なくとも1つのアプリケーションと関連した少なくとも1つの見た目および感じ特性と、
該少なくとも1つの見た目および感じ特性の変更を特定するインタフェースをユーザに提供する少なくとも1つの登録されたユーザインタフェースコンポーネントであって、該リスナは、該変更リクエストの受信に対して、該少なくとも1つの登録されたユーザインタフェースコンポーネントの各々にわたって繰り返される、少なくとも1つの登録されたユーザインタフェースコンポーネントと、
該変更リクエストの受信に対して該少なくとも1つの登録されたユーザインタフェースコンポーネントを待ち行列に入れて一時的に実行を遅らせる行列と、
該変更リクエストの受信に対して該少なくとも1つの登録されたユーザインタフェースコンポーネントを直ちに実行するプロセススレッドと
を備える、システム。 - 前記リスナを特定するための制御スレッドであって、前記変更リクエストが前記アプリケーションマネージャから受信されるまでイナクティブにとどまる制御スレッドをさらに備える、請求項1に記載のシステム。
- 前記制御スレッドを介して前記アプリケーションマネージャから情報が通信される、請求項2に記載のシステム。
- 前記ハンドルはTCPソケットを備え、前記情報はTCPを用いて通信される、請求項3に記載のシステム。
- 前記通知可能オブジェクトに対応する1つ以上のコンストラクタであって、実行時に、新しく構築した対象の通知可能オブジェクトをリストに載せる1つ以上のコンストラクタをさらに備える、請求項1〜4のいずれか一項に記載のシステム。
- 前記少なくとも1つのプロパティの変更を特定するための少なくとも1つのプロパティ変更リスナをさらに備える、請求項1に記載のシステム。
- 前記変更リクエストの受信に対して前記少なくとも1つのプロパティ変更リスナが通知される、請求項6に記載のシステム。
- 前記オブジェクト指向プログラムコードは、Java(登録商標)プログラミング言語で書かれる、請求項1〜7のいずれか一項に記載のシステム。
- 前記マネージドコードプラットフォームは、Java(登録商標)仮想マシンである、請求項1〜8のいずれか一項に記載のシステム。
- マネージドアプリケーションプロセスの動作を変更するアプリケーションマネージャ(31)のための方法であって、該方法は、
アプリケーションマネージャ(31)を提供することと、
複数のマネージドアプリケーションプロセス(32)を提供することであって、該複数のマネージドアプリケーションプロセス(32)の各々は、
オブジェクト指向プログラムコードとして提供される少なくとも1つのアプリケーション(33)と、
該少なくとも1つのアプリケーションを実行するマネージドコードプラットフォームと、
該アプリケーションマネージャと論理的に通信するためのハンドル(36)を含んでいるリスナ(34)と、
オブジェクト指向プログラムコードとして提供される1つ以上の通知可能オブジェクト(35)と
を備える、ことと、
該アプリケーションマネージャから該マネージドアプリケーションプロセスに変更リクエストをブロードキャストすることと、
各リスナが、自身のローカルリストにおいて該通知可能オブジェクトにわたって繰り返されて、該マネージドアプリケーションプロセスの動作を変更することと、
ローカルリスト(46)を使用して、該1つ以上の通知可能オブジェクトに対応する1つ以上のコンストラクタを識別することと、
該1つ以上の通知可能オブジェクトを介して該少なくとも1つのアプリケーションと関連した少なくとも1つのプロパティを変更することと、
該1つ以上の通知可能オブジェクトを介して該少なくとも1つのアプリケーションと関連した少なくとも1つの見た目および感じ特性を変更することと、
少なくとも1つの登録されたユーザインタフェースコンポーネントを用いて該少なくとも1つの見た目および感じ特性の変更を特定するインタフェースをユーザに提供することであって、該リスナは、該変更リクエストの受信に対して、該少なくとも1つの登録されたユーザインタフェースコンポーネントの各々にわたって繰り返される、ことと、
行列を使用して、該変更リクエストの受信に対して該少なくとも1つの登録されたユーザインタフェースコンポーネントを待ち行列に入れて一時的に実行を遅らせることと、
プロセススレッドを使用して、該変更リクエストの受信に対して該少なくとも1つの登録されたユーザインタフェースコンポーネントを直ちに実行することと
を包含する、方法。 - 請求項10に記載の方法を実行するためのコンピュータプログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/745,019 US7421707B2 (en) | 2003-12-22 | 2003-12-22 | System and method for inducing asynchronous behavioral changes in a managed application process |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005209173A JP2005209173A (ja) | 2005-08-04 |
JP4000327B2 true JP4000327B2 (ja) | 2007-10-31 |
Family
ID=34634526
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004370293A Active JP4000327B2 (ja) | 2003-12-22 | 2004-12-21 | 非同期挙動変更をマネージドアプリケーションプロセスに誘導するためのシステムおよび方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7421707B2 (ja) |
EP (1) | EP1557757A3 (ja) |
JP (1) | JP4000327B2 (ja) |
CN (1) | CN100343811C (ja) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100587563B1 (ko) * | 2004-07-26 | 2006-06-08 | 삼성전자주식회사 | 상황인지 서비스를 제공하는 장치 및 방법 |
US7457671B2 (en) * | 2004-09-30 | 2008-11-25 | Rockwell Automation Technologies, Inc. | Systems and methods that facilitate management of add-on instruction generation, selection, and/or monitoring during execution |
US7979405B2 (en) | 2005-01-14 | 2011-07-12 | Microsoft Corporation | Method for automatically associating data with a document based on a prescribed type of the document |
US7966286B2 (en) | 2005-02-14 | 2011-06-21 | Microsoft Corporation | Hierarchical management of object schema and behavior |
FR2893803A1 (fr) * | 2005-11-21 | 2007-05-25 | Nec Technologies Uk Ltd | Methode de communication entre une cartre (u)sim en mode serveur et un client |
US20070136201A1 (en) * | 2005-12-12 | 2007-06-14 | Google Inc. | Customized container document modules using preferences |
US8185819B2 (en) | 2005-12-12 | 2012-05-22 | Google Inc. | Module specification for a module to be incorporated into a container document |
US8677319B2 (en) * | 2006-07-25 | 2014-03-18 | International Business Machines Corporation | Computer method and system for composite state management of software change requests |
US8185830B2 (en) * | 2006-08-07 | 2012-05-22 | Google Inc. | Configuring a content document for users and user groups |
US8954861B1 (en) | 2006-08-07 | 2015-02-10 | Google Inc. | Administrator configurable gadget directory for personalized start pages |
US20090037935A1 (en) * | 2006-08-07 | 2009-02-05 | Shoumen Saha | Updating The Configuration of Container Documents |
US8407250B2 (en) * | 2006-08-07 | 2013-03-26 | Google Inc. | Distribution of content document to varying users with security customization and scalability |
US8261263B2 (en) * | 2006-11-30 | 2012-09-04 | International Business Machines Corporation | JVM system scope initializer |
US20080282205A1 (en) * | 2007-02-06 | 2008-11-13 | Access Systems Americas, Inc. | Unified launcher user interface system and method for integrating multiple disparate environments on an electronic device |
US8073882B2 (en) | 2007-07-11 | 2011-12-06 | Mats Stefan Persson | Method, system and computer-readable media for managing software object handles in a dual threaded environment |
US20090210882A1 (en) * | 2008-02-18 | 2009-08-20 | International Business Machines Corporation | System and methods for asynchronously updating interdependent tasks provided by disparate applications in a multi-task environment |
CN101882067B (zh) * | 2009-05-08 | 2014-02-19 | 上海科泰世纪科技有限公司 | 实现函数托管的方法和装置 |
US10270671B2 (en) * | 2015-09-22 | 2019-04-23 | Microsoft Technology Licensing, Llc | External process user interface isolation and monitoring |
CN108595220B (zh) * | 2018-04-25 | 2021-04-16 | 上海掌门科技有限公司 | 应用组件的处理方法、设备及计算机可读存储介质 |
US12001391B2 (en) | 2021-09-16 | 2024-06-04 | Cohesity, Inc. | Managing objects stored at a remote storage |
US20230244633A1 (en) * | 2022-01-31 | 2023-08-03 | Cohesity, Inc. | Extending an expiration time of an object associated with an archive |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6266716B1 (en) | 1998-01-26 | 2001-07-24 | International Business Machines Corporation | Method and system for controlling data acquisition over an information bus |
US6154681A (en) * | 1998-04-03 | 2000-11-28 | Johnson Controls Technology Company | Asynchronous distributed-object building automation system with support for synchronous object execution |
US6263360B1 (en) * | 1998-06-01 | 2001-07-17 | Sri International | System uses filter tree and feed handler for updating objects in a client from a server object list |
EP0967549A3 (en) * | 1998-06-24 | 2002-02-13 | Intellution Inc. | Processing asynchronously called operations of objects |
US7194743B2 (en) * | 2000-12-12 | 2007-03-20 | Citrix Systems, Inc. | Methods and apparatus for communicating changes between a user interface and an executing application using property paths |
-
2003
- 2003-12-22 US US10/745,019 patent/US7421707B2/en active Active
-
2004
- 2004-12-21 EP EP04258015A patent/EP1557757A3/en not_active Withdrawn
- 2004-12-21 JP JP2004370293A patent/JP4000327B2/ja active Active
- 2004-12-22 CN CNB2004101024194A patent/CN100343811C/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN1797346A (zh) | 2006-07-05 |
CN100343811C (zh) | 2007-10-17 |
EP1557757A2 (en) | 2005-07-27 |
US7421707B2 (en) | 2008-09-02 |
US20050138640A1 (en) | 2005-06-23 |
JP2005209173A (ja) | 2005-08-04 |
EP1557757A3 (en) | 2005-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4000327B2 (ja) | 非同期挙動変更をマネージドアプリケーションプロセスに誘導するためのシステムおよび方法 | |
JP5496683B2 (ja) | カスタマイズ方法及びコンピュータシステム | |
US6519594B1 (en) | Computer-implemented sharing of java classes for increased memory efficiency and communication method | |
JP4640728B2 (ja) | アプリケーション環境をクローニングするプロセスにおけるインクリメンタルプロファイリングデータを、ダイナミックかつ持続的にトラッキングするシステムおよび方法 | |
Yokote et al. | A Reflective Architecture for an Object-Oriented Distributed Operating System. | |
JP4690437B2 (ja) | ネットワークアプリケーションにおける通信方法、通信装置及びそのためのプログラム | |
US6996829B2 (en) | Handling callouts made by a multi-threaded virtual machine to a single threaded environment | |
US7293267B1 (en) | System and method for performing speculative initialization of application models for a cloned runtime system process | |
US12056513B2 (en) | Virtual machine migration using multiple, synchronized streams of state data transferring via file descriptors | |
US7984438B2 (en) | Virtual machine transitioning from emulating mode to enlightened mode | |
KR20060117869A (ko) | 파티션 버스 | |
JPH0926879A (ja) | 要求伝達方法及びそのネットワーク | |
CA2577493A1 (en) | Operating systems | |
JP2008524686A (ja) | コンピュータ装置においてアプリケーションを保守する方法 | |
US7426720B1 (en) | System and method for dynamic preloading of classes through memory space cloning of a master runtime system process | |
US8200938B2 (en) | Computer system and method providing a memory buffer for use with native and platform-independent software code | |
US7343603B1 (en) | System and method for performing incremental initialization of a master runtime system process | |
KR20060063643A (ko) | 운영 체제의 성능을 향상시키는 방법 및 시스템 | |
JP2007507779A (ja) | オペレーティングシステム | |
JPH11224203A (ja) | リモートオブジェクトコール方法、コンピュータ読み取り可能な記憶媒体、リモートオブジェクトコール処理方法、及び分散型コンピュータネットワークシステム | |
Bouraqadi-Saâdani et al. | A reflective infrastructure for coarse-grained strong mobility and its tool-based implementation | |
US20030084202A1 (en) | Apparatus and methods for integrating apis for program execution management | |
Murase et al. | Implementation and evaluation of wapplet framework | |
US11809877B2 (en) | Dynamically tuning a computing device's performance for a containerized application | |
Appavoo et al. | Utilizing Linux kernel components in K42 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070222 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070328 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070627 |
|
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: 20070807 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070813 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4000327 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100817 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110817 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110817 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120817 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130817 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |