[PDF] Pollution : quel impact économique ? - Le Point
[PDF] POLE FORMATION DES INDUSTRIES TECHNOLOGIQUES (CFAI)
[PDF] sommaire - CNSS
[PDF] C045 - Convenio sobre el trabajo subterráneo (mujeres), 1935 (núm
[PDF] GRENOBLE Cité Jean Macé MEYLAN Maupertuis - Tag
[PDF] Circulaire n°5984 du 12/12/2016 Nouvelles fonctionnalités dans l
[PDF] Formulaire pour l 'employeur
[PDF] Circulaire n°5984 du 12/12/2016 Nouvelles fonctionnalités dans l
[PDF] demande en tant que travailleur a temps partiel avec maintien - CSC
[PDF] Grand Annecy
[PDF] Organiser la recherche d 'informations ? l 'ère du numérique - C2i
[PDF] Domaine D2 : Être responsable ? l 'ère du numérique
[PDF] Le C2i et son environnement de travail Sommaire Le C2i (le
[PDF] Domaine D5 - Fichier-PDFfr
[PDF] evaluation situation secondary cycle one -esl core program
Système d'Exploitation
et
Outils de programmation
2
Introduction
yLe système d'exploitation (SE) est un ensemble de programmes qui yRéalise l'interface entre le matériel de l'ordinateur et les utilisateurs yPrend en charge la gestion des ressources de la machine et le partage de celles-ci physiques: mémoire, unités E/S, UCT... Logiques = virtuelles: fichiers et bases de données partagés, canaux de communication logiques, virtuels... les ressources logiques sont bâties par le logiciel sur les ressources physiques 2 3
Pourquoi étudier les SE?
yLogiciel très important... ytout programme roule sur un SE yinterface usager-ordinateur yLes SE utilisent beaucoup d 'algorithmes et structures de données intéressants yLes techniques utilisées dans les SE sont aussi utilisées dans nombreuses autres applications informatiques il faut les connaître 4
Développement de la théorie des SE
yLa théorie des SE a été développée surtout dans les années 1960 (!!) yA cette époque, il y avait des machines très peu puissantes avec lesquelles on cherchait à faire des applications comparables à celles d'aujourd'hui (mémoire typique: 100-500K!) yCes machines devaient parfois desservir des dizaines d'usagers! yDont le besoin de développer des principes pour optimiser l'utilisation d 'un ordinateur. yPrincipes qui sont encore utilisés 5
Évolution historique des SE
yLe début: routines d`E/S, amorçage système ySystèmes par lots simples ySystèmes par lots multiprogrammés ySystèmes à partage de temps yOrdinateurs personnels ySE en réseau ySE répartis retrouvent dans les systèmes complexes. systèmes simples se retrouvent souvent dans les systèmes complexes. 6
Évolution des SE
7
Une synthèse historique
Ordinateurs Personnels
Mainframes et grands serveurs
Multics et beaucoup d'autres
(1960s) Unix (1970)
MS-DOS
(1981)
Windows
(1990) Linux (1991)
Windows NT
(1988)
Windows 2000
Windows XP
Solaris (1995)
Mac/OS
(1984) 8
Types de systèmes
yMono utilisateur, monotâche y(single user, single tasking) yMono utilisateur, multitâches y(single user, multitasking) yMulti utilisateurs, multitâches 9
Multi utilisateurs, multitâches
yL'utilisateur de la machine peut interagir avec l'exécution de son programme => yLe but principal poursuivi par les systèmes interactifs yOffrir pour chaque exécution le plus petit temps de réponse possible yTravail en temps partagé yExemple: système Unix ou Linux 10 " Network operating systems » ySEs en réseau fournissent: yPartage de fichiers (systèmes client- serveur) yPatrons de communication (protocoles) yAutonomie des ordinateurs 11
Systèmes temps réel
yLiés au contrôle de procédé yLes exécutions de programmes sont soumises à des contraintes temporelles yExemple: LynxOS, VxWORKS 12
Types de systèmes
ySystèmes embarqués ySystème temps réel dédié pour une application particulière Injection automatique pour une auto Programmation micro-onde ySystèmes distribués - répartis yil y a un SE qui fonctionne entre ordinateurs yl 'usager voit les ressources éloignées comme si elles étaient locales 13
Services et facilités
yLe SE réalise une couche logicielle placée entre la machine matérielle et les applications yLe SE typique fournis (+ ou -) yInterface usager-ordinateur yGestion des fichiers ySupport des entrées-sorties yExécution de programmes: chargement, exécution (load, run), gestion de la concurrence 14
Services et facilités
yDétection et traitement d 'erreurs yServices Réseau et communication yGestion de la mémoire yGestion de la protection ySupport pour l'administration du système 15
Services et facilités
ySupport des entrées-sorties yAccès aux périphériques, la liaison entre les appels de haut niveau des programmes utilisateurs et les opérations de bas niveau de l'unité d'échange responsable du périphérique (pilote d'entrées-sorties) yLogiciels de contrôleur de périphérique ( I/O device driver), certains sont en ROM 16
Services et facilités
yServices Réseau et communication (Network and Communications Support
Services)
yFonctions nécessaire à l'interconnexion de l'ordinateur dans un réseau (protocole
TCP-IP)
yProgrammes d'applications et extension (ex. E-mail, login, etc.) yPilotes pour modems, communication sans fils, etc. 17
Services et facilités
yGestion de la protection yMécanismes garantissant que les ressources de système ne peuvent être utilisées que par les programmes auxquels les droits nécessaires ont été accordés (protection de système et la machine des programmes utilisateurs) Protège SE des programmes d'autres utilisateurs Protège un utilisateur d'un autre utilisateur yEmpêche les entrées non-autorisées dans le système (service de login) 18
Services et facilités
ySupport pour l'administration du système yL'administrateur du système: yConfiguration du système yAjout ou enlèvement des utilisateurs/privilèges yS'occupe de la sécurité du système yGère le système de fichier yS'occupe des sauvegardes, installation, mise
à jour des logiciels et de SE
yOptimise le système 19 SE ySE s'interface avec les applications du niveau utilisateur par le biais de fonctions prédéfinies - routines systèmes yLes appels des routines systèmes peuvent se faire par biais yD'un appel système (API) yD'une commande du langage de commandes yL'exécution des routines systèmes s'effectue sous un mode privilégié - mode superviseur yUn programme utilisateur s'exécute par défaut selon un mode utilisateur 20 SE yMode utilisateur : le jeu d'instructions utilisables par le programme est réduit yMode superviseur: aucune restriction yPassage du mode utilisateur au mode superviseur constitue une commutation de contexte yTrois causes majeures provoquent le passage du mode utilisateur au mode superviseur yUtilisateur appelle une fonction système yL'exécution d'une opération illicite (trappe ou l'exception) yLa prise en compte d'une interruption par le matériel et SE 21
Chargement d'un SE
yLes programmes composant le SE sont conservés sur un support de masse yAu démarrage l'ordinateur exécute un code placé dans une zone de mémoire morte (ROM), programme d'amorçage ou boot- strap (test du matériel de la machine, chargement d'un programme d'amorce plus sophistiqué) yUne fois cette amorce placée en mémoire centrale, elle s'exécute et charge les programmes du SE. 22
Bootstrapping
22
Copyright 2010 John Wiley & Sons, Inc.
23
Le noyau (kernel) du SE
yLa partie résidente (toujours en RAM) du SE est appelée
Kernel = noyau
yLes autres parties sont amenées en RAM au besoin yContient les fonctionnalités critiques du SE: elles doivent toujours être prêtes à l 'utilisation ytraitement d 'interruptions ygestion de UCT ygestion mémoire ycommunication entre processus yetc. yÀ part ça, quoi exactement mettre dans le kernel est une question pour les concepteurs des SE yLa plupart des fonctionnalités discutées dans ce cours sont normalement dans le kernel 24
Interface usager-ordinateur
yTypes d'interfaces utilisateur yInterface de ligne de commande CLI - Command Line Interface Windows command prompt UNIX/Linux command prompt yInterface graphique GUI - Graphical User Interface Apple Macintosh, Windows, stations de travail Sun, les différentes versions de Linux 25
Langage de commandes
yLes ordinateurs modernes ont la possibilité de regrouper les commandes CLI en miniprogrammes yLangage de commandes (scripts) Les commandes sont analysées par l'outil interpréteur de commande qui appelle la routine système appropriée en assurant le passage des paramètres yChaque SE a son langage de commandes propre JCL (Job Control Language) de SE MVS Langage Shell de SE Unix 26
GUI Interface - Windows Vista
26
Copyright 2010 John Wiley & Sons, Inc.
27
GUI Interface - Linux KDE
16-27
Copyright 2010 John Wiley & Sons, Inc.
28
GUI Interface - MacIntosh OSX
16-28
Copyright 2010 John Wiley & Sons, Inc.
29
GUI vs. CLI
GUI yAvantages yFacile à apprendre et utiliser yDésavantages yPlus difficile à implémenter yPlus exigeant en terme de HW/SW yRequiert beaucoup de mémoire ySW est complexe et difficile
à écrire
CLI yAvantages yPlus flexible et puissantquotesdbs_dbs23.pdfusesText_29