JDK-4834627 : sharable copy of the bytecode of JRE classes with multi JVMs running
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 1.4.2
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • OS: generic
  • CPU: generic
  • Submitted: 2003-03-19
  • Updated: 2003-03-19
  • Resolved: 2003-03-19
Related Reports
Duplicate :  
Description
###@###.### 2003-03-19

J2SE Version (please include all output from java -version flag):
  1.4

Does this problem occur on J2SE 1.3, 1.4 or 1.4.1?  Yes / No (pick one)
  All

Operating System Configuration Information (be specific):
  All

Hardware Configuration Information (be specific):
  All the supported ones

Bug Description:
  This is not a bug, but it is a problem. When an application
  implemented in Java is run several times, several processes
  running the Java Virtual Machine are run. Each of them loads
  a private, non-shared copy of the bytecode of JRE classes.
  E.g. if the application has a Swing GUI, the bytecode of
  Swing, which is very large, is loaded several times instead
  of being shared as it is the normal case with C/C++.
  This makes the use of Java prohibitive for applications which
  are meant to run on multi-user servers. The problem occurs also
  on Personal Computers since even a single user could run two
  applications implemented in Java.

  This is a critical problem for Alcatel.

Steps to Reproduce (be specific):
  Run any demo app based on Swing and see the amount of
  memory used.


Comments
SUGGESTED FIX ###@###.### 2003-03-19 Suggested fix: It would be sufficient to compile to native code the classes and use the result as shared libraries.
19-03-2003