JP2005521117A - Javaプログラミング環境におけるオブジェクトの表現のための2ティアのクラスタ - Google Patents
Javaプログラミング環境におけるオブジェクトの表現のための2ティアのクラスタ Download PDFInfo
- Publication number
- JP2005521117A JP2005521117A JP2003517747A JP2003517747A JP2005521117A JP 2005521117 A JP2005521117 A JP 2005521117A JP 2003517747 A JP2003517747 A JP 2003517747A JP 2003517747 A JP2003517747 A JP 2003517747A JP 2005521117 A JP2005521117 A JP 2005521117A
- Authority
- JP
- Japan
- Prior art keywords
- java
- class
- java object
- virtual machine
- representation
- 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
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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Abstract
【解決手段】 この技術は仮想マシン、特に限られたリソースで動作するもの(例えば組み込みシステム)の中のJavaオブジェクトの表現に非常に適する。Javaオブジェクト表現のクラスタが開示される。Javaオブジェクト表現のそれぞれは、Javaオブジェクトへの参照およびJavaオブジェクトに関連付けられたクラスへの参照を提供する。したがって2ティア表現は、Javaオブジェクトおよびクラスの両方に関する情報にアクセスするのが必要なアプリケーションを効率的に実現することを可能にするよう提供されえる。これは、ゴミ集めのように多大なリソースを要求するアプリケーションを実行するのに必要な処理が低減されることを意味する。さらに2ティア表現内の参照の一つは、オブジェクトに関連付けられた内部クラス表現に直接にアクセスすることを可能にする。その結果、本発明は、Javaオブジェクトに関する情報に高速にアクセスすることを可能にする。よって本発明は、仮想マシン、特に限られた計算パワーおよび/またはメモリを持つシステムのパフォーマンスを向上させることができる。
Description
Claims (20)
- 複数のJavaオブジェクト表現を含むメモリの第1部分であって、前記Javaオブジェクト表現のそれぞれは、
Javaオブジェクトに関連付けられたクラスの内部クラス表現への第1参照、および
Javaオブジェクトに関連付けられたインスタンスフィールドへの第2参照
を含むJava仮想マシン。 - 請求項1に記載のJava仮想マシンであって、前記Java仮想マシンは、
前記第1参照に関連付けられたJavaクラスの内部クラス表現、および
前記第2参照によって参照されるJavaオブジェクトのインスタンスフィールド
を含むメモリの第2部分をさらに備えるJava仮想マシン。 - 請求項2に記載のJava仮想マシンであって、前記複数のJavaオブジェクト表現は同じサイズを有するJava仮想マシン。
- 請求項3に記載のJava仮想マシンであって、前記第1参照は、前記Javaオブジェクトの前記内部クラス表現への直接参照であるJava仮想マシン。
- 請求項4に記載のJava仮想マシンであって、
前記第2参照は、参照群のアレイへの参照であり、
前記参照群のアレイ内のそれぞれの参照は、前記Javaオブジェクトに関連付けられたインスタンスフィールドへの参照である
Java仮想マシン。 - 請求項5に記載のJava仮想マシンであって、前記第1および第2参照は4バイトとしてアロケートされるJava仮想マシン。
- 請求項6に記載のJava仮想マシンであって、
前記内部クラス表現は、所定のサイズのヘッダを含み、
前記Javaオブジェクトに関連付けられたメソッドテーブルは前記ヘッダの直後にアロケートされる
Java仮想マシン。 - Javaコンピューティング環境において、アクティブなJavaオブジェクトおよびアクティブなJavaクラスを識別する方法であって、
順次配列されたJavaオブジェクト表現のクラスタを読むこと、
JavaオブジェクトまたはJavaクラスのいずれが識別されるべきかを決定すること、
Javaオブジェクトが識別されるべきであると前記決定が決定するときにJavaオブジェクトに対応するメモリアドレスにマークを付けること、および
Javaクラスが識別されるべきであると前記決定が決定するときにJavaクラスに対応するメモリアドレスにマークを付けること
を含む方法。 - 請求項8に記載の方法であって、前記Javaオブジェクト表現のそれぞれは、
Javaオブジェクトに関連付けられたクラスの内部クラス表現への第1参照、および
前記Javaオブジェクトに関連付けられたインスタンスフィールドへの第2参照
を含む方法。 - 請求項9に記載の方法であって、前記第1参照は、前記Javaオブジェクトの内部クラス表現への直接参照である方法。
- 請求項9に記載の方法であって、
前記第2参照は、参照群のアレイへの参照であり、
前記参照群のアレイ内のそれぞれの参照は、前記Javaオブジェクトに関連付けられたインスタンスフィールドへの参照である
方法。 - 請求項9に記載の方法であって、前記第1および第2参照は4バイトとしてアロケートされる方法。
- 請求項9に記載の方法であって、前記方法は、
マークが付けられていない内部クラス表現を取り除くこと
をさらに含む方法。 - 請求項9に記載の方法であって、前記方法は、
マークが付けられていないJavaオブジェクトを取り除くこと
をさらに含む方法。 - 請求項9に記載の方法であって、前記方法は、JavaオブジェクトおよびJavaクラスのゴミ集めのために仮想マシンによって用いられる方法。
- アクティブなJavaオブジェクトおよびアクティブJavaクラスを識別するコンピュータプログラムコードを含むコンピュータで読み取り可能な媒体であって、
クラスタ内に順次配列されたJavaオブジェクト表現のクラスタを読むコンピュータプログラムコード、
JavaオブジェクトまたはJavaクラスのいずれが識別されるべきかを決定するコンピュータプログラムコード、
Javaオブジェクトが識別されるべきであると前記決定が決定するときにJavaオブジェクトに対応するメモリアドレスにマークを付けるコンピュータプログラムコード、および
Javaクラスが識別されるべきであると前記決定が決定するときにJavaクラスに対応するメモリアドレスにマークを付けるコンピュータプログラムコード
を含むコンピュータで読み取り可能な媒体。 - 請求項16に記載のコンピュータで読み取り可能な媒体であって、前記Javaオブジェクト表現のそれぞれは、
Javaオブジェクトに関連付けられたクラスの内部クラス表現への第1参照、および
Javaオブジェクトに関連付けられたインスタンスフィールドへの第2参照
を含むコンピュータで読み取り可能な媒体。 - 請求項17に記載のコンピュータで読み取り可能な媒体であって、前記第1参照は、前記Javaオブジェクトの前記内部クラス表現への直接参照であるコンピュータで読み取り可能な媒体。
- 請求項18に記載のコンピュータで読み取り可能な媒体であって、
前記第2参照は、参照群のアレイへの参照であり、
前記参照群のアレイ内のそれぞれの参照は、前記Javaオブジェクトに関連付けられたインスタンスフィールドへの参照である
コンピュータで読み取り可能な媒体。 - 請求項19に記載のコンピュータで読み取り可能な媒体であって、前記第1および第2参照は4バイトとしてアロケートされるコンピュータで読み取り可能な媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/919,743 US7036120B2 (en) | 2001-07-31 | 2001-07-31 | Two tier clusters for representation of objects in Java programming environments |
US09/919,743 | 2001-07-31 | ||
PCT/US2002/023617 WO2003012637A2 (en) | 2001-07-31 | 2002-07-25 | Two tier clusters for representation of objects in java programming environments |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005521117A true JP2005521117A (ja) | 2005-07-14 |
JP4864287B2 JP4864287B2 (ja) | 2012-02-01 |
Family
ID=25442577
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003517747A Expired - Lifetime JP4864287B2 (ja) | 2001-07-31 | 2002-07-25 | 識別方法、記録媒体及びコンピュータシステム |
Country Status (5)
Country | Link |
---|---|
US (1) | US7036120B2 (ja) |
EP (1) | EP1481320B1 (ja) |
JP (1) | JP4864287B2 (ja) |
AU (1) | AU2002317575A1 (ja) |
WO (1) | WO2003012637A2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005100402A (ja) * | 2003-09-23 | 2005-04-14 | Microsoft Corp | オブジェクト指向プログラムのための領域ベースのメモリ管理 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7177297B2 (en) * | 2003-05-12 | 2007-02-13 | Qualcomm Incorporated | Fast frequency hopping with a code division multiplexed pilot in an OFDMA system |
US7526515B2 (en) * | 2004-01-21 | 2009-04-28 | International Business Machines Corporation | Method and system for a grid-enabled virtual machine with movable objects |
US7587721B2 (en) * | 2004-05-20 | 2009-09-08 | Sap Ag | Sharing objects in runtime systems |
US20060026379A1 (en) * | 2004-07-27 | 2006-02-02 | Samsung Electronics Co., Ltd. | Effective memory management method and device in object-oriented application |
US20100293206A1 (en) * | 2009-05-12 | 2010-11-18 | Tatu Ylonen Oy Ltd | Clustering related objects during garbage collection |
US9361224B2 (en) | 2013-09-04 | 2016-06-07 | Red Hat, Inc. | Non-intrusive storage of garbage collector-specific management data |
US10884641B2 (en) | 2019-04-16 | 2021-01-05 | Paypal, Inc. | Low latency gateway for an asynchronous orchestration engine using direct memory |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6134603A (en) * | 1998-03-20 | 2000-10-17 | Sun Microsystems, Inc. | Method and system for deterministic hashes to identify remote methods |
US6151703A (en) * | 1996-05-20 | 2000-11-21 | Inprise Corporation | Development system with methods for just-in-time compilation of programs |
US5920720A (en) * | 1997-02-25 | 1999-07-06 | Microsoft Corporation | Efficient computer based virtual machine object structure |
US5966702A (en) * | 1997-10-31 | 1999-10-12 | Sun Microsystems, Inc. | Method and apparatus for pre-processing and packaging class files |
US6088777A (en) * | 1997-11-12 | 2000-07-11 | Ericsson Messaging Systems, Inc. | Memory system and method for dynamically allocating a memory divided into plural classes with different block sizes to store variable length messages |
US6237043B1 (en) * | 1997-11-19 | 2001-05-22 | International Business Machines Corporation | System and method for adding highly optimized synchronization capability to objects at run-time |
US6070173A (en) | 1997-11-26 | 2000-05-30 | International Business Machines Corporation | Method and apparatus for assisting garbage collection process within a java virtual machine |
US6732357B1 (en) | 1997-12-12 | 2004-05-04 | International Business Machines Corporation | Determining and compensating for temporal overhead in trace record generation and processing |
US6330709B1 (en) * | 1998-03-30 | 2001-12-11 | International Business Machines Corporation | Virtual machine implementation for shared persistent objects |
US6249906B1 (en) | 1998-06-26 | 2001-06-19 | International Business Machines Corp. | Adaptive method and system to minimize the effect of long table walks |
KR20010072477A (ko) | 1998-08-13 | 2001-07-31 | 썬 마이크로시스템즈, 인코포레이티드 | 가상 머신 환경에서 네이티브 코드를 변환하고 실행하는방법 및 장치 |
US6154747A (en) * | 1998-08-26 | 2000-11-28 | Hunt; Rolf G. | Hash table implementation of an object repository |
US6115719A (en) * | 1998-11-20 | 2000-09-05 | Revsoft Corporation | Java compatible object oriented component data structure |
CA2255042C (en) * | 1998-11-30 | 2004-04-13 | Leonard W. Theivendra | Class loader |
EP1068572A2 (en) | 1999-01-06 | 2001-01-17 | Koninklijke Philips Electronics N.V. | Arrangement for executing program code with reduced memory requirements |
US6880155B2 (en) | 1999-02-02 | 2005-04-12 | Sun Microsystems, Inc. | Token-based linking |
GB9907283D0 (en) | 1999-03-31 | 1999-05-26 | Koninkl Philips Electronics Nv | Memory reclamation method |
GB9920676D0 (en) | 1999-09-01 | 1999-11-03 | Tao Group Ltd | Translating and executing object-oriented computer programs |
GB9921720D0 (en) | 1999-09-14 | 1999-11-17 | Tao Group Ltd | Loading object-oriented computer programs |
US6470493B1 (en) * | 1999-09-30 | 2002-10-22 | Compaq Information Technologies Group, L.P. | Computer method and apparatus for safe instrumentation of reverse executable program modules |
US6470893B1 (en) | 2000-05-15 | 2002-10-29 | Peter V. Boesen | Wireless biopotential sensing device and method with capability of short-range radio frequency transmission and reception |
US6711657B1 (en) * | 1999-10-21 | 2004-03-23 | Oracle Corp. | Methods for managing memory in a run-time environment including registration of a deallocation routine at explicit, lazy initialization |
US6728955B1 (en) | 1999-11-05 | 2004-04-27 | International Business Machines Corporation | Processing events during profiling of an instrumented program |
US6711576B1 (en) * | 2000-06-12 | 2004-03-23 | Sun Microsystems, Inc. | Method and apparatus for implementing compact type signatures in a virtual machine environment |
US6704746B2 (en) * | 2000-12-12 | 2004-03-09 | Sun Microsystems, Inc. | Method and apparatus for lazy instantiation of objects in a virtual machine |
US6851111B2 (en) | 2000-12-15 | 2005-02-01 | International Business Machines Corporation | System and method for class loader constraint checking |
JP2003074421A (ja) | 2001-09-04 | 2003-03-12 | Denso Corp | エバポガスパージシステムのリーク診断装置 |
-
2001
- 2001-07-31 US US09/919,743 patent/US7036120B2/en not_active Expired - Lifetime
-
2002
- 2002-07-25 WO PCT/US2002/023617 patent/WO2003012637A2/en active Application Filing
- 2002-07-25 EP EP02748245.4A patent/EP1481320B1/en not_active Expired - Lifetime
- 2002-07-25 AU AU2002317575A patent/AU2002317575A1/en not_active Abandoned
- 2002-07-25 JP JP2003517747A patent/JP4864287B2/ja not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005100402A (ja) * | 2003-09-23 | 2005-04-14 | Microsoft Corp | オブジェクト指向プログラムのための領域ベースのメモリ管理 |
Also Published As
Publication number | Publication date |
---|---|
EP1481320B1 (en) | 2018-04-18 |
JP4864287B2 (ja) | 2012-02-01 |
EP1481320A2 (en) | 2004-12-01 |
US7036120B2 (en) | 2006-04-25 |
WO2003012637A3 (en) | 2004-09-23 |
WO2003012637A2 (en) | 2003-02-13 |
US20030028865A1 (en) | 2003-02-06 |
AU2002317575A1 (en) | 2003-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1119756C (zh) | 用于进行静态初始化的方法和系统 | |
US7003778B2 (en) | Exception handling in java computing environments | |
US6553426B2 (en) | Method apparatus for implementing multiple return sites | |
US6959430B2 (en) | Specialized heaps for creation of objects in object-oriented environments | |
US6799185B2 (en) | Frameworks for accessing Java class files | |
JP4864287B2 (ja) | 識別方法、記録媒体及びコンピュータシステム | |
US6754796B2 (en) | Frameworks for implementation of java heaps | |
US6948156B2 (en) | Type checking in java computing environments | |
US7181724B2 (en) | Representation of Java® data types in virtual machines | |
US6751790B2 (en) | Frameworks for efficient representation of string objects in Java programming environments | |
US6961933B2 (en) | Representation of Java data types in virtual machines | |
US6934726B2 (en) | Storing and retrieving of field descriptors in Java computing environments | |
US7082597B2 (en) | Representation of objects in a Java programming environment | |
JP2005501331A (ja) | Javaオブジェクトをインスタンス化するためのJavaマクロインストラクションを生成するフレームワーク | |
US20030041181A1 (en) | Frameworks for efficient representation of string objects in Java programming environments | |
US7197750B2 (en) | Java Bytecode instruction for determining hashcode values | |
US20030041319A1 (en) | Java bytecode instruction for retrieving string representations of java objects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050722 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071106 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20080130 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20080206 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080305 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080422 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20080722 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080821 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20080910 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20081010 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20100726 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20100729 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20110509 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20110512 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110523 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20110602 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20110606 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110915 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111109 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141118 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4864287 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |
|
EXPY | Cancellation because of completion of term |