Grundgebiete der Informatik 3 .- Betriebssysteme und Systemsicherheit

  Screenshot eduOS Copyright: © ACS

The course „Grundgebiete der Informatik 3 .- Betriebssysteme und Systemsicherheit“ (BS) gives a deeper understanding of modern computer architectures and its operating systems. Through this course the students learn the consequences of the software design and its implementation with respect to performance, portability, and security of the overall system. The course is divided into the following parts:

Contact

Stefan Lankes © Copyright: Fotostudio Jünger

Name

Stefan Lankes

Academic Director / Team Simulation Infrastructure and HPC

Phone

work
+49 241 80 49740

Email

E-Mail
 
  • Tasks and structure of operating systems
  • Introduction to UNIX
  • Programming tools
    • Source code management
    • Introduction to the process of "code review" and automated testing
    • Rust vs. C/C++
  • System-oriented programming
    • Processor models (especially Intel 80x86)
    • Register and memory models, instruction formats, data types, addressing modes
    • Instruction level parallelism / data parallelism
    • Multi-core and multi-processor architectures
      • Introduction to concurrent programming
      • Introduction to parallelization
      • Performance evaluation, performance limits (e.g. Amdahl's law)
    • Function calls and their conventions
      • Security risks, possible attack scenarios ("exploits") and existing protection techniques
  • Assembler and assembly: tasks, functionality
  • Loading, binding:
    • Static / dynamic binding, loading with / without memory management.
    • Attack scenarios and existing protection techniques
      • Address Space Layout Randomization (ASLR)
  • Design principles
    • Monolithic operating systems
    • Microkernels (especially seL4)
    • Unikernels / Library OS
    • Exokernels
    • Functional security of the system software
      • e.g. through the use of a secure, system-oriented programming language
  • Resource and process management
    • Tasks of the resource and process management
    • Scheduling / process planning
    • Process synchronization
    • Jamming
    • Inter-process communication
  • Interrupts
    • Types and tasks of interrupts
    • Interrupt system especially of the x86
    • System calls
  • Memory management
    • Paging and segmentation
    • Demand Paging and displacement strategies
    • Side channel attacks at the example of Meltdown
  • Input/output
    • Memory-mapped I/O
    • Layering of I/O software
  • File systems
    • File access / file operations
    • Structure and layering
    • Journaling
  • Isolation of system components
    • Sandboxing
    • Operating system virtualization / containers
    • Virtual machines
 

Questions?

In case of questions, please contact