Ce cours, dans la continuité d'ASR1, a pour objectif de
présenter
le fonctionnement des systèmes d'exploitation et des réseaux de communications.
Conception des systèmes d'exploitation: structure globale d'un OS (rappel du cours ASR1),
problèmes de synchronisation des processus et interblocages,
ordonnancement des processus, gestion de la mémoire et mémoire
virtuelle.
Structure des réseaux de communication: architecture des réseaux,
protocoles de communications (MAC, TCP/IP), algorithmes de routage,
contrôle de congestion.
Sauf contre-ordre, les cours ont lieu le mercredi à 10h15 dans
l'amphi B.
Mer 28/01 10h15 (Amphi L):
Présentation générale du cours et des
systèmes d'exploitation: organisation et architecture d'un
système informatique, services fournis par l'OS, appels et
programmes systèmes (Notes du cours
1).
Mer 04/02 10h15: Structure des OS, et gestion des processus
(Notes du cours 2).
Jeu 05/02 10h15: Processus
coopérants et threads (Notes du
cours 3). Todo: Répondre aux petites questions qui se sont
glissées à la fin de chaque chapitre (1. Structure d'un OS
et 2. Gestion des processus).
Mer 11/02 10h15: Fin de la gestion des threads (changement de
contexte, création), et synchronisation des processus:
introduction du problème des situations de compétition
et de la section critique. Solutions de Peterson, et utilisant
TestAndSet et Swap
(Notes du cours 4). Todo: Prouver
que l'algorithme utilisant TestAndSet pour n
processus avec attente bornée vérifie
les 3 conditions de solution au problème de la section critique.
Bonnes vacances!
Mer 25/02 10h15: Poursuite de l'étude des
synchronisations (sémaphores, moniteurs)
(Notes du cours 5). Todo: Regarder si besoin la solution du Todo de la semaine
dernière (dans les notes de cours),
et répondre aux quelques questions de fin de chapitre.
Mer 04/03 10h15: Les interblocages: le problème, et
comment prévenir ou éviter les interblocages (Notes du cours 6). Todo: Terminer le petit exercice d'application de
l'algorithme du banquier.
Mer 11/03 10h15: Poursuite des interblocages (détecter et
récupérer), et ordonnancement des processus (Notes du cours 7). Todo: Encore un exercice d'application de l'algorithme du
banquier (Section 5.3), et lire les sections 6.4 et 6.5 du chapitre
ordonnancement (n'hésitez pas à me contacter en cas de
questions).
Mer 18/03 10h15: Gestion mémoire (Transparents du cours 8), et
présentation
de la mémoire virtuelle (pagination à la demande). Todo: Répondre aux petites questions du dernier
transparent.
Mer 25/03 10h15: Fin de l'étude de la mémoire
virtuelle (Transparents du cours 9), ce qui conclut
la partie système du cours. Todo: Les questions du dernier transparent et réviser
pour le partiel.
Mer 01/04 10h15: Partiel.
Mer 08/04 10h15: Réseaux: Introduction (c'est quoi un
réseau?), structure en couches, et techniques de base
(Notes du cours 10). Todo: Finir l'étude de la performance de la
découpe d'un message en paquets.
Bonnes vacances!
Mer 22/04 10h15: Détail des couches 1-physique et
2-liaison
(Notes du cours 11). Todo: Lire la feuille décrivant les trames Ethernet
(distribuée en cours).
Mer 29/04 10h15: Fin de la couche 2-liaison (couche MAC
pour l'interconnection de réseaux), et les principes
d'IP (couche 3-réseau).
(Notes du cours 12).
Mer 13/05 10h15 (Amphi K): La couche
4-transport: UDP et TCP (Notes du cours 14).
Et voici le poly du cours qui rassemble
tous les cours! Merci de me dire si vous voyez des erreurs,
imprécisions,
typos, ou autres points qui mériteraient une
amélioration!