Master SIR et Image - Programmation Système
Notation
Rapport d'étude d'une partie du noyau
Le développement dans le noyau nécessitant une grande part de lecture et compréhension du code existant, la note de contrôle continu sera pour moitié dédiée à l'étude d'une partie du noyau.
Ce travail est à effectuer en binôme et à rendre pour le 15 mars 2005 à minuit, de préférence par mail dans un format de fichier ouvert (PDF, PS, OpenOffice, ...).

Il s'agira de choisir une partie quelconque des sources d'un noyau Linux (pour les autres systèmes, demander l'accord au préalabre) et d'en étudier le fonctionnement.
Les derniers noyaux 2.6 ont l'avantage de suivre l'interface de programmation vue en cours et en TD, mais ne sont pas forcément les plus simples, on pourra donc éventuellement prendre un vieux noyau. Le rapport devra indiquer clairement quelle partie (notamment les fichiers sources) de quelle version de quel système a été étudié.
L'étude devra être mise en forme dans un rapport de quelques pages détaillant les parties importantes du code, leur rôle et d'éventuels bogues, limites, ...
Exemples de parties pouvant convenir
Planning des cours
Ces polycopiés ne sont qu'un plan détaillé. Les détails réels et schémas explicatifs ne seront donnés qu'à l'oral ou au tableau pendant le cours magistral.
  1. Introduction PDF puis Matériel PDF
  2. Concepts généraux des systèmes d'exploitation PDF
  3. Processus PDF (début)
  4. Processus (fin) - Mémoire PDF (début)
  5. Concurrence (par Jacques Bonneville) PDF
  6. Mémoire (milieu)
  7. Mémoire (fin)
  8. Entrées-sorties (début) PDF
  9. Entrées-sorties (fin) - Ordonnancement (début) PDF
  10. Ordonnancement (fin) - Rappels et conclusion
Sujets et corrigés des TP

Ces sujets et corrigés ont été écrits pour des vieux noyaux Linux, vers 2.6.10. Ils ne s'appliquent probablement plus aux noyaux récents.

  1. Création, compilation et chargement/déchargement de modules noyau. kmalloc/kfree. Sujet
  2. Threads noyau. Sommeil et réveil. Interaction entre utilisateur et noyau par périphérique caractère. Sujet
  3. Communications avec échange de données entre utilisateur et noyau par périphérique caractère. Sujet
  4. Traduction d'adresse, mapping de périphérique caractère, utilisation de la mémoire vidéo. Sujet
  5. Entrées/sorties: périphériques PCI et IRQ. Sujet
  6. Entrées sorties: IRQ et commande du haut-parleur interne. Sujet
  7. Séance notée : Ordonnancement, préemption, priorités.
Quelques ressources documentaires
Updated on 2011/07/14.