邂逅JVM中的Bug

作者:张桂权

         接触JAVA已有两年多的时间了,应该说对她已经有了一个很深刻的了解,可还是第一次邂逅JAVA虚拟机的bug,而且更然人吃惊的是代码竟然只有那么可怜的几行。

        这一天我用的IDE是IBM的开源软件日食(eclipse  3.1)版本,其他的都是SUN的底层软件包了。JDK 1.5版,J2SDK 1.5版。不过在我的电脑上还装了JCreator Pro 1.5 版,还有J2EE,J2ME,Java Card等,不过我看了一下这与bug没有什么关系。主要是内存出现了错误。代码还没有写完,就崩溃了,真是很遗憾的。我把这个问题告于大家,让大伙也看看究竟怎么一回事 !没准你也会碰上她呢 。 祝你好运 !

      程序代码如下:

import java.awt.*;
import java.awt.Event;
import javax.swing.*;

public class jiecheng extends JFrame {

private JPanel contentPane = new JPanel();
private JLabel prempt = new JLabel();
private JTextField input = new JTextField();
private JLabel prempt2 = new JLabel();
private JTextField output = new JTextField();
private JButton submit = new JButton();
private JButton reset = new JButton();
private String temp = new String();

public jiecheng(){
 
contentPane = (JPanel)getContentPane();
setSize(350,200);
setLocation(300,400);
setVisible(true);
setResizeable(false);
prempt.setText("请输入一个非负整数");
prempt.setBounds(12,20,135,12);
contentPane.add(prempt);
input.setBounds(140,12,200,24);
contentPane.add(input);
prempt2.setText("最后的阶乘为");
prempt2.setBounds(12,60,135,12);
contentPane.add(prempt2);
output.setBounds(140,48,200,24);
contentPane.add(output);
submit.setText("确定");
submit.setBounds(60,120,60,24);
contentPane.add(submit);
reset.setText("重置");
reset.setBounds(150,120,60,24);
contentPane.add(reset);

...

}

  public static void main(String[] args){
 
       jiecheng jc = new jiecheng();
  
  }
}

错误报告内容如下:

1. hs_err_pid4256.log文件

#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x738c5230, pid=4256, tid=4312
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0-beta-b32c mixed mode)
# Problematic frame:
# C  [D3DIM700.DLL+0x15230]
#

---------------  T H R E A D  ---------------

Current thread (0x008239b0):  JavaThread "main" [_thread_in_native, id=4312]

siginfo: ExceptionCode=0xc0000005, reading address 0x0000008c

Registers:
EAX=0x00000000, EBX=0x00000008, ECX=0x10000000, EDX=0x0008aa20
ESP=0x0006c874, EBP=0x0006c8a0, ESI=0x0008e960, EDI=0x00000000
EIP=0x738c5230, EFLAGS=0x00010246

Top of Stack: (sp=0x0006c874)
0x0006c874:   0008e960 738c52fc 0008e960 00000000
0x0006c884:   00000000 80000001 00000001 00000000
0x0006c894:   0006c8cc 7396b2bc 00000000 0006c8bc
0x0006c8a4:   738bb661 00000000 8007000e 0008e960
0x0006c8b4:   0008e8a0 00000000 0006c8d8 738bcf69
0x0006c8c4:   0008e960 0008e960 0006c918 7396af17
0x0006c8d4:   00000000 0006c8e4 738bcf29 0008e960
0x0006c8e4:   0006c924 738bd22a 00000001 0008e8b8

Instructions: (pc=0x738c5230)
0x738c5220:   00 85 c0 74 05 85 48 1c 75 18 8b 86 b4 33 00 00
0x738c5230:   8b 80 8c 00 00 00 85 c0 74 0f 8b 40 04 85 48 1c


