C++ Runtime for HelenOS
C++ běhová podpora pro HelenOS
diplomová práce (OBHÁJENO)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/171762Identifikátory
SIS: 201897
Kolekce
- Kvalifikační práce [10932]
Autor
Vedoucí práce
Oponent práce
Zavoral, Filip
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Softwarové systémy
Katedra / ústav / klinika
Katedra distribuovaných a spolehlivých systémů
Datum obhajoby
8. 2. 2022
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Angličtina
Známka
Výborně
Klíčová slova (česky)
C++|runtime|HelenOS|microkernelKlíčová slova (anglicky)
C++|runtime|HelenOS|microkernelAby operační systém podporoval běh programů napsaných v určitém programovacím jazyce, musí obsahovat běhové prostředí daného jazyka. Běhová prostředí různých programovacích jazyků se mohou lišit, ale obecně sestávají z nástroje umožňující samotný běh, jako například interpret nebo takzvaná runtime knihovna, a standardní knihovna obsahující funkce a typy použité daným programem. V této práci zhodnotíme, které části běhového prostředí jazyka C++ jsou nejvíce potřebné ke spouštění existujících programů napsaných v jazyce C++ a naimplementujeme je pro operační systém HelenOS. Následně naportujeme existující open-source program napsaný v C++ na ověření správnosti našeho vyhodnocení a implementace tohoto běhového prostředí.
In order for an operating system to support running programs written in any given programming language, it needs to provide a runtime environment for that language. The structure of the runtime varies depending on the language, but it generally consists of a tool allowing the program to run, which can be an interpreter or a runtime library, and a standard library providing functions and types used by the program. In this thesis we evaluate which parts of the C++ runtime are the most needed to support existing programs written in C++ and implement them for the HelenOS operating system. We then port an already existing open-source program written in C++ to verify the correctness of both our research and our implementation.