Mono (utvecklingsplattform)

Mono
UtvecklareNovell
Senaste utgåva2.6
(15 december 2009)
OperativsystemMultiplattform
TypPlattform
LicensGPLv2, LGPLv2 och MIT, eller dual license
Webbplatshttp://www.mono-project.com

Mono är ett projekt som leds av Novell (tidigare Ximian) för att skapa ett system av verktyg, bland andra en C#-kompilator och en exekveringsmotor, som liksom Common Language Runtime är kompatibelt med ECMA-standardiserade Common Language Infrastructure. Mono kan användas på operativsystemen GNU/Linux, FreeBSD, UNIX, Mac OS, Solaris och Microsoft Windows.

Microsoft har en version av .NET för FreeBSD, Windows och Mac OS X som kallas Shared Source CLI (Rotor). Microsofts shared source licens förbjuder kommersiellt bruk. Monoprojektet delar många målsättningar med Portable.NET-projektet.

Monosystemet har en JIT-kompilator för ett flertal processorer: x86, SPARC, PowerPC, ARM, S390 (i 32-bitars och 64-bitarsläge), samt x86-64, IA64 och SPARC i 64-bitarsläge. Monosystemet utför en JIT-kompilering av ett CLR-program till datorns maskinkod, som senare sparas medan programmet körs. Det är också möjligt att förkompilera en maskinspecifik exekverbar fil före själva exekveringen. För övriga system används istället en interpretator som översätter bytekoden utan att kompilera till maskinkod. Under nästan alla omständigheter är JIT-metoden snabbare än den interpreterande metoden.