Stack: [0x00030000,0x00070000),  sp=0x0006c874,  free space=242k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [D3DIM700.DLL+0x15230]
C  [D3DIM700.DLL+0xb661]
C  [D3DIM700.DLL+0xcf69]
C  [D3DIM700.DLL+0xcf29]
C  [D3DIM700.DLL+0xd22a]
C  [D3DIM700.DLL+0xfd69]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  sun.awt.Win32GraphicsEnvironment.initDisplay()V+0
j  sun.awt.Win32GraphicsEnvironment.initDisplayWrapper()V+10
j  sun.awt.Win32GraphicsEnvironment.<clinit>()V+6
v  ~StubRoutines::call_stub
j  java.lang.Class.forName0(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;+0
j  java.lang.Class.forName(Ljava/lang/String;)Ljava/lang/Class;+5
j  java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment()Ljava/awt/GraphicsEnvironment;+24
j  java.awt.Window.init(Ljava/awt/GraphicsConfiguration;)V+45
j  java.awt.Window.<init>()V+66
j  java.awt.Frame.<init>(Ljava/lang/String;)V+1
j  java.awt.Frame.<init>()V+3
j  javax.swing.JFrame.<init>()V+1
j  jiecheng.<init>()V+1
j  jiecheng.main([Ljava/lang/String;)V+4
v  ~StubRoutines::call_stub

---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
  0x00830060 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=4372]
  0x0082f430 JavaThread "CompilerThread0" daemon [_thread_blocked, id=4368]
  0x0082e280 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=4364]
  0x0082d9d0 JavaThread "Finalizer" daemon [_thread_blocked, id=4360]
  0x0082c700 JavaThread "Reference Handler" daemon [_thread_blocked, id=4356]
=>0x008239b0 JavaThread "main" [_thread_in_native, id=4312]

Other Threads:
  0x0082b840 VMThread [id=4352]
  0x00832e50 WatcherThread [id=4376]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
 def new generation   total 576K, used 386K [0x63a60000, 0x63b00000, 0x63f40000)
  eden space 512K,  75% used [0x63a60000, 0x63ac0b48, 0x63ae0000)
  from space 64K,   0% used [0x63ae0000, 0x63ae0000, 0x63af0000)
  to   space 64K,   0% used [0x63af0000, 0x63af0000, 0x63b00000)
 tenured generation   total 1408K, used 0K [0x63f40000, 0x640a0000, 0x67a60000)
   the space 1408K,   0% used [0x63f40000, 0x63f40000, 0x63f40200, 0x640a0000)
 compacting perm gen  total 8192K, used 303K [0x67a60000, 0x68260000, 0x6ba60000)
   the space 8192K,   3% used [0x67a60000, 0x67aabf30, 0x67aac000, 0x68260000)
    ro space 8192K,  63% used [0x6ba60000, 0x6bf6dd40, 0x6bf6de00, 0x6c260000)
    rw space 12288K,  46% used [0x6c260000, 0x6c7f86d0, 0x6c7f8800, 0x6ce60000)

Dynamic libraries:
0x00400000 - 0x0040b000  C:/Program Files/Java/j2re1.5.0/bin/javaw.exe
0x7c920000 - 0x7c9b4000  C:/WINDOWS/system32/ntdll.dll
0x7c800000 - 0x7c91c000  C:/WINDOWS/system32/kernel32.dll
0x77da0000 - 0x77e49000  C:/WINDOWS/system32/ADVAPI32.dll
0x77e50000 - 0x77ee1000  C:/WINDOWS/system32/RPCRT4.dll
0x77d10000 - 0x77d9f000  C:/WINDOWS/system32/USER32.dll
0x77ef0000 - 0x77f36000  C:/WINDOWS/system32/GDI32.dll
0x77be0000 - 0x77c38000  C:/WINDOWS/system32/MSVCRT.dll
0x76300000 - 0x7631d000  C:/WINDOWS/system32/IMM32.DLL
0x62c20000 - 0x62c29000  C:/WINDOWS/system32/LPK.DLL
0x73fa0000 - 0x7400b000  C:/WINDOWS/system32/USP10.dll
0x6d620000 - 0x6d7c7000  C:/Program Files/Java/j2re1.5.0/bin/client/jvm.dll
0x76b10000 - 0x76b3a000  C:/WINDOWS/system32/WINMM.dll
0x6d260000 - 0x6d267000  C:/Program Files/Java/j2re1.5.0/bin/hpi.dll
0x76bc0000 - 0x76bcb000  C:/WINDOWS/system32/PSAPI.DLL
0x6d5f0000 - 0x6d5fb000  C:/Program Files/Java/j2re1.5.0/bin/verify.dll
0x6d2d0000 - 0x6d2ec000  C:/Program Files/Java/j2re1.5.0/bin/java.dll
0x6d610000 - 0x6d61e000  C:/Program Files/Java/j2re1.5.0/bin/zip.dll
0x01260000 - 0x013bb000  C:/Program Files/Java/j2re1.5.0/bin/awt.dll
0x72f70000 - 0x72f96000  C:/WINDOWS/system32/WINSPOOL.DRV
0x76990000 - 0x76acd000  C:/WINDOWS/system32/ole32.dll
0x736d0000 - 0x73719000  C:/WINDOWS/system32/ddraw.dll
0x73b30000 - 0x73b36000  C:/WINDOWS/system32/DCIMAN32.dll
0x738b0000 - 0x73980000  C:/WINDOWS/system32/D3DIM700.DLL

