Académique Documents
Professionnel Documents
Culture Documents
INF3723:
Systèmes d’exploitation
Luigi Logrippo
luigi@uqo.ca
http://w3.uqo.ca/luigi/
1
Ces notes de cours sont disponibles
Dans Moodle INF3723
http://w3.uqo.ca/luigi/INF3723/notes_de_co
urs_index.html
Chap 0 2
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é
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
Chap 0 3
Contenu du cours
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
Chap 0 4
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
Chap 0 5
Un cours très enchaîné …
Dans quelques autres 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 6
Manuel de base:
Je suis le manuel suivant:
Silberschatz, Galvin, Gagne.
Principes appliqués des systèmes d’exploitation, Vuibert
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,
La lecture du manuel est utile pour une bonne compréhension de
la matière – elle n’est pas essentielle
Sauf indication contraire, les figures ‘images’ viennent du manuel
Étant donné que ce manuel n’est plus à jour dans l’edition
française et étant donné que personne ne l’a acheté l’an passé … je
ne l’ai pas commandé pour la librairie mais vous en trouverez des
copies à la bibliothèque, ainsi que des éditions plus récentes en
anglais
Chap 0 7
Manuels reliés dans la bibliothèque
A. Silberschatz, P.B. Galvin, G. Gagne: Operating Systems
Concepts with Java. QA 76 .73 J38 S55 2010 (celle-ci est
l’original anglais du manuel)
A. Silberschatz, P.B.Galvin, G. Gagne: Operating Systems
Concepts. QA 76 .76 O63 S54 2012
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
Chap 0 8
Autres sources
Le sujet de ce cours est un sujet classique
en informatique donc beaucoup
d’information peut être trouvée dans
différents sites web
Dans plusieurs cours, j’ai des diapos dans
une section ‘matériaux supplémentaires’
Ces matériaux ne sont pas sujet d’examen
Il s’agit de sujets reliés qui pourraient vous
intéresser ou pourraient développer quelques
points
Chap 0 9
Travaux dirigés et Java
Vendredis 13h-15h à partir de la semaine prochaine
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 de
compagnies 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
Chap 0 10
Évaluation
Examen Intra (2h): 25% (le 23 octobre)
Examen Final (3h) 40% (le 11 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 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)
Utilisation de Moodle
Chap 0 13
Pourquoi étudier les SE?
Logiciel très important…
Tout programme roule sur un SE
Interface usager-ordinateur
Les SE utilisent beaucoup d’algorithmes et structures de
données intéressants
Les techniques utilisées dans les SE sont aussi utilisées
dans nombreuses autres applications informatiques
il faut les connaître
Une bonne compréhension des SE est aussi essentielle pour
la compréhension de la cyber sécurité et cybercriminalité
Beaucoup de failles de sécurité sont des failles dans les SE
Plusieurs méthodes d’investigation de la cybercriminalité
exigent la compréhension du fonctionnement du SE
Chap
Ch. 10 14