<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.sarg.dev/index.php?action=history&amp;feed=atom&amp;title=Java_Virtual_Machine_Tools_Interface</id>
	<title>Java Virtual Machine Tools Interface - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.sarg.dev/index.php?action=history&amp;feed=atom&amp;title=Java_Virtual_Machine_Tools_Interface"/>
	<link rel="alternate" type="text/html" href="https://wiki.sarg.dev/index.php?title=Java_Virtual_Machine_Tools_Interface&amp;action=history"/>
	<updated>2026-04-09T18:03:27Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://wiki.sarg.dev/index.php?title=Java_Virtual_Machine_Tools_Interface&amp;diff=453965&amp;oldid=prev</id>
		<title>imported&gt;JnRouvignac at 15:03, 26 December 2023</title>
		<link rel="alternate" type="text/html" href="https://wiki.sarg.dev/index.php?title=Java_Virtual_Machine_Tools_Interface&amp;diff=453965&amp;oldid=prev"/>
		<updated>2023-12-26T15:03:14Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[File:JPDA architecture.png|thumb|JPDA architecture]]&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Java Virtual Machine Tool Interface&amp;#039;&amp;#039;&amp;#039; (JVMTI, or more properly, JVM TI) was introduced in [[Java Platform, Standard Edition|J2SE]] 5.0 (&amp;#039;&amp;#039;Tiger&amp;#039;&amp;#039;). This [[Interface (computer science)|interface]] allows a [[computer program|program]] to inspect the state and to control the execution of applications running in the [[Java virtual machine|Java Virtual Machine]] (JVM). JVMTI is designed to provide an [[Application Programming Interface]] (API) for the development of tools that need access to the state of the JVM. Examples for such tools are [[debugger]]s or [[profiler (computer science)|profiler]]s.&amp;lt;ref&amp;gt;{{Cite book |last1=Nartovich |first1=Aleksandr |url=https://books.google.com/books?id=K7i6AgAAQBAJ&amp;amp;dq=Java+Virtual+Machine+Tools+Interface&amp;amp;pg=PA142 |title=IBM Technology for Java Virtual Machine in IBM i5/OS |last2=Smye-Rumsby |first2=Adam |last3=Stimets |first3=Paul |last4=Weaver |first4=George |last5=Redbooks |first5=I. B. M. |date=2007-02-14 |publisher=IBM Redbooks |isbn=978-0-7384-8605-5 |language=en}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The JVMTI is a native interface of the JVM. A library, written in [[C (programming language)|C]] or [[C++]], is loaded during the initialization of the JVM.&amp;lt;ref&amp;gt;{{Cite book |last=Waller |first=Jan |url=https://books.google.com/books?id=6uLlBQAAQBAJ&amp;amp;dq=Java+Virtual+Machine+Tools+Interface&amp;amp;pg=PA54 |title=Performance Benchmarking of Application Monitoring Frameworks |date=2014-12-19 |publisher=BoD – Books on Demand |isbn=978-3-7357-7853-6 |language=en}}&amp;lt;/ref&amp;gt; The library has access to the JVM state by calling JVMTI and JNI ([[Java Native Interface]]) functions and can register to receive JVMTI events using event handler functions that are called by the JVM when such an event occurs.&lt;br /&gt;
&lt;br /&gt;
JVMTI was defined through the [[Java Community Process]] by JSR-163, the specification for the [[Java Platform Profiling Architecture]]. The JVMTI replaces the JVMPI (Java Virtual Machine Profiling Interface) and the JVMDI (Java Virtual Machine Debug Interface). The JVMPI and the JVMDI are declared as being deprecated in J2SE 5.0 and were removed in Java SE 6.&lt;br /&gt;
&lt;br /&gt;
JVMTI is the lowest-level of the [[Java Platform Debugger Architecture]].&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
*{{Javadoc:SE-guide|jvmti|JVM Tool Interface}}&lt;br /&gt;
*[http://www.oracle.com/technetwork/articles/javase/jvmti-136367.html Creating a Debugging and Profiling Agent with JVMTI]&lt;br /&gt;
*[http://www.oracle.com/technetwork/articles/javase/jvmpitransition-138768.html The JVMPI Transition to JVMTI]&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
{{Reflist}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Java development tools]]&lt;br /&gt;
[[Category:Java specification requests]]&lt;br /&gt;
[[Category:Java virtual machine]]&lt;/div&gt;</summary>
		<author><name>imported&gt;JnRouvignac</name></author>
	</entry>
</feed>