Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
JDK 11 jdk.hotspot.agent.jmod - Hotspot Agent Module
JDK 11 jdk.hotspot.agent.jmod is the JMOD file for JDK 11 Hotspot Agent module.
JDK 11 Hotspot Agent module compiled class files are stored in \fyicenter\jdk-11.0.1\jmods\jdk.hotspot.agent.jmod.
JDK 11 Hotspot Agent module compiled class files are also linked and stored in the \fyicenter\jdk-11.0.1\lib\modules JImage file.
JDK 11 Hotspot Agent module source code files are stored in \fyicenter\jdk-11.0.1\lib\src.zip\jdk.hotspot.agent.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ sun/jvm/hotspot/oops/Oop.java
/* * Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * */ package sun.jvm.hotspot.oops; import java.io.*; import java.util.*; import sun.jvm.hotspot.utilities.*; import sun.jvm.hotspot.debugger.*; import sun.jvm.hotspot.runtime.*; import sun.jvm.hotspot.types.*; // Oop represents the superclass for all types of // objects in the HotSpot object heap. public class Oop { static { VM.registerVMInitializedObserver(new Observer() { public void update(Observable o, Object data) { initialize(VM.getVM().getTypeDataBase()); } }); } private static synchronized void initialize(TypeDataBase db) throws WrongTypeException { Type type = db.lookupType("oopDesc"); mark = new CIntField(type.getCIntegerField("_mark"), 0); klass = new MetadataField(type.getAddressField("_metadata._klass"), 0); compressedKlass = new NarrowKlassField(type.getAddressField("_metadata._compressed_klass"), 0); headerSize = type.getSize(); } private OopHandle handle; private ObjectHeap heap; Oop(OopHandle handle, ObjectHeap heap) { this.handle = handle; this.heap = heap; } ObjectHeap getHeap() { return heap; } /** Should not be used or needed by most clients outside this package; is needed, however, by {@link sun.jvm.hotspot.utilities.MarkBits}. */ public OopHandle getHandle() { return handle; } private static long headerSize; public static long getHeaderSize() { return headerSize; } // Header size in bytes. private static CIntField mark; private static MetadataField klass; private static NarrowKlassField compressedKlass; // Accessors for declared fields public Mark getMark() { return new Mark(getHandle()); } public Klass getKlass() { if (VM.getVM().isCompressedKlassPointersEnabled()) { return (Klass)compressedKlass.getValue(getHandle()); } else { return (Klass)klass.getValue(getHandle()); } } public boolean isA(Klass k) { return getKlass().isSubtypeOf(k); } // Returns the byte size of this object public long getObjectSize() { Klass k = getKlass(); // All other types should be overriding getObjectSize directly return ((InstanceKlass)k).getObjectSize(this); } // Type test operations public boolean isInstance() { return false; } public boolean isInstanceRef() { return false; } public boolean isArray() { return false; } public boolean isObjArray() { return false; } public boolean isTypeArray() { return false; } public boolean isThread() { return false; } // Align the object size. public static long alignObjectSize(long size) { return VM.getVM().alignUp(size, VM.getVM().getMinObjAlignmentInBytes()); } // All vm's align longs, so pad out certain offsets. public static long alignObjectOffset(long offset) { return VM.getVM().alignUp(offset, VM.getVM().getBytesPerLong()); } public boolean equals(Object obj) { if (obj != null && (obj instanceof Oop)) { return getHandle().equals(((Oop) obj).getHandle()); } return false; } public int hashCode() { return getHandle().hashCode(); } /** Identity hash in the target VM */ public long identityHash() { Mark mark = getMark(); if (mark.isUnlocked() && (!mark.hasNoHash())) { return (int) mark.hash(); } else if (mark.isMarked()) { return (int) mark.hash(); } else { return slowIdentityHash(); } } public long slowIdentityHash() { return VM.getVM().getObjectSynchronizer().identityHashValueFor(this); } public void iterate(OopVisitor visitor, boolean doVMFields) { visitor.setObj(this); visitor.prologue(); iterateFields(visitor, doVMFields); visitor.epilogue(); } void iterateFields(OopVisitor visitor, boolean doVMFields) { if (doVMFields) { visitor.doCInt(mark, true); if (VM.getVM().isCompressedKlassPointersEnabled()) { visitor.doMetadata(compressedKlass, true); } else { visitor.doMetadata(klass, true); } } } public void print() { printOn(System.out); } public void printValue() { printValueOn(System.out); } public void printRaw() { printRawOn(System.out); } public static void printOopValueOn(Oop obj, PrintStream tty) { if (obj == null) { tty.print("null"); } else { obj.printValueOn(tty); tty.print(" @ " + VM.getVM().getUniverse().heap().oopAddressDescription(obj.getHandle())); } } public static void printOopAddressOn(Oop obj, PrintStream tty) { if (obj == null) { tty.print("null"); } else { tty.print(obj.getHandle().toString()); } } public void printOn(PrintStream tty) { OopPrinter printer = new OopPrinter(tty); iterate(printer, true); } public void printValueOn(PrintStream tty) { try { tty.print("Oop for " + getKlass().getName().asString()); } catch (java.lang.NullPointerException e) { tty.print("Oop"); } } public void printRawOn(PrintStream tty) { tty.print("Dumping raw memory for "); printValueOn(tty); tty.println(); long size = getObjectSize() * 4; for (long i = 0; i < size; i += 4) { long memVal = getHandle().getCIntegerAt(i, 4, true); tty.println(Long.toHexString(memVal)); } } public boolean verify() { return true;} public static Klass getKlassForOopHandle(OopHandle handle) { if (handle == null) { return null; } if (VM.getVM().isCompressedKlassPointersEnabled()) { return (Klass)Metadata.instantiateWrapperFor(handle.getCompKlassAddressAt(compressedKlass.getOffset())); } else { return (Klass)Metadata.instantiateWrapperFor(handle.getAddressAt(klass.getOffset())); } } };
⏎ sun/jvm/hotspot/oops/Oop.java
Or download all of them as a single archive file:
File name: jdk.hotspot.agent-11.0.1-src.zip File size: 1243786 bytes Release date: 2018-11-04 Download
⇒ JDK 11 jdk.httpserver.jmod - HTTP Server Module
2020-02-29, 131906👍, 0💬
Popular Posts:
ZooKeeper is a centralized service for maintaining configuration information, naming, providing dist...
JDK 11 jdk.javadoc.jmod is the JMOD file for JDK 11 Java Document tool, which can be invoked by the ...
JDK 11 jdk.rmic.jmod is the JMOD file for JDK 11 RMI (Remote Method Invocation) Compiler Tool tool, ...
Jackson is "the Java JSON library" or "the best JSON parser for Java". Or simply as "JSON for Java"....
If you are a Java developer, it is very often that you need to use some 3rd party libraries to perfo...