Équipe enseignante
- Coordination (2024-2025) et matériel de cours
- Enseignement automne 2025
- Démonstrateurs automne 2025
- Jaber Absaoui
- Sublime Tshimanga Tshimpangila
Ressources
- Plan de cours automne 2025
- Description officielle (et horaires)
- Canal Mattermost officiel
- Support académique pour les travaux et autre.
Description officielle
Maîtriser et appliquer les concepts fondamentaux des systèmes d’exploitation. Comprendre les mécanismes et les politiques mises-en-oeuvre par les systèmes d’exploitations. Maîtriser la programmation système UNIX/Linux en C.
Rôles, types et structure générale des systèmes d’exploitation. Mécanismes noyaux : appels systèmes, interruptions, modes d’exécution processeur. Gestion des processus : états des processus, création et terminaison (fork et exec). Multitâche : changement de contexte, fils (threads), ordonnancement des tâches. Gestion des fichiers : systèmes de fichiers, inodes, descripteurs de fichiers, fichiers spéciaux. Communication inter-processus : échanges de messages, signaux, tubes, mémoire partagée. Concurrence : synchronisation, sections critiques, interblocages. Gestion de la mémoire : adressage, allocation, protection, pagination, mémoire virtuelle. Entrées-sorties : pilotes, pseudo-périphériques. Les considérations de sécurité seront intégrées au développement de la matière.
Évaluations et échéancier des rendus
Les dates de remise sont des dates “au plus tard”, et s’entendent sur le fuseau horaire de Montréal, à 23:55 le jour de la date de remise, mais rien ne vous empêche de livrer autant de fois que vous le souhaitez avant l’échéance.
Semainier (type) des séances
- Les diapositives téléchargeables (pdf) datent de la session d’hiver 2021.
- Des capsules vidéos de Jean Privat (automne 2020) sont aussi disponibles.
# | Semaine | Diapositives | Laboratoires |
---|---|---|---|
1 |
Groupe 020 : 2 septembre 2025 Groupe 030 : 3 septembre 2025 |
100 Introduction - pdf 🖼 110 Définition et rôles - pdf 🖼 120 Appels système - pdf 🖼 - progs 💾 130 Mécanismes matériels - pdf 🖼 - progs 💾 |
Lab1 ⌨️ |
2 |
Groupe 020 : 9 septembre 2025 Groupe 030 : 10 septembre 2025 |
200 Processus - pdf 🖼 210 Threads - pdf 🖼 220 Mémoire des processus - pdf 🖼 - progs 💾 230 Vie et état - pdf 🖼 |
Lab2 ⌨️ |
3 |
Groupe 020 : 16 septembre 2025 Groupe 030 : 17 septembre 2025 |
240 Création et terminaison - pdf 🖼 - progs 💾 241 fork et création de processus - pdf 🖼 - progs 💾 242 exec et recouvrement de processus - pdf 🖼 - progs 💾 243 exit et terminaison de processus - pdf 🖼 - progs 💾 |
Lab3 ⌨️ |
4 |
Groupe 020 : 23 septembre 2025 Groupe 030 : 24 septembre 2025 |
250 Ordonnancement des processus - pdf 🖼 - progs 💾 |
Lab4 ⌨️ |
5 |
Groupe 020 : 29 septembre 2025 (pendant la période de laboratoire) Groupe 030 : 1 octobre 2025 |
300 Système de gestion de fichiers - pdf 🖼 310 Manipulation de fichiers - pdf 🖼 Remise du TP0 Groupe 020 : 28 septembre 2025 à 23h55 Groupe 030 : 1 octobre 2025 à 23h55 |
Lab5 ⌨️ |
6 |
Groupe 020 : 7 octobre 2025 Groupe 030 : 8 octobre 2025 |
320 Droits et utilisateurs - pdf 🖼
330 Répertoires - pdf 🖼 - progs 💾 |
Lab6 ⌨️ |
7 |
Groupe 020 : 14 octobre 2025 Groupe 030 : 15 octobre 2025 |
340 Traitement des fichiers ouverts - pdf 🖼 - progs 💾
350 Implémentation des systèmes de fichiers - pdf 🖼 Quiz 1 |
Lab7 ⌨️ |
8 | Groupe 020 et 030 : 19 octobre 2025 de 09:30 à 12:30 |
Examen intra |
|
9 |
Groupe 020 : 28 octobre 2025 Groupe 030 : 29 octobre 2025 |
400 Communication interprocessus - pdf 🖼
410 Signaux - pdf 🖼 - progs 💾 |
Lab9 ⌨️ |
10 |
Groupe 020 : 4 novembre 2025 Groupe 030 : 5 novembre 2025 |
420 Tubes - pdf 🖼 - progs 💾 430 Sockets - pdf 🖼 - progs 💾 6 novembre: date limite d'abandon sans mention d'échec. Remise du TP1 Groupe 020 : 2 novembre 2025 à 23h55 Groupe 030 : 5 novembre 2025 à 23h55 |
Lab10 ⌨️ |
11 |
Groupe 020 : 11 novembre 2025 Groupe 030 : 12 novembre 2025 |
500 Synchronisation - pdf 🖼 - progs 💾
510 Section critique - pdf 🖼 - progs 💾 |
Lab11 ⌨️ |
12 |
Groupe 020 : 18 novembre 2025 Groupe 030 : 19 novembre 2025 |
520 Outils de synchronisation - pdf 🖼 - progs 💾
530 Interblocage - pdf 🖼 - progs 💾 |
Lab12 ⌨️ |
13 |
Groupe 020 : 25 novembre 2025 Groupe 030 : 26 novembre 2025 |
600 Gestion de la mémoire - pdf 🖼 - progs 💾
610 Pagination - pdf 🖼 620 Mémoire virtuelle - pdf 🖼 |
Lab13 ⌨️ |
14 |
Groupe 020 : 2 décembre 2025 Groupe 030 : 3 décembre 2025 |
621 Mémoire virtuelle avancée - pdf 🖼
622 mmap et cie. - pdf 🖼 - progs 💾 623 Consommation mémoire - pdf 🖼 - progs 💾 630 Allocation - pdf 🖼 Quiz 2 |
Lab14 ⌨️ |
15 | Groupe 020 et 030 : 16 décembre de 09:30 à 12:30 |
Examen final
Remise du TP2 Groupe 020 et 030 : 14 décembre 2025 à 23h55 |
Anciens examens
Liens
- The Linux Kernel documentation. Documentation officielle du noyau Linux
- LWN. Site d’information spécialisé sur le noyau linux et son ecosystème (Linux Weekly News)
- POSIX.1-2024. Norme POSIX (Open Group et IEEE).
- The Unix Tree. Code source original de nombreuses versions historiques de Unix.
Ressources de rappel pour les préalables
- INF1070 Tout le contenu, dont des vidéos
- INF2171 Tout le contenu
- INF3135 Vidéos du cours par Alexandre Blondin Massé
Médiagraphie
Les ressources suivantes sont recommandées.
- SILBERSCHATZ, A., GAVIN, P.B., GAGNE, G. – Operating Systems Concepts, 10TH EDITION, WILEY, 2018.
- TANENBAUM, Andrew S. – Modern Operating Systems – PRENTICE HALL, 4RD ED., 2014.
- TANENBAUM, Andrew S. – Système d’exploitation – PERSON EDUCATION, 3RD ED. (en français)
Des ressources complémentaires sont disponibles
- NUTT, G. – Operating system concepts – ADDISON WESLEY.
- STALLING, W. – Operating systems Internals and Design Principles – PRENTICE HALL.
- BIC, L.F. et SHAW, A.C. – Operating systems principles – PRENTICE HALL.
- KERNIGHAN, B.W., RITCHIE, D.M. – The C programming language – PRENTICE HALL.
- BLAESS, C. – Développement système sous Linux – EYROLLES
- RIFFLET, J.M. – La programmation sous Unix – SCIENCE INTERNATIONAL, PARIS.
- KERRISK M. – The Linux Programming Interface – NO STARCH PRESS.
- GRAY, J.S. – Inteprocess communications in Linux – THE NOOKS AND GRANMIS.
- ROBBINGS, K.A. et ROBBINGS, S. – Unix Systems Programming – PRENTICE HALL.