﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-David.Turing's Security Blog-文章分类-Jvm_Linux</title><link>http://www.blogjava.net/security/category/10811.html</link><description>Java Security, CAPICOM, CryptoAPI/CSP, BouncyCastle, Openssl, JCE/JCA, SSO, CAS, Tivoli, CA, PKI
&lt;br&gt;
&lt;font color="#00f100"&gt;本站内容只兼容IE浏览器&lt;/font&gt;
&lt;br&gt;
&lt;font color="#00f100"&gt;重要的文章包均含本人的PGP签名，本人愿意对自己的言论负责&lt;/font&gt;
&lt;br&gt;</description><language>zh-cn</language><lastBuildDate>Mon, 23 Jul 2007 22:25:38 GMT</lastBuildDate><pubDate>Mon, 23 Jul 2007 22:25:38 GMT</pubDate><ttl>60</ttl><item><title>SUN JDK Options</title><link>http://www.blogjava.net/security/articles/jdk_options.html</link><dc:creator>david.turing</dc:creator><author>david.turing</author><pubDate>Mon, 23 Jul 2007 15:00:00 GMT</pubDate><guid>http://www.blogjava.net/security/articles/jdk_options.html</guid><wfw:comment>http://www.blogjava.net/security/comments/131949.html</wfw:comment><comments>http://www.blogjava.net/security/articles/jdk_options.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/security/comments/commentRss/131949.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/security/services/trackbacks/131949.html</trackback:ping><description><![CDATA[<h4>
				<a name="BehavioralOptions">
				</a>Behavioral Options</h4>
		<br />
		<table cellspacing="0" cellpadding="0" width="100%" border="0">
				<tbody>
						<tr>
								<th valign="top" align="left" width="45%">Option and Default Value<br /></th>
								<th valign="top" align="left" width="55%">Description</th>
						</tr>
						<tr valign="top">
								<td>-XX:-AllowUserSignalHandlers</td>
								<td>Do not complain if the application installs signal handlers. (Relevant to Solaris and Linux only.)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:AltStackSize=16384</td>
								<td>Alternate signal stack size (in Kbytes). (Relevant to Solaris only, removed from 5.0.)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:-DisableExplicitGC</td>
								<td>Disable calls to System.gc(), JVM still performs garbage collection when necessary.<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+FailOverToOldVerifier</td>
								<td>Fail over to old verifier when the new type checker fails. (Introduced in 6.)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+HandlePromotionFailure</td>
								<td>The youngest generation collection does not require a guarantee of full promotion of all live objects. (Introduced in 1.4.2 update 11) [5.0 and earlier: false.]<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+MaxFDLimit</td>
								<td>Bump the number of file descriptors to max. (Relevant  to Solaris only.)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:PreBlockSpin=10</td>
								<td>Spin count variable for use with -XX:+UseSpinning. Controls the maximum spin iterations allowed before entering operating system thread synchronization code. (Introduced in 1.4.2.)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:-RelaxAccessControlCheck</td>
								<td>Relax the access control checks in the verifier. (Introduced in 6.)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+ScavengeBeforeFullGC</td>
								<td>Do young generation GC prior to a full GC. (Introduced in 1.4.1.)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+UseAltSigs</td>
								<td>Use alternate signals instead of SIGUSR1 and SIGUSR2 for VM internal signals. (Introduced in 1.3.1 update 9, 1.4.1. Relevant to Solaris only.)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+UseBoundThreads</td>
								<td>Bind user level threads to kernel threads. (Relevant to Solaris only.)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:-UseConcMarkSweepGC</td>
								<td>Use concurrent mark-sweep collection for the old generation. (Introduced in 1.4.1)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+UseGCOverheadLimit</td>
								<td>Use a policy that limits the proportion of the VM's time that is spent in GC before an OutOfMemory error is thrown. (Introduced in 6.)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+UseLWPSynchronization</td>
								<td>Use LWP-based instead of thread based synchronization. (Introduced in 1.4.0. Relevant to Solaris only.)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:-UseParallelGC</td>
								<td>Use parallel garbage collection for scavenges. (Introduced in 1.4.1)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:-UseParallelOldGC</td>
								<td>Use parallel garbage collection for the full collections. Enabling this option automatically sets -XX:+UseParallelGC. (Introduced in 5.0 update 6.)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:-UseSerialGC</td>
								<td>Use serial garbage collection. (Introduced in 5.0.)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:-UseSpinning</td>
								<td>Enable naive spinning on Java monitor before entering operating system thread synchronizaton code. (Relevant to 1.4.2 and 5.0 only.) [1.4.2, multi-processor Windows platforms: true]<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+UseTLAB</td>
								<td>Use thread-local object allocation (Introduced in 1.4.0, known as UseTLE prior to that.) [1.4.2 and earlier, x86 or with -client: false]<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+UseSplitVerifier</td>
								<td>Use the new type checker with StackMapTable attributes. (Introduced in 5.0.)[5.0: false]<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+UseThreadPriorities</td>
								<td>Use native thread priorities.<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+UseVMInterruptibleIO</td>
								<td>Thread interrupt before or with EINTR for I/O operations results in OS_INTRPT. (Introduced in 6. Relevant to Solaris only.)<br /><br /></td>
						</tr>
				</tbody>
		</table>
		<br />
		<a href="http://java.sun.com/javase/technologies/hotspot/vmoptions.jsp#BehavioralOptions">
				<small>Back to Options</small>
		</a>
		<br />
		<span class="sp10"> </span>
		<br />
		<hr class="light" />
		<h4>
				<a name="PerformanceTuning">
				</a>Performance Options</h4>
		<br />
		<table cellspacing="0" cellpadding="0" width="100%" border="0">
				<tbody>
						<tr>
								<th valign="top" align="left" width="45%">Option and Default Value<br /></th>
								<th valign="top" align="left" width="55%">Description</th>
						</tr>
						<tr valign="top">
								<td>-XX:+AggressiveOpts</td>
								<td>Turn on point performance compiler optimizations that are expected to be default in upcoming releases. (Introduced in 5.0 update 6.)<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:CompileThreshold=10000</td>
								<td>Number of method invocations/branches before compiling [-client: 1,500]<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:LargePageSizeInBytes=4m</td>
								<td>Sets the large page size used for the Java heap. (Introduced in 1.4.0 update 1.) [amd64: 2m.]<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:MaxHeapFreeRatio=70</td>
								<td>Maximum percentage of heap free after GC to avoid shrinking.<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:MaxNewSize=size</td>
								<td>Maximum size of new generation (in bytes). Since 1.4, MaxNewSize is computed as a function of NewRatio. [1.3.1 Sparc: 32m; 1.3.1 x86: 2.5m.]<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:MaxPermSize=64m</td>
								<td>Size of the Permanent Generation.  [5.0 and newer: 64 bit VMs are scaled 30% larger; 1.4 amd64: 96m; 1.3.1 -client: 32m.]<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:MinHeapFreeRatio=40</td>
								<td>Minimum percentage of heap free after GC to avoid expansion.<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:NewRatio=2</td>
								<td>Ratio of new/old generation sizes. [Sparc -client: 8; x86 -server: 8; x86 -client: 12.]-client: 4 (1.3) 8 (1.3.1+), x86: 12]<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:NewSize=2.125m</td>
								<td>Default size of new generation (in bytes) [5.0 and newer: 64 bit VMs are scaled 30% larger; x86: 1m; x86, 5.0 and older: 640k]<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:ReservedCodeCacheSize=32m</td>
								<td>Reserved code cache size (in bytes) - maximum code cache size. [Solaris 64-bit, amd64, and -server x86: 48m; in 1.5.0_06 and earlier, Solaris 64-bit and and64: 1024m.]<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:SurvivorRatio=8</td>
								<td>Ratio of eden/survivor space size [Solaris amd64: 6; Sparc in 1.3.1: 25; other Solaris platforms in 5.0 and earlier: 32]<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:TargetSurvivorRatio=50</td>
								<td>Desired percentage of survivor space used after scavenge.<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:ThreadStackSize=512</td>
								<td>Thread Stack Size (in Kbytes). (0 means use default stack size) [Sparc: 512; Solaris x86: 320 (was 256 prior in 5.0 and earlier); Sparc 64 bit: 1024; Linux amd64: 1024 (was 0 in 5.0 and earlier); all others 0.]<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+UseBiasedLocking</td>
								<td>Enable biased locking. For more details, see this <a href="http://java.sun.com/performance/reference/whitepapers/tuning.html#section4.2.5">tuning example</a>. (Introduced in 5.0 update 6.) [5.0: false]<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+UseFastAccessorMethods</td>
								<td>Use optimized versions of Get&lt;Primitive&gt;Field.<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:-UseISM</td>
								<td>Use Intimate Shared Memory. [Not accepted for non-Solaris platforms.] For details, see <a href="http://java.sun.com/docs/hotspot/ism.html">Intimate Shared Memory</a>.<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+UseLargePages</td>
								<td>Use large page memory. (Introduced in 5.0 update 5.) For details, see <a href="http://java.sun.com/javase/technologies/hotspot/largememory.jsp">Java Support for Large Memory Pages</a>.<br /><br /></td>
						</tr>
						<tr valign="top">
								<td>-XX:+UseMPSS</td>
								<td>Use Multiple Page Size Support w/4mb pages for the heap. Do not use with ISM as this replaces the need for ISM. (Introduced in 1.4.0 update 1, Relevant to Solaris 9 and newer.) [1.4.1 and earlier: false]<br /><br /></td>
						</tr>
				</tbody>
		</table>
		<br />
		<small>
				<a href="http://java.sun.com/javase/technologies/hotspot/vmoptions.jsp#PerformanceTuning">
						<small>Back to Options</small>
				</a>
		</small>
		<br />
		<span class="sp10"> </span>
		<br />
		<hr class="light" />
		<h4>
				<a name="DebuggingOptions">Debugging Options</a>
		</h4>
		<br />
		<span class="sp10">
				<table cellspacing="0" cellpadding="0" width="100%" border="0">
						<tbody>
								<tr valign="top">
										<th valign="top" align="left" width="45%">Option and Default Value<br /></th>
										<th valign="top" align="left" width="55%">Description</th>
								</tr>
								<tr valign="top">
										<td>-XX:-CITime</td>
										<td>Prints time spent in JIT Compiler. (Introduced in 1.4.0.)<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:ErrorFile=./hs_err_pid&lt;pid&gt;.log</td>
										<td>If an error occurs, save the error data to this file. (Introduced in 6.)<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-ExtendedDTraceProbes</td>
										<td>Enable performance-impacting <a href="http://java.sun.com/javase/6/docs/technotes/guides/vm/dtrace.html">dtrace</a> probes. (Introduced in 6. Relevant to Solaris only.)<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:HeapDumpPath=./java_pid&lt;pid&gt;.hprof</td>
										<td>Path to directory or filename for heap dump. <i>Manageable</i>. (Introduced in 1.4.2 update 12, 5.0 update 7.)<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-HeapDumpOnOutOfMemoryError</td>
										<td>Dump heap to file when java.lang.OutOfMemoryError is thrown. <i>Manageable</i>. (Introduced in 1.4.2 update 12, 5.0 update 7.)<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:OnError="&lt;cmd args&gt;;&lt;cmd args&gt;"</td>
										<td>Run user-defined commands on fatal error. (Introduced in 1.4.2 update 9.)<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:OnOutOfMemoryError="&lt;cmd args&gt;;<br />&lt;cmd args&gt;"</td>
										<td>Run user-defined commands when an OutOfMemoryError is first thrown. (Introduced in 1.4.2 update 12, 6)<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-PrintClassHistogram</td>
										<td>Print a histogram of class instances on Ctrl-Break. <i>Manageable</i>. (Introduced in 1.4.2.) The <a href="http://java.sun.com/javase/6/docs/technotes/tools/share/jmap.html">jmap -histo</a> command provides equivalent functionality.<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-PrintConcurrentLocks</td>
										<td>Print java.util.concurrent locks in Ctrl-Break thread dump. <i>Manageable</i>. (Introduced in 6.) The <a href="http://java.sun.com/javase/6/docs/technotes/tools/share/jstack.html">jstack -l</a> command provides equivalent functionality.<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-PrintCommandLineFlags</td>
										<td>Print flags that appeared on the command line. (Introduced in 5.0.)<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-PrintCompilation</td>
										<td>Print message when a method is compiled.<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-PrintGC</td>
										<td>Print messages at garbage collection. <i>Manageable</i>. <br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-PrintGCDetails</td>
										<td>Print more details at garbage collection. <i>Manageable</i>. (Introduced in 1.4.0.)<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-PrintGCTimeStamps</td>
										<td>Print timestamps at garbage collection. <i>Manageable</i> (Introduced in 1.4.0.)<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-PrintTenuringDistribution</td>
										<td>Print tenuring age information.<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-TraceClassLoading</td>
										<td>Trace loading of classes.<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-TraceClassLoadingPreorder</td>
										<td>Trace all classes loaded in order referenced (not loaded). (Introduced in 1.4.2.)<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-TraceClassResolution</td>
										<td>Trace constant pool resolutions. (Introduced in 1.4.2.)<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-TraceClassUnloading</td>
										<td>Trace unloading of classes.<br /><br /></td>
								</tr>
								<tr valign="top">
										<td>-XX:-TraceLoaderConstraints</td>
										<td>Trace recording of loader constraints. (Introduced in 6.)<br /><br /></td>
								</tr>
						</tbody>
				</table>
		</span><img src ="http://www.blogjava.net/security/aggbug/131949.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/security/" target="_blank">david.turing</a> 2007-07-23 23:00 <a href="http://www.blogjava.net/security/articles/jdk_options.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Linux下的JVM配置</title><link>http://www.blogjava.net/security/articles/44685.html</link><dc:creator>david.turing</dc:creator><author>david.turing</author><pubDate>Fri, 05 May 2006 14:31:00 GMT</pubDate><guid>http://www.blogjava.net/security/articles/44685.html</guid><wfw:comment>http://www.blogjava.net/security/comments/44685.html</wfw:comment><comments>http://www.blogjava.net/security/articles/44685.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/security/comments/commentRss/44685.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/security/services/trackbacks/44685.html</trackback:ping><description><![CDATA[<p>为 Linux 手动下载和安装 <a title="Sun" href="www.sun.com" >Sun</a> Runtime Environment (JRE) 的说明 <a href="http://www.java.com/zh_CN/download/help/5000010500.xml#install"><br />http://www.java.com/zh_CN/download/help/5000010500.xml#install</a><br /><br />安装方法很简单,下载一个bin文件到user/java<br /># mkdir -p /usr/local/java<br /># cd /usr/local/java<br /># mv /path/to/jre-1_5_0_05-linux-amd64.bin .<br /># chmod u+x jre-1_5_0_05-linux-amd64.bin<br /># ./jre-1_5_0_05-linux-amd64.bin<br /><br /># cd jre1.5.0_05/bin<br /># ./java -version<br /><br />配置环境变量也很简单<br />编辑/etc/profile<br />加入：<em></em></p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #000000">PATH</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">$PATH:</span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #000000">usr</span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #0000ff">local</span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #000000"><a title="Sun" href="www.sun.com" >Sun</a></span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #000000">jre1.</span>
				<span style="COLOR: #000000">5</span>
				<span style="COLOR: #000000">.0_05</span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #000000">bin<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />JAVA_HOME</span>
				<span style="COLOR: #000000">=/</span>
				<span style="COLOR: #000000">usr</span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #0000ff">local</span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #000000"><a title="Sun" href="www.sun.com" >Sun</a></span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #000000">jre1.</span>
				<span style="COLOR: #000000">5</span>
				<span style="COLOR: #000000">.0_05<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />export $PATH $JAVA_HOME</span>
		</div><img src ="http://www.blogjava.net/security/aggbug/44685.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/security/" target="_blank">david.turing</a> 2006-05-05 22:31 <a href="http://www.blogjava.net/security/articles/44685.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>