School / Prep
ENSEIRB-MATMECA
Internal code
ES7MI206
Description
The course aims to:
- Understand the architecture and types of operating systems
- Understand and master the different types of tasks as well as the means of communication and synchronization, in addition to some notions of scheduling.
- Learn how to design multitasking programs
- Understand memory management in an operating system.
Teaching hours
- CIIntegrated Courses20h
- TIIndividual work12h
Mandatory prerequisites
Prerequisites:
Algorithms and computer architectures
C programming
Programming project
Introduction to operating systems
Syllabus
- Part 1: Introduction to operating systems
+ Definition of an operating system
+ Operating system features
+ Different operating system classifications
+ Operating system architectures
- Part 2: Tasks, processes and threads
+ Task concepts
+ Processes and threads
+ Task contexts
+ Concurrency
- Part 3: Synchronization and communication
+ System V and Posix IPCs (semaphores, message queues, shared memories)
+ Tubes and Signals
- Part 4: Basics of memory management
+ History of memory management
+ Swap
+ Pagination
+ Virtualization
+ Segmentation
Assessment of knowledge
Initial assessment / Main session - Tests
Type of assessment | Type of test | Duration (in minutes) | Number of tests | Test coefficient | Eliminatory mark in the test | Remarks |
---|---|---|---|---|---|---|
Final inspection | Written | 90 | 1 | authorized form | ||
Final inspection | Written | 90 | 0.75 | authorized form | ||
Continuous control | Minutes | 0.25 |