VM Arguments:
jvm_args: -Djava.library.path=d:/workspace/org.eclipse.swt.win32.win32.x86
java_command: jiecheng

Environment Variables:


---------------  S Y S T E M  ---------------

OS: Windows XP Build 2600 Service Pack 2

CPU:total 1(active 1) family 15, cmov, cx8, fxsr, mmx, sse, sse2

Memory: 4k page, physical 523760k(92104k free), swap 1280080k(3892k free)

vm_info: Java HotSpot(TM) Client VM (1.5.0-beta-b32c) for windows-x86, built on Jan 23 2004 01:52:20 by "java_re" with MS VC++ 6.0

   

2.  hs_err_pid3092.log文件

#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x738c5230, pid=3092, tid=3380
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0-beta-b32c mixed mode)
# Problematic frame:
# C  [D3DIM700.DLL+0x15230]
#

---------------  T H R E A D  ---------------

Current thread (0x008239b0):  JavaThread "main" [_thread_in_native, id=3380]

siginfo: ExceptionCode=0xc0000005, reading address 0x0000008c

Registers:
EAX=0x00000000, EBX=0x00000008, ECX=0x10000000, EDX=0x0008aa20
ESP=0x0006c874, EBP=0x0006c8a0, ESI=0x0008e960, EDI=0x00000000
EIP=0x738c5230, EFLAGS=0x00010246

Top of Stack: (sp=0x0006c874)
0x0006c874:   0008e960 738c52fc 0008e960 00000000
0x0006c884:   00000000 80000001 00000001 00000000
0x0006c894:   0006c8cc 7396b2bc 00000000 0006c8bc
0x0006c8a4:   738bb661 00000000 8007000e 0008e960
0x0006c8b4:   0008e8a0 00000000 0006c8d8 738bcf69
0x0006c8c4:   0008e960 0008e960 0006c918 7396af17
0x0006c8d4:   00000000 0006c8e4 738bcf29 0008e960
0x0006c8e4:   0006c924 738bd22a 00000001 0008e8b8

Instructions: (pc=0x738c5230)
0x738c5220:   00 85 c0 74 05 85 48 1c 75 18 8b 86 b4 33 00 00
0x738c5230:   8b 80 8c 00 00 00 85 c0 74 0f 8b 40 04 85 48 1c


Stack: [0x00030000,0x00070000),  sp=0x0006c874,  free space=242k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [D3DIM700.DLL+0x15230]
C  [D3DIM700.DLL+0xb661]
C  [D3DIM700.DLL+0xcf69]
C  [D3DIM700.DLL+0xcf29]
C  [D3DIM700.DLL+0xd22a]
C  [D3DIM700.DLL+0xfd69]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  sun.awt.Win32GraphicsEnvironment.initDisplay()V+0
j  sun.awt.Win32GraphicsEnvironment.initDisplayWrapper()V+10
j  sun.awt.Win32GraphicsEnvironment.<clinit>()V+6
v  ~StubRoutines::call_stub
j  java.lang.Class.forName0(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;+0
j  java.lang.Class.forName(Ljava/lang/String;)Ljava/lang/Class;+5
j  java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment()Ljava/awt/GraphicsEnvironment;+24
j  java.awt.Window.init(Ljava/awt/GraphicsConfiguration;)V+45
j  java.awt.Window.<init>()V+66
j  java.awt.Frame.<init>(Ljava/lang/String;)V+1
j  java.awt.Frame.<init>()V+3
j  javax.swing.JFrame.<init>()V+1
j  jiecheng.<init>()V+1
j  jiecheng.main([Ljava/lang/String;)V+4
v  ~StubRoutines::call_stub

---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
  0x00830060 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=3208]
  0x0082f430 JavaThread "CompilerThread0" daemon [_thread_blocked, id=3200]
  0x0082e280 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=3204]
  0x0082d9d0 JavaThread "Finalizer" daemon [_thread_blocked, id=3104]
  0x0082c700 JavaThread "Reference Handler" daemon [_thread_blocked, id=3408]
