Operating Systems

  • Introduction, concepts, and description of operating system design and construction
  • Operating system structures, services, programs and system calls
  • Process management
  • Scheduling and interprocess communication
  • Threads, multicore programming and syntactic execution
  • Process synchronization, critical regions, semaphores, watchers (synchronization tools and examples)
  • Deadlock handling, deadlock recovery and avoidance methods
  • Memory management (main and virtual memory), paging, page table structure, page swapping, page replacement
  • Storage management, E/O operations, HDD scheduling, NVM scheduling
  • RAID structure
  • File systems, access methods, directory structure, protection, performance
  • safety and protection

Workshop using the Linux operating system, which will be used as a development environment for C/C++ programming exercises.

Semester: 

Spring

Offered: 

2023