rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 1 | '\" t |
| 2 | .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved. |
| 3 | .\"
|
| 4 | .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
| 5 | .\"
|
| 6 | .\" This code is free software; you can redistribute it and/or modify it
|
| 7 | .\" under the terms of the GNU General Public License version 2 only, as
|
| 8 | .\" published by the Free Software Foundation.
|
| 9 | .\"
|
| 10 | .\" This code is distributed in the hope that it will be useful, but WITHOUT
|
| 11 | .\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
| 12 | .\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
| 13 | .\" version 2 for more details (a copy is included in the LICENSE file that
|
| 14 | .\" accompanied this code).
|
| 15 | .\"
|
| 16 | .\" You should have received a copy of the GNU General Public License version
|
| 17 | .\" 2 along with this work; if not, write to the Free Software Foundation,
|
| 18 | .\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
| 19 | .\"
|
| 20 | .\" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
| 21 | .\" or visit www.oracle.com if you need additional information or have any
|
| 22 | .\" questions.
|
| 23 | .\"
|
| 24 | .\" Arch: generic |
| 25 | .\" Software: JDK 8 |
| 26 | .\" Date: 21 November 2013 |
| 27 | .\" SectDesc: Troubleshooting Tools |
| 28 | .\" Title: jmap.1 |
| 29 | .\" |
| 30 | .if n .pl 99999 |
| 31 | .TH jmap 1 "21 November 2013" "JDK 8" "Troubleshooting Tools" |
| 32 | .\" -----------------------------------------------------------------
|
| 33 | .\" * Define some portability stuff
|
| 34 | .\" -----------------------------------------------------------------
|
| 35 | .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
| 36 | .\" http://bugs.debian.org/507673
|
| 37 | .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
|
| 38 | .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
| 39 | .ie \n(.g .ds Aq \(aq
|
| 40 | .el .ds Aq '
|
| 41 | .\" -----------------------------------------------------------------
|
| 42 | .\" * set default formatting
|
| 43 | .\" -----------------------------------------------------------------
|
| 44 | .\" disable hyphenation
|
| 45 | .nh
|
| 46 | .\" disable justification (adjust text to left margin only)
|
| 47 | .ad l
|
| 48 | .\" -----------------------------------------------------------------
|
| 49 | .\" * MAIN CONTENT STARTS HERE *
|
| 50 | .\" -----------------------------------------------------------------
|
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 51 | |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 52 | .SH NAME |
| 53 | jmap \- Prints shared object memory maps or heap memory details for a process, core file, or remote debug server\&. This command is experimental and unsupported\&. |
| 54 | .SH SYNOPSIS |
| 55 | .sp |
| 56 | .nf |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 57 | |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 58 | \fBjmap\fR [ \fIoptions\fR ] \fIpid\fR |
| 59 | .fi |
| 60 | .nf |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 61 | |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 62 | \fBjmap\fR [ \fIoptions\fR ] \fIexecutable\fR \fIcore\fR |
| 63 | .fi |
| 64 | .nf |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 65 | |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 66 | \fBjmap\fR [ \fIoptions\fR ] [ \fIpid\fR ] \fIserver\-id\fR@ ] \fIremote\-hostname\-or\-IP\fR |
| 67 | .fi |
| 68 | .sp |
| 69 | .TP |
| 70 | \fIoptions\fR |
| 71 | The command-line options\&. See Options\&. |
| 72 | .TP |
| 73 | \fIpid\fR |
| 74 | The process ID for which the memory map is to be printed\&. The process must be a Java process\&. To get a list of Java processes running on a machine, use the jps(1) command\&. |
| 75 | .TP |
| 76 | \fIexecutable\fR |
| 77 | The Java executable from which the core dump was produced\&. |
| 78 | .TP |
| 79 | \fIcore\fR |
| 80 | The core file for which the memory map is to be printed\&. |
| 81 | .TP |
| 82 | \fIremote-hostname-or-IP\fR |
| 83 | The remote debug server \f3hostname\fR or \f3IP\fR address\&. See jsadebugd(1)\&. |
| 84 | .TP |
| 85 | \fIserver-id\fR |
| 86 | An optional unique ID to use when multiple debug servers are running on the same remote host\&. |
| 87 | .SH DESCRIPTION |
| 88 | The \f3jmap\fR command prints shared object memory maps or heap memory details of a specified process, core file, or remote debug server\&. If the specified process is running on a 64-bit Java Virtual Machine (JVM), then you might need to specify the \f3-J-d64\fR option, for example: \f3jmap\fR\f3-J-d64 -heap pid\fR\&. |
| 89 | .PP |
| 90 | \fINote:\fR This utility is unsupported and might not be available in future releases of the JDK\&. On Windows Systems where the \f3dbgeng\&.dll\fR file is not present, Debugging Tools For Windows must be installed to make these tools work\&. The \f3PATH\fR environment variable should contain the location of the \f3jvm\&.dll\fR file that is used by the target process or the location from which the crash dump file was produced, for example: \f3set PATH=%JDK_HOME%\ejre\ebin\eclient;%PATH%\fR\&. |
| 91 | .SH OPTIONS |
| 92 | .TP |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 93 | <no option> |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 94 | When no option is used, the \f3jmap\fR command prints shared object mappings\&. For each shared object loaded in the target JVM, the start address, size of the mapping, and the full path of the shared object file are printed\&. This behavior is similar to the Oracle Solaris \f3pmap\fR utility\&. |
| 95 | .TP |
| 96 | -dump:[live,] format=b, file=\fIfilename\fR |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 97 | .br |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 98 | Dumps the Java heap in \f3hprof\fR binary format to \f3filename\fR\&. The \f3live\fR suboption is optional, but when specified, only the active objects in the heap are dumped\&. To browse the heap dump, you can use the jhat(1) command to read the generated file\&. |
| 99 | .TP |
| 100 | -finalizerinfo |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 101 | .br |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 102 | Prints information about objects that are awaiting finalization\&. |
| 103 | .TP |
| 104 | -heap |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 105 | .br |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 106 | Prints a heap summary of the garbage collection used, the head configuration, and generation-wise heap usage\&. In addition, the number and size of interned Strings are printed\&. |
| 107 | .TP |
| 108 | -histo[:live] |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 109 | .br |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 110 | Prints a histogram of the heap\&. For each Java class, the number of objects, memory size in bytes, and the fully qualified class names are printed\&. The JVM internal class names are printed with an asterisk (*) prefix\&. If the \f3live\fR suboption is specified, then only active objects are counted\&. |
| 111 | .TP |
| 112 | -clstats |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 113 | .br |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 114 | Prints class loader wise statistics of Java heap\&. For each class loader, its name, how active it is, address, parent class loader, and the number and size of classes it has loaded are printed\&. |
| 115 | .TP |
| 116 | -F |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 117 | .br |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 118 | Force\&. Use this option with the \f3jmap -dump\fR or \f3jmap -histo\fR option when the pid does not respond\&. The \f3live\fR suboption is not supported in this mode\&. |
| 119 | .TP |
| 120 | -h |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 121 | .br |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 122 | Prints a help message\&. |
| 123 | .TP |
| 124 | -help |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 125 | .br |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 126 | Prints a help message\&. |
| 127 | .TP |
| 128 | -J\fIflag\fR |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 129 | .br |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 130 | Passes \f3flag\fR to the Java Virtual Machine where the \f3jmap\fR command is running\&. |
| 131 | .SH SEE\ ALSO |
| 132 | .TP 0.2i |
| 133 | \(bu |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 134 | jhat(1) |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 135 | .TP 0.2i |
| 136 | \(bu |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 137 | jps(1) |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 138 | .TP 0.2i |
| 139 | \(bu |
michaelm | 5ac8c15 | 2012-03-06 20:34:38 +0000 | [diff] [blame] | 140 | jsadebugd(1) |
rgallard | b643545 | 2013-11-25 20:19:02 -0800 | [diff] [blame] | 141 | .RE
|
| 142 | .br
|
| 143 | 'pl 8.5i
|
| 144 | 'bp
|