LLVM: la vera punta di diamante di Snow Leopard


Più volte abbiamo avuto modo di ribadire che le vere novità di Snow Leopard non sono estetiche bensì nascoste sotto il cofano del nuovo sistema operativo. Una tecnologia della quale non si è parlato abbastanza è LLVM (Low Level Virtual Machine).

Ogni software scritto con un particolare linguaggio di programmazione, per essere eseguito su una specifica architettura hardware, viene dato in pasto ad un compilatore che dopo averlo elaborato crea codice eseguibile ottimizzato. In Mac OS X, i linguaggi di programmazione di riferimento sono C, C++, Objective-C ed il compilatore di sistema è GCC.

LLVM è una completa infrastruttura di compilazione open source nata diversi anni fa nell’Università dell’Illinois. Si tratta di una macchina virtuale di basso livello che si interpone, da una parte con il codice scritto in un linguaggio di programmazione e dall’altra con il generatore di codice specifico per l’architettura di sistema. Il pregio di questa tecnologia è che produce codice eseguibile drasticamente più efficiente rispetto al classico GCC.

Finora LLVM, in Mac OS X 10.5, era stata utilizzata all’interno di OpenGL per implementare alcune funzionalità non presenti direttamente a livello hardware. Nel nuovo sistema operativo, Apple ha sdoganato definitivamente tale tecnologia integrandola all’interno di GCC e dando vita ad un nuovo compilatore: LLVM-GCC 4.2.

Il futuro è già scritto: GCC lascerà definitivamente il posto a Clang, un’architettura totalmente realizzata mediante tecnologia LLVM e dotata di una nuova interfaccia per i diversi linguaggi di programmazione. Ora è più facile comprendere la totale riscrittura di molte componenti del nuovo sistema operativo e le relative performance registrate. Tutto merito di LLVM oltre che di una profonda rivisitazione del codice sorgente.

[Via Ars Technica]

Ti consigliamo anche

Link copiato negli appunti