Description
Please direct comments on this JSR to the Spec Lead(s).
Stage timeline
| Stage | Access | Start | Finish |
|---|---|---|---|
| Final Release | Download page | 30 Sep, 2004 | |
| Final Approval Ballot | View results | 31 Aug, 2004 | 13 Sep, 2004 |
| Proposed Final Draft | Download page | 09 Aug, 2004 | |
| Public Review | Download page | 14 Oct, 2003 | 13 Nov, 2003 |
| Community Draft Ballot | View results | 22 Jul, 2003 | 28 Jul, 2003 |
| Community Review | Login page | 26 Jun, 2003 | 28 Jul, 2003 |
| Expert Group Formation | 02 Apr, 2002 | ||
| JSR Review Ballot | View results | 19 Mar, 2002 | 01 Apr, 2002 |
Team
Specification Leads
- Flavio BergamaschiIBM
Expert Group
- BEA Systems
- Cyanea Systems Corp.
- Hewlett-Packard
- Hitachi, Ltd.
- IBM
- Intel Corp.
- Opnet Technologies, Inc
- Oracle
- Pramati Technologies
- Progress Software
- SAP SE
- Sitraka
- Sun Microsystems, Inc.
- Wasler, David
- Wily Technology, Inc.
Proposal
Identification |
Request |
Contributions
Section 1. Identification
Submitting Member: IBM and Sun Microsystems, Inc.
Name of Contact People: Flavio Bergamaschi & Mandy Chung
E-Mail Address: flavio@uk.ibm.com, mandy.chung@sun.com
Telephone Number: +44 1962 815853, +1 408 276 7045
Fax Number: +44 1962 818999, +1 408 276 7700
Specification Lead: Flavio Bergamaschi
E-Mail Address: flavio@uk.ibm.com
Telephone Number: +44 1962 815853
Fax Number: +44 1962 818999
Initial Expert Group Membership:
IBM
Sun Microsystems, Inc.
other JavaTM Licensees
other Tools Vendors
Supporting this JSR:
IBM
Sun Microsystems, Inc.
Section 2: Request
2.1 Please describe the proposed Specification:
A specification for APIs for monitoring and management of the JavaTM virtual machine. These APIs will provide Java applications, system management tools and RAS-related tools with the ability to monitor the health of the Java virtual machine as well as manage certain run-time controls such as:
- Health Indicators
- Class load/unload
- Memory allocation statistics
- Garbage collection statistics
- Monitor info & statistics
- Thread info & statistics
- Just-in-Time statistics
- Object info (show/count all objects in the Java heap)
- Underlying OS and platform info
- etc.
- Run-Time Control
- Minimum heap size
- Verbose GC on demand
- Garbage collection control
- Thread creation control
- Just-in-Time compilation control
- etc.
The APIs will be designed with the following characteristics:
- Very low performance impact, even when events are being monitored
- Restricted to low frequency events
- Interface should be self describing (i.e. interface should not be described statically)
- Mandatory and optional set of events and control values
These characteristics suggest the need for Java APIs to support self monitoring of Java applications as well as native interfaces to support tools requiring minimal perturbation of the system.
Support for existing system management standards such as JMX and CIM/WBEM will also be considered.
A new JavaTM Platform Profiling Architecture is being developed (JSR-163) which appears to have some functional overlap with the health indicators. If conflicting requirements do not preclude a single interface, one will be developed in concert with the JSR-163 Expert Group.
2.2 What is the target Java platform? (i.e., desktop, server, personal, embedded, card, etc.)
Java 2 Standard Edition
2.3 What need of the Java community will be addressed by the proposed specification?
This specification is intended to provide the underlying support for JVMTM monitoring and management from within Java applications as well as remote access by system management applications and RAS-related tools.
2.4 Why isn't this need met by existing specifications?
The majority of the existing monitoring and management options and techniques are very limited, lack functionality, degrade performance, and are unreliable and non standard, leading to a multitude of disconnected solutions.
2.5 Please give a short description of the underlying technology or technologies:
See item 2.1 above.
2.6 Is there a proposed package name for the API Specification? (i.e., javapi.something, org.something, etc.)
Not yet.
2.7 Does the proposed specification have any dependencies on specific operating systems, CPUs, or I/O devices that you know of?
No.
2.8 Are there any security issues that cannot be addressed by the current security model?
No.
2.9 Are there any internationalization or localization issues?
No.
2.10 Are there any existing specifications that might be rendered obsolete, deprecated, or in need of revision as a result of this work?
No.
2.11 Please describe the anticipated schedule for the development of this specification.
Inclusion in the J2SE Tiger release.
2.12 Please describe the anticipated working model for the Expert Group working on developing this specification.
Primarily email communication. Teleconference and face to face meetings as required.
Section 3: Contributions
3.1 Please list any existing documents, specifications, or implementations that describe the technology. Please include links to the documents if they are publicly available.
None.
3.2 Explanation of how these items might be used as a starting point for the work.
N/A