1. A method for automatically generating native images for a virtual machine comprising the steps of: providing a virtual machine environment where a plurality of application libraries are distributed in an intermediate language format and then compiled at a later point in time; and providing an automatic native generation service, the service being operable to monitor the plurality of application libraries, and to generate a native image for a particular one or more of the application libraries when the service determines that native generation is appropriate, wherein the automatic native generation service monitors the plurality of application libraries by incrementing a respective counter each time a respective one of the application libraries is loaded, and wherein the automatic native generation service uses the respective counter for each of the respective application libraries to determine an order in which to generate a respective native image by sorting the respective counter for each of the application libraries in descending numerical order so that the application library that has been loaded the most appears first in a list of sorted counters, wherein the service determines that native generation is appropriate by using heuristics, wherein the heuristics used to determine that native generation is appropriate includes monitoring which of the plurality of application libraries are used simultaneously by multiple processes.