C'è un idioma in inglese: "Si è tirato su dai suoi stivali". Le cinghie di avvio sono le maniglie dei lati superiori degli stivali e, ovviamente, è impossibile.
http://en.wikipedia.org/wiki/Booting
L'articolo spiega il processo di avvio di un computer, che è l'abbreviazione di bootstrap.
Ciò che accade con ogni programma di ogni tipo è che un caricatore di qualche tipo copia alcuni byte in memoria da qualche parte e inizia l'esecuzione in un posto predefinito in quei byte.
Per Java, il caricatore della cinghia di avvio può essere o meno una classe Java. (Qualcuno probabilmente lo sa.) Ma è un programma di qualche tipo che carica le primissime classi in memoria e fa sì che la JVM inizi ad eseguire quei bit di codice Java caricato. Forse carica il codice JVM stesso. Forse si limita ad assicurarsi che un po 'di codice precedente abbia caricato la JVM. Forse, richiede addirittura che la JVM sia già stata caricata e in esecuzione.
È solo una parte del processo.
fonte
2013-08-13 16:25:21
Vedere due risposte dettagliate (in particolare da amicngh) http://stackoverflow.com/questions/11395074/who-load-the-java-system-classloader. Anche qui: http://www2.sys-con.com/itsg/virtualcd/java/archives/0808/chaudhri/index.html – mins
Vedi - http://www.javabench.in/2012/02/java-class -loading.html –
È vero che molte classi di rt, jar vengono caricate dal bootloader del programma di caricamento, ma non tutte. Per confermare basta eseguire un semplice programma con -verbose: argomento di classe come "java -verbose: class HelloWorld". Darà tutte le classi caricate dalla JVM. È possibile notare che ogni classe di rt.jar non viene caricata da JVM. – hsingh