Operating Systems Architectures

Operating Systems Architectures
Licence InformatiqueParcours Computer Sciences (UFAZ) (délocalisé en Azerbaïdjan)

Catalogue2024-2025

Description

This course presents the features of the main architectural components of operating systems (kernel, memory management, processes and threads, files and peripherals), the interface with hardware (interrupts, address translation, peripheral management) and the underlying mechanisms (paging, synchronisation, switching, scheduling, etc.). Synchronisation mechanisms and concurrency problems are addressed through programming in C with POSIX APCs: threads, memory sharing between processes and semaphores.

Compétences requises

  • write complex programs in C

  • write programs using POSIX system primitives

  • write simple programs in assembler

Compétences visées

At the end of this course, students will know:

  • how operating systems work

  • how hardware and operating systems interact

  • to precisely identify system administration tasks

  • to identify and solve concurrency problems in programs

  • to write programs that share resources

  • to organise access to shared resources

Disciplines

  • Informatique

Syllabus

  • Lectures:

    • Intro, concurrent systems

    • Parallelism

    • IPC SysV - msg queues

    • Processes

    • IPC SysV - memory

    • Project launch

    • Threads

    • POSIX Threads and signals

    • Deadlocks

    • Mutual exclusion

    • Semaphores

    • Thread synchronisation

    • C11

    • Memory Management

  • Tutorials:

    • IPCs - Message queue

    • IPC - shared memory

    • Threads - thread, barrier

    • Semaphores

  • Lab sessions:

    • processes - environment

    • fork()

    • IPC_SystV - msg queue

    • IPC_SystV - shared memory

    • Deadlocks

    • POSIX Threads

    • Semaphores

    • V7 signals

    • Cunit testing

    • threads_API

    • Concurrency

    • Memory stats

    • File, directories

    • Condition variable

Bibliographie

  • A. Silberschatz, P. B. Galvin, G. Gagne, Operating System Concepts (9th Edition), Wiley

  • R. Arpaci-Dusseau, A.C. Arpaci-Dusseau, Operating Systems: Three Easy Pieces, http://pages.cs.wisc.edu/~remzi/OSTEP/ 

Contacts

Responsable(s) de l'enseignement

MCC

Les épreuves indiquées respectent et appliquent le règlement de votre formation, disponible dans l'onglet Documents de la description de la formation.

Régime d'évaluation
ECI (Évaluation continue intégrale)
Coefficient
5.0

Évaluation initiale / Session principale - Épreuves

LibelléType d'évaluationNature de l'épreuveDurée (en minutes)Coéfficient de l'épreuveNote éliminatoire de l'épreuveNote reportée en session 2
Practical Work/Project Langue utilisée pour l'épreuve : Anglais
SCA2
First written examLangue utilisée pour l'épreuve : Anglais
ACET602
Second written examLangue utilisée pour l'épreuve : Anglais
ACET1203