Logo ČVUT
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
STUDIJNÍ PLÁNY
2024/2025
UPOZORNĚNÍ: Jsou dostupné studijní plány pro následující akademický rok.

Runtime systémy

Zobrazit rozvrh
Kód Zakončení Kredity Rozsah Jazyk výuky
NI-RUN Z,ZK 5 2P+1C anglicky
Garant předmětu:
Filip Křikava
Přednášející:
Filip Křikava
Cvičící:
Filip Křikava
Předmět zajišťuje:
katedra teoretické informatiky
Anotace:

This course is an introduction to the world of virtual machines (VM) for high-level programming languages. There are two goals:

Give you hands-on experience in design and implementation of a compiler and a VM from scratch, including

Abstract Syntax Tree (AST) interpretation

Byte code (BC) design and interpretation

AST to BC compilation

Memory management

Just-in-time compilation and some optimization techniques

Through a series of guest lectures, introduce you to various advanced topics and implementations of real-world VMs, including

Dynamic optimizations, speculations, and deoptimizations

Language implementation frameworks

Read-world VMs

Požadavky:

In this course, you will implement a compiler and a virtual machine for a simple yet non-trivial programming language. This assumes that you can effectively program in some programming language. To implement the class project, you are free to use any programming language with manual memory management, such as C/C++, Rust, or Zig. The provided project template is in C++.

Osnova přednášek:

1. Introduction to the world of VM

2. AST interpretation

3. Bytecode compilation

4. Bytecode interpretation

5. Memory management

6. Garbage collection

7. JVM ISA

8. V8 and its compilers

9. Just-in-time compilation

10. Truffle and GraalVM

11. Dynamic optimizations

12. Dynamic optimizations

Osnova cvičení:

1. The Lox programming language

2. AST interpretation

3. Bytecode compilation

4. Bytecode interpretation

5. Memory management

6. Memory management

7. Just-in-time compilation

Cíle studia:
Studijní materiály:

1. R. Nystrom: Crafting Interpreters, Genever Benning, 2021 ASIN: B09BCCVLCL (https://www.craftinginterpreters.com/)

2. Craig, I. D. : Virtual Machines. Springer, 2005. ISBN 978-1852339692.

3. Jones, R. - Hosking, A. - Moss, E. : The Garbage Collection Handbook: The Art of Automatic Memory Management. Chapman and Hall/CRC, 2011. ISBN 978-1420082791.

Poznámka:

Informace o předmětu a výukové materiály naleznete na https://courses.fit.cvut.cz/MI-RUN/

Další informace:
https://courses.fit.cvut.cz/NI-RUN/
Rozvrh na zimní semestr 2024/2025:
Rozvrh není připraven
Rozvrh na letní semestr 2024/2025:
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
místnost TH:A-1247
Křikava F.
14:30–16:00
(přednášková par. 1)
Thákurova 7 (budova FSv)
seminární místnost
místnost TH:A-1247
Křikava F.
16:15–17:00
(přednášková par. 1
paralelka 101)

Thákurova 7 (budova FSv)
seminární místnost
St
Čt

Předmět je součástí následujících studijních plánů:
Platnost dat k 12. 4. 2025
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/cs/predmet6114506.html