=>0x008239b0 JavaThread "main" [_thread_in_native, id=3380]

Other Threads:
  0x0082b840 VMThread [id=3404]
  0x00832e50 WatcherThread [id=3496]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
 def new generation   total 576K, used 386K [0x63a60000, 0x63b00000, 0x63f40000)
  eden space 512K,  75% used [0x63a60000, 0x63ac0b48, 0x63ae0000)
  from space 64K,   0% used [0x63ae0000, 0x63ae0000, 0x63af0000)
  to   space 64K,   0% used [0x63af0000, 0x63af0000, 0x63b00000)
 tenured generation   total 1408K, used 0K [0x63f40000, 0x640a0000, 0x67a60000)
   the space 1408K,   0% used [0x63f40000, 0x63f40000, 0x63f40200, 0x640a0000)
 compacting perm gen  total 8192K, used 303K [0x67a60000, 0x68260000, 0x6ba60000)
   the space 8192K,   3% used [0x67a60000, 0x67aabf28, 0x67aac000, 0x68260000)
    ro space 8192K,  63% used [0x6ba60000, 0x6bf6dd40, 0x6bf6de00, 0x6c260000)
    rw space 12288K,  46% used [0x6c260000, 0x6c7f86d0, 0x6c7f8800, 0x6ce60000)

Dynamic libraries:
0x00400000 - 0x0040b000  C:/Program Files/Java/j2re1.5.0/bin/javaw.exe
0x7c920000 - 0x7c9b4000  C:/WINDOWS/system32/ntdll.dll
0x7c800000 - 0x7c91c000  C:/WINDOWS/system32/kernel32.dll
0x77da0000 - 0x77e49000  C:/WINDOWS/system32/ADVAPI32.dll
0x77e50000 - 0x77ee1000  C:/WINDOWS/system32/RPCRT4.dll
0x77d10000 - 0x77d9f000  C:/WINDOWS/system32/USER32.dll
0x77ef0000 - 0x77f36000  C:/WINDOWS/system32/GDI32.dll
0x77be0000 - 0x77c38000  C:/WINDOWS/system32/MSVCRT.dll
0x76300000 - 0x7631d000  C:/WINDOWS/system32/IMM32.DLL
0x62c20000 - 0x62c29000  C:/WINDOWS/system32/LPK.DLL
0x73fa0000 - 0x7400b000  C:/WINDOWS/system32/USP10.dll
0x6d620000 - 0x6d7c7000  C:/Program Files/Java/j2re1.5.0/bin/client/jvm.dll
0x76b10000 - 0x76b3a000  C:/WINDOWS/system32/WINMM.dll
0x6d260000 - 0x6d267000  C:/Program Files/Java/j2re1.5.0/bin/hpi.dll
0x76bc0000 - 0x76bcb000  C:/WINDOWS/system32/PSAPI.DLL
0x6d5f0000 - 0x6d5fb000  C:/Program Files/Java/j2re1.5.0/bin/verify.dll
0x6d2d0000 - 0x6d2ec000  C:/Program Files/Java/j2re1.5.0/bin/java.dll
0x6d610000 - 0x6d61e000  C:/Program Files/Java/j2re1.5.0/bin/zip.dll
0x01260000 - 0x013bb000  C:/Program Files/Java/j2re1.5.0/bin/awt.dll
0x72f70000 - 0x72f96000  C:/WINDOWS/system32/WINSPOOL.DRV
0x76990000 - 0x76acd000  C:/WINDOWS/system32/ole32.dll
0x736d0000 - 0x73719000  C:/WINDOWS/system32/ddraw.dll
0x73b30000 - 0x73b36000  C:/WINDOWS/system32/DCIMAN32.dll
0x738b0000 - 0x73980000  C:/WINDOWS/system32/D3DIM700.DLL

VM Arguments:
jvm_args: -Djava.library.path=d:/workspace/org.eclipse.swt.win32.win32.x86
java_command: jiecheng

Environment Variables:


---------------  S Y S T E M  ---------------

OS: Windows XP Build 2600 Service Pack 2

