作者: Wooce Yang (Yang Hongfen)
发现虚拟机状态模块 无法获取Windows虚拟机当前使用内存的比较准确的数值
查看内存信息的输出参看:https://www.wikieduonline.com/wiki/Virsh_dommemstat 通常应有如下项目:
# virsh dommemstat YOUR_VM_NAME
actual 1048576
swap_in 0
swap_out 0
major_fault 913
minor_fault 247449
unused 694704
available 1014852
usable 732936
last_update 1514452854
rss 537524
然而在开发机上运行只输出以下两项:
# virsh dommemstat win7_64
actual 4194304
rss 4150260
所以在java程序里用:
MemoryStatistic[] memoryStatistics = domain.memoryStats(10);
for(MemoryStatistic mem:memoryStatistics){
System.out.println(mem.getTag()+":"+mem.getValue());
}
也同样只能输出两项actual和rss,不能获得 unused即未使用内存大小的数据。
经研究, 在https://bbs.archlinux.org/viewtopic.php?id=228347 "[libvirt] cannot get all memory stats for domain" 查到别人提出一样的问题, 答案是因为Windows虚拟机内未安装 virtio-balloon驱动,
virtio-balloon驱动的安装可参考这篇文章:http://blog.chinaunix.net/uid-29718549-id-4690117.html
相关推荐
Java虚拟机(JVM)是Java程序运行的基础,它负责执行字节码并管理应用程序的内存、线程、类加载等。为了优化和调试Java应用,监控JVM的状态至关重要。"java虚拟机监控"就是这样一个过程,通过收集和分析JVM的各项...
Java虚拟机(JVM,Java Virtual Machine)是Java平台的核心组成部分,它负责执行Java程序,为Java代码提供了跨平台的运行环境。Java虚拟机的概念始于Sun Microsystems,现在由Oracle公司继续发展和维护。JVM的设计...
Java虚拟机(JVM)中的内存管理是指Java语言中对象的分配和释放问题。Java中的内存管理可以分为两部分:对象的分配和释放。 对象的分配是由程序完成的,程序员需要通过关键字new为每个对象申请内存空间(基本类型...
### Java虚拟机性能监控 #### 一、引言 在当今快速发展的信息技术领域,Java作为最流行的编程语言之一,其虚拟机(Java Virtual Machine, JVM)的性能优化和监控成为了确保应用程序高效稳定运行的关键因素。Java...
支持Java虚拟机监控:GC信息、内存使用情况、内存池信息、类加载器、线程堆栈 支持生成火焰图(采样事件包括CPU、内存分配、线程栈、Java方法调用栈等) 支持Java代码反编译生成 支持Java代码热更新(可指定...
本项目主要关注如何使用Sigar库在Java环境下获取系统信息,特别是内存、磁盘和JVM虚拟机的相关数据。 一、获取系统内存信息 在Java中使用Sigar库获取系统内存信息,主要涉及以下几个方面: 1. **总内存**:通过`...
在Java虚拟机运行过程中,我们可能需要使用各种命令工具来监控和诊断可能出现的问题。以下是一些常用的JVM命令工具及其知识点。 1. jps命令 jps(JVM Process Status Tool)命令用于列出正在运行的Java虚拟机进程...
《深入理解Java虚拟机》是一本深度探讨Java虚拟机(JVM)的著作,涵盖了JVM性能调优、内存模型以及虚拟机原理等多个关键领域。本文将基于这些主题,详细阐述其中的重要知识点。 首先,我们要了解Java虚拟机(JVM)...
本文将深入探讨Java虚拟机的参数配置,特别是针对MyEclipse开发环境中遇到的内存不足问题。 首先,Java虚拟机参数配置是优化JVM性能的关键步骤。Java程序在启动时可以设置一系列参数,这些参数分为两种类型:标准...
Java虚拟机监控是一种重要的系统管理和优化工具,尤其对于运行关键业务应用的服务器而言。本方案主要探讨了如何通过Java管理扩展(JMX)代理、内置命令如`jstat`和`jstack`,以及利用观察者模式来实现对Java虚拟机...
### JAVA虚拟机的内存管理详解 #### 一、引言 在Java 2平台的强大支持下,J2SE能够自动管理内存,这大大减轻了开发者的负担,让他们不必再进行复杂的显式内存管理工作。本文档旨在对Sun J2SE 5.0版本中的Java ...
除了以上基本的CPU和内存信息,还可以通过`ThreadMXBean`获取线程信息,通过`GarbageCollectorMXBean`监控垃圾回收器的状态,甚至可以通过JMX连接到远程JVM获取其运行信息。Java提供的这些工具使得开发者能够对应用...
随着越来越多的第三方语言(Groovy、Scala、JRuby等)在Java虚拟机上运行,Java...《实战Java虚拟机——JVM故障诊断与性能优化》将通过200余示例详细介绍Java虚拟机中的各种参数配置、故障排查、性能监控以及性能优化。
由于无法查看实际的图片和OCR扫描文字内容,我将基于标题和描述提供关于Java虚拟机(JVM)规范的详细知识点。 ### Java虚拟机规范知识点 #### 1. JVM概述 Java虚拟机是运行所有Java程序的抽象计算机,它遵循一定的...
它详细阐述了Java虚拟机(JVM)的工作原理,包括内存管理、类加载机制、字节码执行以及垃圾回收等核心概念。深入理解这些知识点对于提升程序性能、解决运行时问题以及设计高效的应用程序至关重要。 1. **JVM架构** ...
它详尽地探讨了Java虚拟机的工作原理、内存管理、类加载机制、字节码执行以及性能优化等多个核心主题,旨在帮助开发者提升程序的运行效率和稳定性。 1. **Java虚拟机概述**:Java虚拟机是Java平台的核心组件,它...
《实战Java虚拟机》这本书是Java开发者深入理解JVM(Java Virtual Machine)的重要参考资料。Java虚拟机是Java语言的核心组成部分,它负责解析和执行Java代码,实现跨平台的“一次编写,到处运行”。通过深入学习JVM...
KVM是Linux内核中的一个模块,它允许Linux操作系统作为虚拟机监控程序来运行多个操作系统实例,包括Java虚拟机(JVM)。以下将详细探讨该书可能涵盖的一些关键知识点: 1. **Java虚拟机基础**:首先,书本会介绍...
《实战Java虚拟机——JVM故障诊断与性能优化》将通过200余示例详细介绍Java虚拟机中的各种参数配置、故障排查、性能监控以及性能优化。, 《实战Java虚拟机——JVM故障诊断与性能优化》共11章。第1~3章介绍了Java...
由于智能卡资源有限,这些安全点的实现比标准的Java虚拟机更为复杂,且更容易受到安全威胁的影响。 研究者对Java卡虚拟机运行过程中的脆弱性进行了研究,识别了其潜在的安全缺陷。这些脆弱性可能由设计不当、实现...