Runtime Systems
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
MIE-RUN | Z,ZK | 4 | 2+1 |
- Přednášející:
- Cvičící:
- Předmět zajišťuje:
- katedra softwarového inženýrství
- Anotace:
-
Student become familiar - theoretically and practically - with runtime systems and virtual machines for various programming languages.
- Požadavky:
-
Object-oritented programming, machine code, programming languages (C, C++, Java, Smalltalk, or another dynamic language).
- Osnova přednášek:
-
1. Runtime for C/C++, static vs. dynamic linking, position independent code, memory management.
2. Calling conventions, system calls, signals and exceptions.
3. Virtual machines for high-level languages: JVM, MSIL, Squeak, SELF.
4. Organization of object heap. Object table. Immediate values.
5. Memory management, basic garbage collection methods.
6. Bytecode and its interpretation.
7. Just-in-time compilations, method lookup optimizations techniques.
8. Advanced optimization techniques: inlining, custom-compilation. SELF SIC.
9. Thread implementation. Green vs. Native threads.
10. JVM: mapping of threads and synchonization primitives to OS resources.
11. Exceptions - implementation in C++, JVM, Smalltalk.
12. Security mechanisms in VMs. Verification of the bytecode. Security Manager.
13. Foreign function calls. Cross-language calls.
14. VM Bootstrap. metacircular VM.
- Osnova cvičení:
-
1. TBD.
- Cíle studia:
-
The aim is to complete education in the field of programming languages with the knowledge of runtime systems and virtual machines for different kinds of programming languages.
- Studijní materiály:
-
1. 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:
- Rozvrh není připraven
- Rozvrh na letní semestr 2011/2012:
- Rozvrh není připraven
- Předmět je součástí následujících studijních plánů:
-
- System Programming, in English, Version for Students, who Enrolled in 2010 and 2011 (povinný předmět zaměření)
- Software Engineering, Presented in English, Version for Students, who Enrolled in 2010 and 2011 (povinný předmět zaměření)
- Master Informatics, Presented in English - Version for Students who Enrolled in 2010 (VO)
- Master Informatics, Presented in English - Version for Students who Enrolled in 2011 (VO)
- Master Informatics, Presented in English - Version for Students who Enrolled in 2012 (VO)
- System Programming, Presented in English - Version for Students who Enrolled in 2012 (povinný předmět zaměření)
- Software Engineering, Presented in English - Version for Students who Enrolled in 2012 (povinný předmět zaměření)