CPU:total 1(active 1) family 15, cmov, cx8, fxsr, mmx, sse, sse2

Memory: 4k page, physical 523760k(91976k free), swap 1280080k(3588k free)

vm_info: Java HotSpot(TM) Client VM (1.5.0-beta-b32c) for windows-x86, built on Jan 23 2004 01:52:20 by "java_re" with MS VC++ 6.0

3. hs_err_pid3360.log文件

#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x738c5230, pid=3360, tid=3880
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0-beta-b32c mixed mode)
# Problematic frame:
# C  [D3DIM700.DLL+0x15230]
#

---------------  T H R E A D  ---------------

Current thread (0x008239b0):  JavaThread "main" [_thread_in_native, id=3880]

siginfo: ExceptionCode=0xc0000005, reading address 0x0000008c

Registers:
EAX=0x00000000, EBX=0x00000008, ECX=0x10000000, EDX=0x0008aa20
ESP=0x0006c874, EBP=0x0006c8a0, ESI=0x0008e960, EDI=0x00000000
EIP=0x738c5230, EFLAGS=0x00010246

Top of Stack: (sp=0x0006c874)
0x0006c874:   0008e960 738c52fc 0008e960 00000000
0x0006c884:   00000000 80000001 00000001 00000000
0x0006c894:   0006c8cc 7396b2bc 00000000 0006c8bc
0x0006c8a4:   738bb661 00000000 8007000e 0008e960
0x0006c8b4:   0008e8a0 00000000 0006c8d8 738bcf69
0x0006c8c4:   0008e960 0008e960 0006c918 7396af17
0x0006c8d4:   00000000 0006c8e4 738bcf29 0008e960
0x0006c8e4:   0006c924 738bd22a 00000001 0008e8b8

Instructions: (pc=0x738c5230)
0x738c5220:   00 85 c0 74 05 85 48 1c 75 18 8b 86 b4 33 00 00
0x738c5230:   8b 80 8c 00 00 00 85 c0 74 0f 8b 40 04 85 48 1c


Stack: [0x00030000,0x00070000),  sp=0x0006c874,  free space=242k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [D3DIM700.DLL+0x15230]
C  [D3DIM700.DLL+0xb661]
C  [D3DIM700.DLL+0xcf69]
C  [D3DIM700.DLL+0xcf29]
C  [D3DIM700.DLL+0xd22a]
C  [D3DIM700.DLL+0xfd69]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  sun.awt.Win32GraphicsEnvironment.initDisplay()V+0
j  sun.awt.Win32GraphicsEnvironment.initDisplayWrapper()V+10
j  sun.awt.Win32GraphicsEnvironment.<clinit>()V+6
v  ~StubRoutines::call_stub
j  java.lang.Class.forName0(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;+0
j  java.lang.Class.forName(Ljava/lang/String;)Ljava/lang/Class;+5
j  java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment()Ljava/awt/GraphicsEnvironment;+24
j  java.awt.Window.init(Ljava/awt/GraphicsConfiguration;)V+45
j  java.awt.Window.<init>()V+66
j  java.awt.Frame.<init>(Ljava/lang/String;)V+1
j  java.awt.Frame.<init>()V+3
j  javax.swing.JFrame.<init>()V+1
j  jiecheng.<init>()V+1
j  jiecheng.main([Ljava/lang/String;)V+4
v  ~StubRoutines::call_stub

---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
  0x00830060 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=3156]
  0x0082f430 JavaThread "CompilerThread0" daemon [_thread_blocked, id=3096]
  0x0082e280 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=3980]
  0x0082d9d0 JavaThread "Finalizer" daemon [_thread_blocked, id=2852]
  0x0082c700 JavaThread "Reference Handler" daemon [_thread_blocked, id=2892]
=>0x008239b0 JavaThread "main" [_thread_in_native, id=3880]

