Readyboost和JVM

时间:2011-09-01 12:07:59

标签: java memory

我正在使用具有Readyboost属性的记忆棒。

Java无法识别棒中的额外内存(如果我将Xmx设置为超出计算机RAM值以便使用棒状内存,我会收到错误:

Error occurred during initialization of VM
Error: Could not create the Java Virtual Machine.
Could not reserve enough space for object heap
Error: A fatal exception has occurred. Program will exit.)

你能帮我解决一下吗? 谢谢!

1 个答案:

答案 0 :(得分:2)

首先,Readyboost是磁盘缓存功能(用于持久存储等) - 它与物理上可寻址的RAM /虚拟地址空间无关。

其次,-Xmx Java设置仅设置max 。由于perm gen空间和VM库/开销,JVM总共需要使用超过此值的值。有关详细信息,请参见此处:

Java - Setting -Xmx etc

另外,根据您使用的操作系统(我假设Windows 32位?),您不能为单个进程分配超过指定数量的内存(通常为2 GiB)。大多数64位操作系统都没有受到此限制。