What is the difference between -client and -server systems?
These two systems are different binary files. They are essentially two different compilers (JITs) interacting with the same runtime system. the client system is optimal for applications that require quick start-up times or small prints, the server system is optimal for where overall performance is most important. The common client system is better suited for interactive applications such as graphical interfaces. Some of the other differences include compilation policies, default heap settings, and attachment policies.
Where can I get server and client systems?
Client and server systems boot from 32-bit Solaris and boot Linux. For 32-bit Windows, if you download the JRE, you only get the client, you need to download the SDK to get both systems.
For the 64-bit version, only the server system is enabled. On Solaris, a 64-bit JRE is an overlay on top of a 32-bit distribution. However, on Linux and Windows, this is a completely separate distribution.
I want java to be -server by default. I have many scripts that I cannot change (or do not want to change). Is there any way to do this?
Since Java SE 5.0, with the exception of 32-bit Windows, the server VM will be automatically selected on server-class machines. the server class machine definition may change from release to release, so please check the appropriate ergonomic document for the definition for your release. For 5.0, this is Ergonomics in the 5.0 Java Virtual Machine [tm].
Do I need to warm my loops first so that Hotspot compiles them?
It is not recommended to heat the hinges for HotSpot. HotSpot contains On Stack Replacement Technology, which compiles the working (interpreted) method and replacing it while it is still working in the loop. No need to waste time using applications, endless (or very long) loops to get better application performance.