Other Threads:
  0x0082b840 VMThread [id=2872]
  0x00832e50 WatcherThread [id=2944]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
 def new generation   total 576K, used 386K [0x63a60000, 0x63b00000, 0x63f40000)
  eden space 512K,  75% used [0x63a60000, 0x63ac0b48, 0x63ae0000)
  from space 64K,   0% used [0x63ae0000, 0x63ae0000, 0x63af0000)
  to   space 64K,   0% used [0x63af0000, 0x63af0000, 0x63b00000)
 tenured generation   total 1408K, used 0K [0x63f40000, 0x640a0000, 0x67a60000)
   the space 1408K,   0% used [0x63f40000, 0x63f40000, 0x63f40200, 0x640a0000)
 compacting perm gen  total 8192K, used 303K [0x67a60000, 0x68260000, 0x6ba60000)
   the space 8192K,   3% used [0x67a60000, 0x67aabf28, 0x67aac000, 0x68260000)
    ro space 8192K,  63% used [0x6ba60000, 0x6bf6dd40, 0x6bf6de00, 0x6c260000)
    rw space 12288K,  46% used [0x6c260000, 0x6c7f86d0, 0x6c7f8800, 0x6ce60000)

Dynamic libraries:
0x00400000 - 0x0040b000  C:/Program Files/Java/j2re1.5.0/bin/javaw.exe
0x7c920000 - 0x7c9b4000  C:/WINDOWS/system32/ntdll.dll
0x7c800000 - 0x7c91c000  C:/WINDOWS/system32/kernel32.dll
0x77da0000 - 0x77e49000  C:/WINDOWS/system32/ADVAPI32.dll
0x77e50000 - 0x77ee1000  C:/WINDOWS/system32/RPCRT4.dll
0x77d10000 - 0x77d9f000  C:/WINDOWS/system32/USER32.dll
0x77ef0000 - 0x77f36000  C:/WINDOWS/system32/GDI32.dll
0x77be0000 - 0x77c38000  C:/WINDOWS/system32/MSVCRT.dll
0x76300000 - 0x7631d000  C:/WINDOWS/system32/IMM32.DLL
0x62c20000 - 0x62c29000  C:/WINDOWS/system32/LPK.DLL
0x73fa0000 - 0x7400b000  C:/WINDOWS/system32/USP10.dll
0x6d620000 - 0x6d7c7000  C:/Program Files/Java/j2re1.5.0/bin/client/jvm.dll
0x76b10000 - 0x76b3a000  C:/WINDOWS/system32/WINMM.dll
0x6d260000 - 0x6d267000  C:/Program Files/Java/j2re1.5.0/bin/hpi.dll
0x76bc0000 - 0x76bcb000  C:/WINDOWS/system32/PSAPI.DLL
0x6d5f0000 - 0x6d5fb000  C:/Program Files/Java/j2re1.5.0/bin/verify.dll
0x6d2d0000 - 0x6d2ec000  C:/Program Files/Java/j2re1.5.0/bin/java.dll
0x6d610000 - 0x6d61e000  C:/Program Files/Java/j2re1.5.0/bin/zip.dll
0x01260000 - 0x013bb000  C:/Program Files/Java/j2re1.5.0/bin/awt.dll
0x72f70000 - 0x72f96000  C:/WINDOWS/system32/WINSPOOL.DRV
0x76990000 - 0x76acd000  C:/WINDOWS/system32/ole32.dll
0x736d0000 - 0x73719000  C:/WINDOWS/system32/ddraw.dll
0x73b30000 - 0x73b36000  C:/WINDOWS/system32/DCIMAN32.dll
0x738b0000 - 0x73980000  C:/WINDOWS/system32/D3DIM700.DLL

VM Arguments:
jvm_args: -Djava.library.path=d:/workspace/org.eclipse.swt.win32.win32.x86
java_command: jiecheng

Environment Variables:


---------------  S Y S T E M  ---------------

OS: Windows XP Build 2600 Service Pack 2

CPU:total 1(active 1) family 15, cmov, cx8, fxsr, mmx, sse, sse2

Memory: 4k page, physical 523760k(92044k free), swap 1280080k(3564k free)

vm_info: Java HotSpot(TM) Client VM (1.5.0-beta-b32c) for windows-x86, built on Jan 23 2004 01:52:20 by "java_re" with MS VC++ 6.0

4.hs_err_pid4168.log文件

#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x738c5230, pid=4168, tid=4172
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0-beta-b32c mixed mode)
# Problematic frame:
# C  [D3DIM700.DLL+0x15230]
#

---------------  T H R E A D  ---------------

Current thread (0x008239b0):  JavaThread "main" [_thread_in_native, id=4172]

siginfo: ExceptionCode=0xc0000005, reading address 0x0000008c

