<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/"><rdf:Description rdf:about="https://repozitorij.uni-lj.si/IzpisGradiva.php?id=187356"><dc:title>Izdelava JIT prevajalnika za navidezni stroj Pins25</dc:title><dc:creator>Belič,	Denis	(Avtor)
	</dc:creator><dc:creator>Slivnik,	Boštjan	(Mentor)
	</dc:creator><dc:subject>navidezni stroj</dc:subject><dc:subject>tolmač</dc:subject><dc:subject>sprotno prevajanje</dc:subject><dc:subject>dinamično profiliranje</dc:subject><dc:subject>x86-64</dc:subject><dc:description>Tolmačenje vmesne kode omogoča izvajanje istega programa na različnih računalniških sistemih, vendar vsak izvedeni ukaz spremlja strošek tolmaške zanke. V diplomskem delu smo zato za skladovni navidezni stroj Pins25 izdelali preprost sprotni prevajalnik (angl. just-in-time compiler). Obstoječi prevajalnik in navidezni stroj Pins25 sta napisana v Javi. Prevajalnik smo razširili tako, da vmesno kodo in podatke zapiše v binarno objektno datoteko, za njeno izvajanje pa smo v jeziku C implementirali nalagalnik, tolmač ter infrastrukturo za profiliranje in izvajanje strojne kode. Izvajalno okolje pri vsakem klicu funkcije beleži število klicev, med izvajanjem funkcije pa tudi število vzvratnih skokov. Ko eden od števcev doseže izbrani prag, izvajalno okolje funkcijo analizira in njene ukaze neposredno prevede v strojne ukaze x86-64. Tolmačene in prevedene funkcije uporabljajo isti pomnilnik, sklad in obliko klicnih zapisov, zato se lahko med seboj kličejo tudi rekurzivno. Prototip podpira celoten nabor ukazov Pins25. Ovrednotenje pokaže, da sprotno prevajanje koristi predvsem daljšim programom, pri kratkih pa stroški profiliranja in prevajanja večinoma izničijo pridobljeno pohitritev. Na učinkovitost poleg trajanja vplivajo tudi vzorec klicev, krmilni tok in prehodi v izvajalno okolje.</dc:description><dc:date>2026</dc:date><dc:date>2026-09-10 11:30:03</dc:date><dc:type>Diplomsko delo/naloga</dc:type><dc:identifier>187356</dc:identifier><dc:language>sl</dc:language></rdf:Description></rdf:RDF>
