Inbäddade plattformar är resursanpassade system där prestanda- och minneskrav för exekverad kod är av avgörande betydelse. Standardtekniker som heljust-in-time (JIT) sammanställning och/eller adaptiv optimering (AO) kanske inte är lämpliga för denna typ av system på grund av minne och sammanställning overheads. Forskningen som presenteras i denna uppsats föreslår en teknik som kombinerar några av de viktigaste fördelarna med JIT sammanställning, superoperatorer (SO) och profilstyrd optimering, för att leverera en lätt Java bytecode sammanställningssystem, riktad för resurs-konstruerade miljöer, som uppnår körtid prestanda som liknar den av state-of-the-art JIT / AO-system, samtidigt som den har en minimal inverkan på runtime minne konsumtion. De viktigaste idéerna är att använda profiler-vald, utökad bytekod grundläggande block som superoperatorer (nya bytekod instruktioner) och att utföra få, men mycket riktade, JIT / AO-liknande optimeringar vid kompileringstid endast på superoperatorernas bytekod, som styrs av sammanställning "hints" kodas som annoteringar. Som sådan, vårt system uppnår konkurrenskraftiga prestanda till ett JIT / AO-system, men med en mycket lägre inverkan på runtime minne konsumtion. Dessutom visar det sig att vårt föreslagna system ytterligare kan förbättra programprestandan genom selektivt indikering av metodanrop inbäddade i de valda superoperatörerna, som styrs av profileringsdata från körningstid och med minimal påverkan på klassfilens storlek. För experimentell utvärdering utvecklade vi tre virtuella maskiner som använder de idéer som presenteras ovan. De skräddarsydda virtuella maskinerna jämförs först (w.r.t. körtidens prestanda) till en enkel, snabbutvecklad virtuell dator (baslinje) och sedan till en virtuell dator som använder JIT/AO. Vårt bäst presterande system uppnår speedups som sträcker sig från en faktor på 1.52 till en faktor på 3.07, w.r.t. till utgångsvärdet för den virtuella maskinen. Jämfört med en toppmodern JIT/AO VM fungerar vårt föreslagna system bättre för tre av riktmärkena och sämre med mindre än en faktor på 2 för tre andra. Men vår SO-utökade VM överträffar JIT / AO-systemet med en faktor på i genomsnitt 16, w.r.t. runtime-minnesförbrukning.
I REF presenteras ett lättviktigt JIT-kompileringssystem som är inriktat på resursbegränsade miljöer.
A simplified java bytecode compilation system for resource-constrained embedded processors
{'venue': "CASES '07", 'journal': None, 'mag_field_of_study': ['Computer Science']}