Registers:
EAX=0x00000000, EBX=0x00000008, ECX=0x10000000, EDX=0x0008aa20
ESP=0x0006c874, EBP=0x0006c8a0, ESI=0x0008e960, EDI=0x00000000
EIP=0x738c5230, EFLAGS=0x00010246

Top of Stack: (sp=0x0006c874)
0x0006c874:   0008e960 738c52fc 0008e960 00000000
0x0006c884:   00000000 80000001 00000001 00000000
0x0006c894:   0006c8cc 7396b2bc 00000000 0006c8bc
0x0006c8a4:   738bb661 00000000 8007000e 0008e960
0x0006c8b4:   0008e8a0 00000000 0006c8d8 738bcf69
0x0006c8c4:   0008e960 0008e960 0006c918 7396af17
0x0006c8d4:   00000000 0006c8e4 738bcf29 0008e960
0x0006c8e4:   0006c924 738bd22a 00000001 0008e8b8

Instructions: (pc=0x738c5230)
0x738c5220:   00 85 c0 74 05 85 48 1c 75 18 8b 86 b4 33 00 00
0x738c5230:   8b 80 8c 00 00 00 85 c0 74 0f 8b 40 04 85 48 1c


Stack: [0x00030000,0x00070000),  sp=0x0006c874,  free space=242k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [D3DIM700.DLL+0x15230]
C  [D3DIM700.DLL+0xb661]
C  [D3DIM700.DLL+0xcf69]
C  [D3DIM700.DLL+0xcf29]
C  [D3DIM700.DLL+0xd22a]
C  [D3DIM700.DLL+0xfd69]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  sun.awt.Win32GraphicsEnvironment.initDisplay()V+0
j  sun.awt.Win32GraphicsEnvironment.initDisplayWrapper()V+10
j  sun.awt.Win32GraphicsEnvironment.<clinit>()V+6
v  ~StubRoutines::call_stub
j  java.lang.Class.forName0(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;+0
j  java.lang.Class.forName(Ljava/lang/String;)Ljava/lang/Class;+5
j  java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment()Ljava/awt/GraphicsEnvironment;+24
j  java.awt.Window.init(Ljava/awt/GraphicsConfiguration;)V+45
j  java.awt.Window.<init>()V+66
j  java.awt.Frame.<init>(Ljava/lang/String;)V+1
j  java.awt.Frame.<init>()V+3
j  javax.swing.JFrame.<init>()V+1
j  jiecheng.<init>()V+1
j  jiecheng.main([Ljava/lang/String;)V+4
v  ~StubRoutines::call_stub

---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
  0x00830060 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=4212]
  0x0082f430 JavaThread "CompilerThread0" daemon [_thread_blocked, id=4208]
  0x0082e280 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=4204]
  0x0082d9d0 JavaThread "Finalizer" daemon [_thread_blocked, id=4200]
  0x0082c700 JavaThread "Reference Handler" daemon [_thread_blocked, id=4196]
=>0x008239b0 JavaThread "main" [_thread_in_native, id=4172]

Other Threads:
  0x0082b840 VMThread [id=4192]
  0x00832e50 WatcherThread [id=4216]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
 def new generation   total 576K, used 386K [0x63a60000, 0x63b00000, 0x63f40000)
  eden space 512K,  75% used [0x63a60000, 0x63ac0b48, 0x63ae0000)
  from space 64K,   0% used [0x63ae0000, 0x63ae0000, 0x63af0000)
  to   space 64K,   0% used [0x63af0000, 0x63af0000, 0x63b00000)
 tenured generation   total 1408K, used 0K [0x63f40000, 0x640a0000, 0x67a60000)
   the space 1408K,   0% used [0x63f40000, 0x63f40000, 0x63f40200, 0x640a0000)
 compacting perm gen  total 8192K, used 303K [0x67a60000, 0x68260000, 0x6ba60000)
   the space 8192K,   3% used [0x67a60000, 0x67aabf30, 0x67aac000, 0x68260000)
    ro space 8192K,  63% used [0x6ba60000, 0x6bf6dd40, 0x6bf6de00, 0x6c260000)
    rw space 12288K,  46% used [0x6c260000, 0x6c7f86d0, 0x6c7f8800, 0x6ce60000)

