JIT - Dipartimento di Sistemi e Informatica
JIT - Dipartimento di Sistemi e Informatica JIT - Dipartimento di Sistemi e Informatica
Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi Just In Time Compiler Compilatore al volo basato sul concetto JIT: ♣ Non tutto l’IL l IL di un PE viene eseguito durante un programma, solo la parte necessaria viene compilata un istante prima della sua esecuzione. ♣ Il codice compilato viene memorizzato per successive esecuzioni ♣ Tutto il codice .NET è compilato JIT, anche linguaggi di scripting come VB Script, J Script, JavaScript ecc. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2005-2006 23 Just In Time Compiler Solo il codice usato verrà verr compilato Minore occupazione di memoria Facile rimozione del codice inutilizzato da tempo Controlli sull’IL sull IL in fase di compilazione Dati per la compilazione contenuti nello stesso file del codice (metadati) Compilazione ottimizzante perché perch conosce lo stato preciso dell’ambiente dell ambiente di esecuzione Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2005-2006 24 12
Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi JIT Entry Point / Classe IL Metodo 1 IL Metodo 2 IL PORTABLE EXECUTABLE JIT Entry Point / Classe IL LOADER Metodo 1 IL Stub Metodo 3 IL Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2005-2006 25 Metodo 2 IL PORTABLE EXECUTABLE Metodo 3 IL Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2005-2006 26 13
- Page 1 and 2: Dipartimento di Sistemi e Informati
- Page 3 and 4: Dipartimento di Sistemi e Informati
- Page 5 and 6: Dipartimento di Sistemi e Informati
- Page 7 and 8: Dipartimento di Sistemi e Informati
- Page 9 and 10: Dipartimento di Sistemi e Informati
- Page 11: Dipartimento di Sistemi e Informati
- Page 15 and 16: Dipartimento di Sistemi e Informati
- Page 17 and 18: Dipartimento di Sistemi e Informati
- Page 19 and 20: Dipartimento di Sistemi e Informati
- Page 21 and 22: Dipartimento di Sistemi e Informati
- Page 23 and 24: Dipartimento di Sistemi e Informati
- Page 25 and 26: Dipartimento di Sistemi e Informati
- Page 27 and 28: Dipartimento di Sistemi e Informati
- Page 29 and 30: Dipartimento di Sistemi e Informati
- Page 31 and 32: Dipartimento di Sistemi e Informati
- Page 33 and 34: Dipartimento di Sistemi e Informati
- Page 35 and 36: Dipartimento di Sistemi e Informati
- Page 37: Dipartimento di Sistemi e Informati
<strong>Dipartimento</strong> <strong>di</strong> <strong>Sistemi</strong> e <strong>Informatica</strong>, University of Florence<br />
<strong>Sistemi</strong> Distribuiti, Prof. Paolo Nesi<br />
<strong>JIT</strong> Entry Point / Classe<br />
IL<br />
Metodo 1<br />
IL<br />
Metodo 2<br />
IL<br />
PORTABLE EXECUTABLE<br />
<strong>JIT</strong> Entry Point / Classe<br />
IL<br />
LOADER<br />
Metodo 1<br />
IL<br />
Stub<br />
Metodo 3<br />
IL<br />
<strong>Sistemi</strong> Distribuiti, Univ. Firenze, Paolo Nesi 2005-2006 25<br />
Metodo 2<br />
IL<br />
PORTABLE EXECUTABLE<br />
Metodo 3<br />
IL<br />
<strong>Sistemi</strong> Distribuiti, Univ. Firenze, Paolo Nesi 2005-2006 26<br />
13