← Nieuwste papers
💻 computer science

Velosiraptor: Code Synthesis for Memory Translation

Velosiraptor is een codesynthesesysteem dat automatisch geverifieerde, laag-niveau besturingssysteemcode genereert voor het configureren van geheugenhardware, waardoor handmatige implementatiefouten worden geëlimineerd en het porteren van besturingssystemen naar nieuwe platformen met nieuwe vertaalmechanismen wordt gestroomlijnd.

Oorspronkelijke auteurs: Reto Achermann, Em Chu, Ryan Mehri, Ilias Karimalis, Margo Seltzer

Gepubliceerd 2026-08-11
📖 4 min leestijd☕ Koffiepauze-leesvoer

Oorspronkelijke auteurs: Reto Achermann, Em Chu, Ryan Mehri, Ilias Karimalis, Margo Seltzer

Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer

Stel je het geheugen van je computer voor als een enorme, bruisende stad waar elke applicatie een verschillende wijk is. Om deze wijken veilig en gescheiden te houden, heeft de stad een geavanceerd verkeersregelsysteem nodig. Dit systeem, bekend als de Memory Management Unit (MMU), fungeert als een combinatie van een superintelligente verkeersagent en een vertaler. Het doel is tweeledig: het bepaalt wie er een specifieke straat op mag (bescherming) en het vertaalt een straatnaam zoals "Hoofdstraat" naar de werkelijke GPS-coördinaten waar het huis zich bevindt (translatie). Als deze verkeersagent in de war raakt of een fout maakt, kan de hele stad instorten, of erger nog, een dief zou een bankkluis kunnen binnensluipen terwijl hij denkt dat het gewoon een bakkerij is.

Decennialang hebben de mensen die de besturingssystemen bouwen (de "stadsplanners") de instructies voor deze verkeersagent handmatig moeten schrijven. Elke keer als er een nieuw type hardware arriveert met een iets andere manier van verkeersafhandeling, moeten de planners gaan zitten, een enorme, verwarrende handleiding lezen en de code vervolgens met de hand en uiterst zorgvuldig herschrijven. Het is een tijdrovend, foutgevoelig proces waarbij een enkele typefout een achterdeur voor hackers kan openen. Dit artikel pakt de hoofdpijn aan van het handmatig programmeren van deze complexe geheugensystemen, door een manier voor te stellen waarmee de computer de instructies voor de verkeersagent automatisch kan schrijven, zodat de regels elke keer perfect worden nageleefd.


Het Papier: Velosiraptor

Maak kennis met Velosiraptor, een nieuwe tool die fungeert als een meesterarchitect en een code-schrijvende robot in één. In plaats van menselijke ontwikkelaars handmatig de complexe, laag-niveau instructies te laten opschrijven die nodig zijn om het geheugenhardware te configureren, laat Velosiraptor hen simpelweg beschrijven wat de hardware moet doen in gewone, hoog-niveau termen. Denk eraan een chef-kok een receptenkaart te geven waarop staat: "Maak een broodje met ham en kaas," in plaats van hem te dwingen handmatig elke stap op te sommen van het snijden van het brood, het smeren van de mayonaise en het schikken van het vlees. Velosiraptor neemt die eenvoudige beschrijving en genereert automatisch de precieze, geverifieerde code die nodig is om de hardware precies zoals beschreven te laten functioneren.

Het systeem werkt door de complexe geheugenhardware op te delen in kleinere, beheersbare Lego-achtige bouwblokken. Het gebruikt een speciale taal om te beschrijven hoe deze blokken in elkaar passen en hoe ze moeten reageren op verschillende verzoeken. Zodra de beschrijving klaar is, gokt Velosiraptor niet zomaar; het gebruikt een krachtige wiskundige engine (een SMT-solver) om miljoenen mogelijke codecombinaties in zijn geest te testen. Het zoekt naar de specifieke reeks instructies die de hardware van de huidige staat naar de gewenste staat zal brengen zonder de regels te breken. Als het een oplossing vindt, verifieert het deze wiskundig om er zeker van te zijn dat het 100% correct is voordat het de code aan de ontwikkelaar overhandigt.

De onderzoekers ontdekten dat deze aanpak ongelooflijk snel en efficiënt is. In hun tests kon Velosiraptor de code voor complexe geheugensystemen, zoals de page tables die in moderne computers worden gebruikt, genereren in minder dan twee seconden. Om dit in perspectief te plaatsen: het compileren van het volledige Linux-besturingssysteem duurt meer dan 150 seconden, wat betekent dat het werk van Velosiraptor zo snel is dat het nauwelijks tijd toevoegt aan het buildproces. Het papier laat ook zien dat de code die Velosiraptor schrijft net zo goed presteert als code geschreven door menselijke experts, zonder merkbaar verschil in snelheid.

Misschien wel het meest opwindende deel van dit onderzoek is dat Velosiraptor niet alleen software schrijft; het kan ook de hardware zelf bouwen in een simulatie. Met exact dezelfde beschrijving kan de tool een virtuele versie van de geheugenhardware genereren om op een computersimulator te draaien. Dit stelt onderzoekers in staat om nieuwe, denkbeeldige geheugendesigns te testen zonder eerst een fysieke chip te hoeven bouwen. Ze kunnen zien of een nieuw idee werkt, het aanpassen en de software genereren om het te draaien, allemaal op een laptop.

De auteurs laten zien dat deze tool geïntegreerd kan worden in real-world besturingssystemen, waarbij ze succesvol een complex systeem genaamd Barrelfish hebben opgestart met code die Velosiraptor vanaf nul heeft gegenereerd. Hoewel het papier zich richt op specifieke hardware zoals x86- en Arm-processors, suggereert de methode een toekomst waarin ontwikkelaars hun besturingssystemen gemakkelijk kunnen aanpassen aan nieuwe, vreemde of aangepaste hardware zonder zich te verliezen in de details van handmatige configuratie. Het is een stap naar een wereld waarin het saaie, gevaarlijke werk van het programmeren van het brein van een computer wordt afgehandeld door een betrouwbare, geautomatiseerde assistent, waardoor mensen vrij blijven om zich op het grotere plaatje te concentreren.

Verdrinkt u in papers in uw vakgebied?

Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.

Probeer Digest →