Bienvenue! INF3723: Systèmes d’exploitation Luigi Logrippo [email protected] http://w3.uqo.ca/luigi/ 1 Ces notes de cours sont disponibles Chap 0 Dans Moodle INF3723 http://w3.uqo.ca/luigi/INF3723/notes_de_co urs_index.html 2 Évaluation Examen Intra (2h): 25% (le 26 octobre) Examen Final (3h) 40% (le 14 décembre) Examens à livre fermé – aucun doc permis Le final sera sur toute la matière du cours Devs. écrits et de programm. 35% 1 travail de programmation 20% 3 devs écrits: 15% Chap 0 3 Objectifs du cours Vous donner une appréciation de comment un SE fonctionne dans ses aspects les plus internes Qui sont aussi les plus importants pour son efficacité Chap 0 Vous expliquer quelques techniques et principes qui sont utilisés dans les SE mais sont utiles en général Vous exposer aux principes de la programmation parallèle, qui est gérée par le SE 4 Contenu du cours Chap 0 PARTIE 0: INTRODUCTION Revue des principales composantes d'un ordinateur. Structure générale des systèmes d'exploitation. PARTIE 1: PROCESSUS et GESTION d’UNITÉ CENTRALE Description et contrôle des processus. Fils (threads). Ordonnancement des processus Parallélisme: exclusion mutuelle et synchronisation. Parallélisme: interblocage et famine. PARTIE 2: GESTION DE MÉMOIRE Adressage et gestion de la mémoire. Mémoire virtuelle. Examens PARTIE 3: FICHIERS, E/S ET PROTECTION Systèmes de fichiers, systèmes d’E/S Protection et sécurité 5 Chap 0 Accent en classe sur les concepts théoriques de longue durée de vie La programmation, l’application seront dans les sessions travaux dirigés 6 Un cours très enchaîné … Dans quelques cours, chaque chapitre est un monde à part Pas dans ce cours! Chaque chapitre dépend des précédents Donc il faut s’assurer d’avoir bien compris les concepts de base d’un cours avant de venir au cours suivant Chap 0 7 Manuel officiel: Chap 0 139.95/130.15 $. Silberschatz, Galvin, Gagne. Principes appliqués des systèmes d’exploitation, Vuibert (6ème ed.) Avantages: très clair dans la présentation présentation de SE réels utilise Java beaucoup de notions intéressantes et utiles Désavantages: beaucoup plus gros que nécessaire, Je le suivrai, mas pas toujours La lecture du manuel est très utile pour une bonne compréhension de la matière Sauf indication contraire, les figures ‘images’ viennent du manuel 8 Manuels reliés dans la bibliothèque Chap 0 A. Silberschatz, P.B. Galvin, G. Gagne: Operating Systems Concepts with Java. QA 76 .73 J38 S55 2010 W. Stallings: Operating Systems – Internals and Design Principles. QA 76 .76 O63 S82 2012 A. Tanenbaum: Systèmes d’exploitation. QA 76 .76 O63 T25414 2008 9 Autres sources Chap 0 Le sujet de ce cours est un sujet classique en informatique donc beaucoup d’information peut être trouvée dans différents sites web 10 Travaux dirigés et Java Chap 0 Vendredis 13h TDs sur les concepts fondamentaux d’Unix-Linux TDs généraux en complément au concepts du cours TDs sur la programmation parallèle en Java Devoir de programmation final en Java Un langage qui facilite la programmation parallèle Est une norme (standard) publique, contrairement à des langages en concurrence (ex. C#) qui sont des langages d’une compagnie spécifique Java ne sera pas utilisé en classe: pseudocode sera utilisé au lieu Le test et l’examen contiendront des questions sur Unix et Java 11 Travaux dirigés et devoirs Les devoirs seront constitués de: 20%: un travail de programmation final: Parallélisme Synchronisation de processus 15%: Exercices écrits sur la théorie vue en classe (probablement 3 ensembles d’exercices) Il y aura aussi des travaux de programmation pour l’étude de Java aux sessions exercices Ces travaux ne seront pas notés mais des solutions seront données Ils seront une préparation au travail de programmation final Chap 0 12 Communication avec la classe Utilisation de Moodle Courriel personnel: [email protected] Pour rendez-vous, je suis souvent dans mon bureau (B-2010), sinon envoyez-moi des courriels pour fixer une date-heure Chap 0 13