Dynamic libraries:
0x00400000 - 0x0040b000  C:/Program Files/Java/j2re1.5.0/bin/javaw.exe
0x7c920000 - 0x7c9b4000  C:/WINDOWS/system32/ntdll.dll
0x7c800000 - 0x7c91c000  C:/WINDOWS/system32/kernel32.dll
0x77da0000 - 0x77e49000  C:/WINDOWS/system32/ADVAPI32.dll
0x77e50000 - 0x77ee1000  C:/WINDOWS/system32/RPCRT4.dll
0x77d10000 - 0x77d9f000  C:/WINDOWS/system32/USER32.dll
0x77ef0000 - 0x77f36000  C:/WINDOWS/system32/GDI32.dll
0x77be0000 - 0x77c38000  C:/WINDOWS/system32/MSVCRT.dll
0x76300000 - 0x7631d000  C:/WINDOWS/system32/IMM32.DLL
0x62c20000 - 0x62c29000  C:/WINDOWS/system32/LPK.DLL
0x73fa0000 - 0x7400b000  C:/WINDOWS/system32/USP10.dll
0x6d620000 - 0x6d7c7000  C:/Program Files/Java/j2re1.5.0/bin/client/jvm.dll
0x76b10000 - 0x76b3a000  C:/WINDOWS/system32/WINMM.dll
0x6d260000 - 0x6d267000  C:/Program Files/Java/j2re1.5.0/bin/hpi.dll
0x76bc0000 - 0x76bcb000  C:/WINDOWS/system32/PSAPI.DLL
0x6d5f0000 - 0x6d5fb000  C:/Program Files/Java/j2re1.5.0/bin/verify.dll
0x6d2d0000 - 0x6d2ec000  C:/Program Files/Java/j2re1.5.0/bin/java.dll
0x6d610000 - 0x6d61e000  C:/Program Files/Java/j2re1.5.0/bin/zip.dll
0x01260000 - 0x013bb000  C:/Program Files/Java/j2re1.5.0/bin/awt.dll
0x72f70000 - 0x72f96000  C:/WINDOWS/system32/WINSPOOL.DRV
0x76990000 - 0x76acd000  C:/WINDOWS/system32/ole32.dll
0x736d0000 - 0x73719000  C:/WINDOWS/system32/ddraw.dll
0x73b30000 - 0x73b36000  C:/WINDOWS/system32/DCIMAN32.dll
0x738b0000 - 0x73980000  C:/WINDOWS/system32/D3DIM700.DLL

VM Arguments:
jvm_args: -Djava.library.path=d:/workspace/org.eclipse.swt.win32.win32.x86
java_command: jiecheng

Environment Variables:


---------------  S Y S T E M  ---------------

OS: Windows XP Build 2600 Service Pack 2

CPU:total 1(active 1) family 15, cmov, cx8, fxsr, mmx, sse, sse2

Memory: 4k page, physical 523760k(87672k free), swap 1280080k(3944k free)

vm_info: Java HotSpot(TM) Client VM (1.5.0-beta-b32c) for windows-x86, built on Jan 23 2004 01:52:20 by "java_re" with MS VC++ 6.0

5. java. policy.applet文件

/* AUTOMATICALLY GENERATED ON Tue Apr 16 17:20:59 EDT 2002*/
/* DO NOT EDIT */

grant {
  permission java.security.AllPermission;
};

6. jiecheng1184464691062.html文件

<html>
<body>
<applet code=jiecheng.class width="200" height="200" >
</applet>
</body>
</html>

      除5、6之外的几个文件似乎是一个内容的不同版本罢了,可能是多次编译产生的,因为只有几个参数不同而已。

7. .project 文件

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
 <name>jiecheng</name>
 <comment></comment>
 <projects>
 </projects>
 <buildSpec>
  <buildCommand>
   <name>org.eclipse.jdt.core.javabuilder</name>
   <arguments>
   </arguments>
  </buildCommand>
 </buildSpec>
 <natures>
  <nature>org.eclipse.jdt.core.javanature</nature>
 </natures>
</projectDescription>

8. .classpath文件

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
 <classpathentry kind="src" path=""/>
 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
 <classpathentry kind="output" path=""/>
</classpath>

     

主要因为我在“构制函数“中初始化的变量多了点让系统内存分配产生“溢出”造成的。还有一点当时我还安装了一个@Home的一个客户端(为科研做点贡献罢了),所以绝大部分的内存都被占用了。所以才很"荣幸"的邂逅了JAVA虚拟机的漏洞 ! 

   

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