Runtime systémy
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
MI-RUN | Z,ZK | 4 | 2+1 | česky |
- Přednášející:
- Jan Vraný (gar.)
- Cvičící:
- Jan Kurš, Jan Vraný (gar.)
- Předmět zajišťuje:
- katedra softwarového inženýrství
- Anotace:
-
Student získá teoretické i praktické znalosti o běhových systémech a virtuálních strojích pro různé programovaci jazyky.
- Požadavky:
-
Objektově orientované programování, strojový kód, programovací jazyky (C, C++, Java, Smalltalk nebo jiný dynamický jazyk).
- Osnova přednášek:
-
1. Runtime pro jazyk C/C++, statické vs. dynamické linkování, position independent code, správa paměti.
2. Volací konvence, volání jádra, vyjímky a signály.
3. Virtuální stroje pro vyšší programovací jazyky: JVM, MSIL, Squeak, SELF.
4. Organizace objektové paměti. Object table. Immediate values.
5. Správa paměti, základní techniky čištění paměti.
6. Bytekód a jeho interpretace.
7. Just-in-time překlad, optimalizace hledání metod.
8. Pokročilé optimalizace: inlining, custom-compilation. SELF SIC.
9. Implementace vláken. Green vs. Native threads.
10. JVM: mapování vláken a synchronizačních primitiv na prostředky OS.
11. Vyjímky - implementace v jazycích C++, JVM, Smalltalk.
12. Bezpečnostní mechanismy ve VM. Verifikace bytekódu. Security Manager.
13. Volání externích funkcí. Volání funkcí implementovaných v jiných jazycích.
14. VM Bootstrap. metacircular VM.
- Osnova cvičení:
-
1. TBD.
- Cíle studia:
-
Cílem předmětu je završit vzdělávání v oblasti programovacich jazyků znalostí architektury běhových systémů a virtuálních strojů pro různé kategorie programovacích jazyků.
- Studijní materiály:
-
Smith, J., Nair, R. ''Virtual Machines: Versatile Platforms for Systems and Processes''. Morgan Kaufmann, 2005. ISBN 1558609105.
- Poznámka:
-
Rozsah=prednasky+proseminare+cviceni2p+1c, Prednasejici: Ing. Jan Vraný
- Rozvrh na zimní semestr 2011/2012:
-
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Po Út St Čt Pá - Rozvrh na letní semestr 2011/2012:
- Rozvrh není připraven
- Předmět je součástí následujících studijních plánů:
-
- Zaměření Softwarové inženýrství - verze pro ty, kteří se zapsali v roce 2010 (povinný předmět zaměření)
- Zaměření Systémové programování - verze pro ty, kteří se zapsali v roce 2010 (povinný předmět zaměření)
- Zaměření Softwarové inženýrství - verze pro ty, kteří se zapsali v roce 2011 (povinný předmět zaměření)
- Zaměření Systémové programování - verze pro ty, kteří se zapsali v roce 2011 (povinný předmět zaměření)
- Zaměření Systémové programování - verze pro ty, kteří se zapsali v roce 2012 (povinný předmět zaměření)
- Zaměření Softwarové inženýrství - verze pro ty, kteří se zapsali v roce 2012 (povinný předmět zaměření)