Enrolment options
System Programming
(
ECT = 4 ECTS + optional 2 ECTS).
Part 1. Operating system architecture (2 ECTS).
The concept of kernel objects, and how to work with them; Principles of processes and threads; WinApi functions to manage processes, threads, registry; threads synchronization; Low-level work with files; Principles of work with memory.
Part 2. Concurrent Programming (in Pyton) (2 ECTS).
Introduction to parallel architectures; Parallel programming concepts; Design patterns for parallel programming; Programming hands-on; Debugging parallel programs; Performance monitoring and optimizations; Parallelizing compilers.
Part 3.(optional) Distributed systems (2 ECTS).
Networking: network protocols, point-to-point communication; Marshaling: JSON, Google protocol buffers; Remote procedure calls; Distributed objects; Web services; Clock synchronization; Event ordering: Logical clocks, Vector clocks; Distributed transactions; Concurrency control.
- Teacher: Vinod Kumar Verma