Jikes RVM

Jikes RVM
Utvecklare Jikes RVM Team, bidragsgivare
Initial release 1999 ; 24 år sedan ( 1999 )
Stabil frisättning
3.1.4 / 18 februari 2016 ; för 7 år sedan ( 2016-02-18 )
Förvar
Skrivet i Java
Operativ system Unix-liknande
Typ Java virtuell maskin , bibliotek
Licens Eclipse Public License
Hemsida jikesrvm.org

Jikes Research Virtual Machine ( Jikes RVM ) är en mogen virtuell maskin som kör program skrivna för Java-plattformen . Till skillnad från de flesta andra virtuella Java-maskiner (JVM) är den skriven på programmeringsspråket Java , i en implementeringsstil som kallas meta-cirkulär . Det är gratis och öppen källkod som släpps under en Eclipse Public License .

Historia

Bootstrap

Eftersom den är metacirkulär kräver Jikes RVM en bootstrapping JVM att köra på för att skapa en startbild. Startbilden är en vy av objekten som Jikes RVM kräver för att starta upp skapade med hjälp av reflektion i bootstrap JVM. En liten C- laddare är ansvarig för att ladda upp startbilden vid körning.

VM Magic

VM Magic är där kompilatorn genererar annan kod för en klass än vad bytekoderna inom den klassen ska utföra. VM Magic-klasser ger direkt åtkomst till minne och är nyckeln till Memory Management Toolkits prestanda. VM Magic-klasserna finns i org.vmmagic- paketet och har återanvänts i andra Java-projekt.

Memory Management Toolkit

Memory Management Toolkit (MMTk) är en uppsättning exakta sopsamlare som har använts inom Jikes RVM och andra projekt som operativsystemet Singularity och Shared Source Common Language Infrastructure (SSCLI, tidigare kallad Rotor). Som med resten av Jikes RVM är implementeringen i Java , men det huvudsakliga beroendet är på VM Magic.

Klassbibliotek

Antingen Apache Harmony eller GNU Classpath klassbibliotek kan användas med Jikes RVM, med experimentellt stöd för OpenJDK :s klassbibliotek .

Kompilatorer

Jikes RVM använder en snabb baslinjekompilator för att snabbt generera kod för en given arkitektur. Adaptiv kompilering kompilerar sedan om kod med en optimerande kompilator med funktioner som on-stack-ersättning (OSR). Det adaptiva kompileringssystemet använder en kostnads-nyttoanalysmodell.

Körning

Jikes RVM:s körtid har många innovativa funktioner inklusive mekanismer för snabb låsning, samarbetsschema och stöd för snabb insamling och avsändning av undantag.

Processorer

Jikes RVM stöder PowerPC (eller ppc) och IA-32 (eller Intel x86, 32-bitars) instruktionsuppsättningsprocessorarkitekturer .

Forskning

Eftersom det är ett forskningsprojekt, ligger tyngdpunkten i Jikes RVM på forskning om ny teknik, vilket framgår av de vetenskapliga publikationer som det har skapat – över 220 artiklar från och med 2015.

Jikes RVM har också deltagit i Google Summer of Code 2007, 2008, 2010, 2011 och 2012.

Se även

externa länkar