JP4864287B2 - 識別方法、記録媒体及びコンピュータシステム - Google Patents
識別方法、記録媒体及びコンピュータシステム Download PDFInfo
- Publication number
- JP4864287B2 JP4864287B2 JP2003517747A JP2003517747A JP4864287B2 JP 4864287 B2 JP4864287 B2 JP 4864287B2 JP 2003517747 A JP2003517747 A JP 2003517747A JP 2003517747 A JP2003517747 A JP 2003517747A JP 4864287 B2 JP4864287 B2 JP 4864287B2
- Authority
- JP
- Japan
- Prior art keywords
- java
- java object
- computer
- class
- cluster
- 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 - Lifetime
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)
Description
Claims (16)
- メモリと、少なくとも1つのプロセッサと、を備え、前記少なくとも1つのプロセッサによりJava(登録商標)の仮想マシンを構築することが可能なコンピュータシステムにおいて、ガーベッジコレクションの最中の実行時に前記仮想マシンによってアクティブなJavaオブジェクトおよびアクティブなJavaクラスを識別する方法であって、
(a)前記仮想マシンが、前記仮想マシン内でJavaオブジェクト表現のクラスタを順次表現する工程であって、前記クラスタ内の前記Javaオブジェクト表現のそれぞれは、
Javaオブジェクトに関連付けられたクラスの内部クラス表現への第1参照と、
前記Javaオブジェクトに関連付けられたインスタンスフィールドへの第2参照と、
を含む、工程と
(b)前記仮想マシンが実行時に前記Javaオブジェクト表現のクラスタを順次読む工程と、
(c)前記仮想マシンが、ガーベッジコレクションの最中に前記クラスタの前記第2参照を使用して、前記メモリにおけるJavaオブジェクトに対応するメモリアドレスに関してマークを付け、それによって、前記クラスタの順次読み出しにより実行時にJavaオブジェクトを識別可能にする工程と、
(d)前記仮想マシンが、ガーベッジコレクションの最中に前記クラスタの1つまたは2つ以上の前記第1参照を使用して、前記メモリにおけるJavaクラスに対応するメモリアドレスに関してマークを付け、それによって、前記クラスタの順次読み出しによりガーベッジコレクションの最中の実行時にJavaクラスを識別可能にする工程であって、前記第1参照は、前記Javaオブジェクトの前記内部クラス表現への直接参照である、工程と、
を備える方法。 - 請求項1に記載の方法であって、
前記第2参照は、参照群のアレイへの参照であり、
前記参照群のアレイ内のそれぞれ参照は、前記Javaオブジェクトに関連付けられたインスタンスフィールドへの参照である方法。 - 請求項1に記載の方法であって、前記第1参照および前記第2参照は、4バイトとしてアロケートされる方法。
- 請求項1に記載の方法であって、前記方法は、
(e)マークが付けられていない内部クラス表現を取り除く工程をさらに備える方法。 - 請求項1に記載の方法であって、前記方法は、
(e)マークが付けられていないJavaオブジェクトを取り除く工程をさらに備える方法。 - メモリと、少なくとも1つのプロセッサと、を備え、前記少なくとも1つのプロセッサによりJavaの仮想マシンを構築することが可能なコンピュータによって、ガーベッジコレクションの最中の実行時に、アクティブなJavaオブジェクトおよびアクティブなJavaクラスを識別するためのコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
(a)前記仮想マシン内でJavaオブジェクト表現のクラスタを順次表現する手順であって、前記クラスタ内の前記Javaオブジェクト表現のそれぞれは、
Javaオブジェクトに関連付けられたクラスの内部クラス表現への第1参照と、
前記Javaオブジェクトに関連付けられたインスタンスフィールドへの第2参照と、
を含む、手順と
(b)ガーベッジコレクションの最中の実行時に前記仮想マシンによって前記Javaオブジェクト表現のクラスタを順次読む手順と、
(c)ガーベッジコレクションの最中に前記クラスタの前記第2参照を使用して、前記メモリにおけるJavaオブジェクトに対応するメモリアドレスに関してマークを付け、それによって、前記クラスタの順次読み出しにより実行時にJavaオブジェクトを識別可能にする手順と、
(d)ガーベッジコレクションの最中に前記クラスタの1つまたは2つ以上の前記第1参照を使用して、前記メモリにおけるJavaクラスに対応するメモリアドレスに関してマークを付け、それによって、前記クラスタの順次読み出しによりガーベッジコレクションの最中の実行時にJavaクラスを識別可能にする手順であって、前記第1参照は、前記Javaオブジェクトの前記内部クラス表現への直接参照である、手順と、
を前記コンピュータに実行させるためのコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。 - 請求項6に記載のコンピュータ読み取り可能な記録媒体であって、
前記第2参照は、参照群のアレイへの参照であり、
前記参照群のアレイ内のそれぞれ参照は、前記Javaオブジェクトに関連付けられたインスタンスフィールドへの参照であるコンピュータ読み取り可能な記録媒体。 - 請求項7に記載のコンピュータ読み取り可能な記録媒体であって、
前記第1参照および前記第2参照は、4バイトとしてアロケートされるコンピュータ読み取り可能な記録媒体。 - 請求項6に記載のコンピュータ読み取り可能な記録媒体であって、更に、
マークが付けられていない内部クラス表現を取り除く手順を前記コンピュータに実行させるためのコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。 - 請求項6に記載のコンピュータ読み取り可能な記録媒体であって、更に、
マークが付けられていないJavaオブジェクトを取り除く手順を前記コンピュータに実行させるためのコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。 - 請求項6に記載のコンピュータ読み取り可能な記録媒体であって、
前記Javaオブジェクトは、実行時のガーベッジコレクションのために識別される、コンピュータ読み取り可能な記録媒体。 - Javaコンピューティング環境において、ガーベッジコレクションの最中の実行時に仮想マシンによってアクティブなJavaオブジェクトおよびアクティブなJavaクラスを識別するためのコンピュータシステムであって、
メモリと、
前記仮想マシンを構築することが可能な少なくとも1つのプロセッサと、
を備え、
前記少なくとも1つのプロセッサは、
前記仮想マシン内でJavaオブジェクト表現のクラスタを順次表現することであって、前記クラスタ内の前記Javaオブジェクト表現のそれぞれは、Javaオブジェクトに関連付けられたクラスの内部クラス表現への第1参照と、前記Javaオブジェクトに関連付けられたインスタンスフィールドへの第2参照とからなる、ことと、
実行時に前記仮想マシンによって前記Javaオブジェクト表現のクラスタを順次読むことと、
ガーベッジコレクションの最中に前記クラスタの前記第2参照を使用して、前記メモリにおけるJavaオブジェクトに対応するメモリアドレスに関してマークを付け、それによって、前記クラスタの順次読み出しにより実行時にJavaオブジェクトを識別可能にすることと、
ガーベッジコレクションの最中に前記クラスタの1つまたは2つ以上の前記第1参照を使用して、前記メモリにおけるJavaクラスに対応するメモリアドレスに関してマークを付け、そうして、前記クラスタの順次読み出しによりガーベッジコレクションの最中の実行時にJavaクラスを識別可能にすることであって、前記第1参照は、前記Javaオブジェクトの前記内部クラス表現への直接参照である、ことと、
を行うように構成される、コンピュータシステム。 - 請求項12に記載のコンピュータシステムであって、
前記第2参照は、参照群のアレイへの参照であり、
前記参照群のアレイ内のそれぞれ参照は、前記Javaオブジェクトに関連付けられたインスタンスフィールドへの参照である、コンピュータシステム。 - 請求項12に記載のコンピュータシステムであって、
前記第1参照および前記第2参照は、4バイトとしてアロケートされる、コンピュータシステム。 - 請求項12に記載の方法であって、
前記少なくとも1つのロセッサは、更に、マークが付けられていない内部クラス表現を取り除くことを行うように構成される、コンピュータシステム。 - 請求項12に記載のコンピュータシステムであって、
前記少なくとも1つのプロセッサは、更に、マークが付けられていないJavaオブジェクトを取り除くことを行うように構成される、コンピュータシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/919,743 | 2001-07-31 | ||
US09/919,743 US7036120B2 (en) | 2001-07-31 | 2001-07-31 | Two tier clusters for representation of objects in Java programming environments |
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 JP2005521117A (ja) | 2005-07-14 |
JP4864287B2 true 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) |
Families Citing this family (8)
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 |
US7263532B2 (en) * | 2003-09-23 | 2007-08-28 | Microsoft Corporation | Region-based memory management for object-oriented programs |
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 |
WO2000041079A2 (en) | 1999-01-06 | 2000-07-13 | 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 AU AU2002317575A patent/AU2002317575A1/en not_active Abandoned
- 2002-07-25 JP JP2003517747A patent/JP4864287B2/ja not_active Expired - Lifetime
- 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
Also Published As
Publication number | Publication date |
---|---|
US7036120B2 (en) | 2006-04-25 |
WO2003012637A2 (en) | 2003-02-13 |
US20030028865A1 (en) | 2003-02-06 |
EP1481320A2 (en) | 2004-12-01 |
WO2003012637A3 (en) | 2004-09-23 |
AU2002317575A1 (en) | 2003-02-17 |
EP1481320B1 (en) | 2018-04-18 |
JP2005521117A (ja) | 2005-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1119756C (zh) | 用于进行静态初始化的方法和系统 | |
US6286134B1 (en) | Instruction selection in a multi-platform environment | |
CN112052006B (zh) | 一种软件代码编译方法及系统 | |
US7003778B2 (en) | Exception handling in java computing environments | |
US6959430B2 (en) | Specialized heaps for creation of objects in object-oriented environments | |
US6553426B2 (en) | Method apparatus for implementing multiple return sites | |
JP4864287B2 (ja) | 識別方法、記録媒体及びコンピュータシステム | |
WO2002077804A2 (en) | Techniques for loading class files into virtual machines | |
US6799185B2 (en) | Frameworks for accessing Java class files | |
US6754796B2 (en) | Frameworks for implementation of java heaps | |
JP2003186675A (ja) | Javaコンピューティング環境におけるタイプチェック | |
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 | |
US6996824B2 (en) | Frameworks for efficient representation of string objects in Java programming environments | |
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 |