Systèmes d’exploitation William Puech CUFR Nîmes Sommaire > > > > Chapitre I : Chapitre II : Chapitre III : Chapitre IV : William Puech Définition d ’un OS Historique des systèmes Windows Linux CUFR Nîmes Définition d ’un OS > > > > > > A. Rappels et Définitions d ’un OS B. Gestion du Hardware PC C. Moniteurs de périphériques. D. Les actions de base d ’un OS E. Multitâche F. Processus, synchronisation et communication William Puech CUFR Nîmes A. Rappels et Définitions d ’un OS ! Système d ’exploitation (OS) : > Gérer les périphériques de l ’ordinateur > Effectuer les opérations courantes sur les données > Etre évolutif > Etre « Didacticiel » > Avoir une couche graphique > ... William Puech CUFR Nîmes B. Gestion du Hardware PC ! Un OS doit savoir périphériques (Drivers) : Bus (AGP,PCI,ISA) gérer les Mémoires (SDRAM, DIMM) CPU (Intel, Socket, Slot, AMDC) Chipset (TX,LX, BX, EX,...) William Puech CUFR Nîmes C. Moniteurs de périphériques ! Interception de flux de caractères provenant du clavier pour atteindre le pg. actif : combinaison de zappage. > routine : moniteurs de périphériques ! Liaison dynamique : pdt l ’exécution plutôt qu ’au chargement. ! Anneaux de protection: > noyau du système : niveau haut (0) > pilotes de périphériques (2) > applications : niveau bas (3) William Puech CUFR Nîmes D. Les actions de base d ’un OS ! Gestion des ressources disponibles. ! Gestion des mémoires de masse : > support physique où sont stockées les informations : DD, CD-ROM, lecteur ZIP, ... > gestion des données sur DD : FAT (16 K), FAT 32, NTFS (NT) > Actions sur les fichiers et répertoires : création, suppression, déplacement, copier, renommer, droits. > Architecture du stockage : arborescence William Puech CUFR Nîmes D. Les actions de base d ’un OS ! Gestion de la mémoire (RAM) > Exploitation pour chaque processus de la RAM (16 Mo, 32, 64, 128, 256) > swapp automatique sur le DD ! Gestion des processus > partage du CPU avec le nbre de processus ! Gestion des fenêtres et icônes : agir sur un objet permet d ’effectuer une action William Puech CUFR Nîmes D. Les actions de base d ’un OS ! Administration des utilisateurs : > Sécurité du système et des données > Compte et mot de passe > Enregistrement des actions des utilisateurs (temps du login) > Droits et utilisateurs : groupes > Administrateur ou root William Puech CUFR Nîmes E. Multitâche ! Un pg. fonctionne de manière interactive avec l ’utilisateur pdt que les autres pgs. fonctionnent invisiblement en arrière plan. ! Le répartiteur détermine les tâches devant recevoir du temps UC. > Trois priorités des tâches > fonction de la fréquence William Puech CUFR Nîmes F. Processus, synchronisation et communication ! Pour le programmeur : un processus est identique à un programme ? > Un processus peut en déclencher un autre (père et fils) : en mémoire et exécution au même moment. > Un processus est un pg. en cours d ’exécution > processus en arrière plan. William Puech CUFR Nîmes F. Processus, synchronisation et communication ! Synchronisation interprocessus : > Deux tâches peuvent s ’interférer : stockage de données et lecture de ces données > synchronisation = sémaphore : suspension d ’une tâche. > sémaphores RAM et sémaphores système. William Puech CUFR Nîmes F. Processus, synchronisation et communication ! Communication interprocessus : > Unités d ’exécution = fonctions C > Utilisation de variables globales > Mémoire partagée : segment de mémoire utilisé entre plusieurs processus > tuyaux = fichiers restant en mémoire (lecture et écriture) > Pb. de files d ’attente : plusieurs messages, longs, diverses manières. William Puech CUFR Nîmes Sommaire > > > > Chapitre I : Chapitre II : Chapitre III : Chapitre IV : William Puech Définition d ’un OS Historique des systèmes Windows Lieux CUFR Nîmes Historique des OS > > > > > > A. Utilisateur et programmeur B. Les systèmes sans système C. Multi-programmation D. Systèmes en temps partagé E. Ordinateur individuel monotâche F. Ordinateur personnel multitâche mono-utilisateur William Puech CUFR Nîmes A. Utilisateur et programmeur ! Deux points de vue > L ’utilisateur : gestion des fichiers (copier, effacer, afficher) et des programmes (exécuter) > Le programmeur : ensemble de fonctions utiles appelées par un programme (affichage à l ’écran, lecture dans un fichier, …) William Puech CUFR Nîmes B. Les systèmes sans système ! Sur les premiers ordinateurs : > Pas de système d ’exploitation !! > Tubes sous-vide, non fiable occupant des grandes salles, > Pg. en langage machine sur la machine nue, sans logiciel système intermédiaire, > Pg. sur carte perforée, chargement du pg., exécution et résultat sur papier William Puech CUFR Nîmes B. Les systèmes sans système ! Les hommes servaient de systèmes d ’exploitation : > Le programmeur suivant charge son pg. > Contrôle de tous les détails de l ’exploitation de la machine > Ecriture de toutes les entrées/sorties dans les pg. > Pas de gestion de mémoire William Puech CUFR Nîmes B. Les systèmes sans système ! Début 1950 : utilisation des transistors ! Coût élevé et utilisation difficile : > Un utilisateur, un pg., chargement, attente, impression, pg. suivant, … > Temps entrée/sortie très long sans utiliser toutes les ressources de l ’UC. > Idée : traitement par lots (bande magnétique) William Puech CUFR Nîmes C. Multi-programmation > Chargement en mémoire de plus d ’un pg. en même temps. > Partition de la mémoire PG. 1 UC E/S UC E/S UC PG. 2 E/S UC E/S UC E/S William Puech CUFR Nîmes C. Multi-programmation ! Problème : temps entrée/sortie différent du temps traitement. ! Système un peu plus complexe : > Un pg. ne doit pas interférer avec un autre. > L ’emplacement de chaque pg. est connu. ! Problème : si pg. > partition ? > Découpe en sous-programme > taille adéquate de chaque section William Puech CUFR Nîmes C. Multi-programmation ! Solution : utilisation d ’une mémoire virtuelle. ! Solution : ne pas réécrire ses propres routines d ’entrée/sortie. > Concept de fonctions de système > Fonctions d ’appels système : base des systèmes d ’exploitation . William Puech CUFR Nîmes D. Systèmes en temps partagé ! Le temps de boucler la boucle : > Partage du temps sur des terminaux reliés à l ’UC > Système interactif > Unix : premier système en temps partagé ! Priorités du système différentes > Temps de réponse minimal > Le Répartiteur bascule d ’un pg. à l ’autre sans demander la permission : système préemptif William Puech CUFR Nîmes D. Systèmes en temps partagé ! Deux pg. ne fonctionnent pas simultanément : > l ’UC alloue une tranche de temps à la fois. > Illusion d ’une exécution en parallèle. ! Gestion des ressources : > mémoires, imprimantes, ... > Allocation mémoire. > Division des pg. en segments. William Puech CUFR Nîmes D. Systèmes en temps partagé ! Les segments : > > > > Similaires aux pages Avec taille variable Partie logique du pg. : code, données, pile. Division des pg. en segments. ! Apparition d ’une sécurité : > altérer un pg., des données ou le système > Mémoire : durée de connexion des utilisateurs William Puech CUFR Nîmes E. Ordinateur individuel monotâche ! Début 1970 : le prix de revient des puces et la taille des transistors diminuent : > Ordinateur personnel : un pg. = un utilisateur (IMSAI 8080, TRS-80, Apple II, IBM PC) ! Systèmes simples: > gestion des fichiers, langage haut niveau (BASIC), mise à disposition d ’utilitaires, … > Systèmes basés sur le processeur Intel : le CP/M, puis le MS-DOS. William Puech CUFR Nîmes F. Ordinateur personnel multitâche mono-utilisateur ! Multitâche = multi-programmation > stockés en mémoire et exécutés en même temps. 0 Notion de tâche différente de pg. (processus, unités d ’exécution) > Pour dépasser les limites de MS-DOS : apparition d ’OS/2, Unix et Xenix (multitâches et multi-utilisateurs) > Difficulté de passer de MS-DOS vers Unix William Puech CUFR Nîmes F. Ordinateur personnel multitâche mono-utilisateur ! Apparition d ’OS avec des caractéristiques multitâches : > DESQview de Quarter-Deck Office Systems > PC-MOS de The Software Link > Windows de Microsoft William Puech CUFR Nîmes Sommaire > > > > Chapitre I : Chapitre II : Chapitre III : Chapitre IV : William Puech Définition d ’un OS Historique des systèmes Windows Linux CUFR Nîmes Chapitre III :Windows ! Windows 95/98/NT 4.0 > 90% du parc informatique sont des PC > 90% des PC tournent sous windows : windows devient incontournable. > Windows 95/98 > > > > OS « grand public » Pas d ’administration d ’utilisateurs « Plug & Play » « Mac-OS + » William Puech CUFR Nîmes Chapitre III :Windows ! Windows 95/98 > Demarrage sous W 95/98 (pilotes, registre, couche graphique) > API (Application Protocole Interface) > Fenêtres et icônes : objets > Poste de travail et panneau de configuration > Unités logiques, Imprimante, Réseau, Systèmes, mémoire, pro-logiciels William Puech CUFR Nîmes Chapitre III :Windows ! Windows 95/98 > Mémoires de masse > DD, D7, DAT > Arborescence : répertoire = dossier jaune, fichier > Action : double-clic, sélection, > Raccourcis > Menus des fenêtres : Fichier (nouveau, ouvrir, enregistrer), Edition (gestion des objets), Aide William Puech CUFR Nîmes Chapitre III :Windows ! Windows 95/98 > > > > Explorateur Barre de menus et d ’outils Recherche de fichier ou de document Notion d ’extension et d ’association : > avec 3 lettres (association avec un logiciel) > .exe, .txt, .bmp > Panneau de configuration : système, Imprimante, Réseaux (TCP/IP) William Puech CUFR Nîmes Chapitre III :Windows ! Windows NT 4.0 Gestion des utilisateurs Gestion des processus Gestion des applis. 16 bits Sécurisation des données William Puech Win 95/98 Win NT 4.0 Non Oui Oui Non Oui Oui Non Oui CUFR Nîmes Chapitre III :Windows ! Windows NT 4.0 > Gestion des utilisateurs > Groupe : ensemble de droit > Utilisateurs : un util. Appartient au moins à un groupe > Administrateur : tous les droits > Sécurisation des données > Uniquement sur partition NTFS > Limite l ’accès aux données aux utilisateurs > Autorisation de droits à des groupes William Puech CUFR Nîmes Sommaire > > > > Chapitre I : Chapitre II : Chapitre III : Chapitre IV : William Puech Définition d ’un OS Historique des systèmes Windows Linux CUFR Nîmes Etat actuel de Linux • Linux, un système pour l'espèce humaine. • Un système libre gratuit : modification, personnalisation, utilisation, amélioration, … • Création en 1991 par Linus Torvalds : système aux normes POSIX (Portable Operating System Interface uniX). • Multiples distributions et environnements. William Puech CUFR Nîmes Etat actuel de Linux • Les grandes Linux. entreprises adoptent • Environ 10 millions d'ordinateurs avec une augmentation de 20 % par an. • Pour les serveurs Internet : croissance de 150 % en 1 an. • Linux né d'Unix ? William Puech CUFR Nîmes Unix • Développé en 1969 par Ken Thompson et Dennis Ritchie. • Un système interactif pour petites machines comparable aux grands systèmes. • En 1973, Unix est réécrit en langage C par Brian Kernighan et Dennis Ritchie. William Puech CUFR Nîmes Caractéristiques principales ! Système d'exploitation > multi-tâches en temps partagés > multi-utilisateurs > Interactif et intégré aux réseaux > Langages de commande > Bourne Shell > C-Shell > Korn Shell > Plusieurs centaines d'outils William Puech CUFR Nîmes Des centaines d'outils ! Gestionnaires de fichiers, Courriers, News, WWW, Support Imprimante, Système Xwindow, Traitement d'images, ... ! Jeux, Multimédia, réseau, Serveur, Editeur de texte, d'images, de courbes, Bureautique, ... ! Développement C, C++, Java, Pascal, X, librairie de développement, ... William Puech CUFR Nîmes Le système de fichiers ! "Tout est fichier" ! Quatre types de fichiers : > ordinaire : données, programme, exécutable. > répertoire : contient d'autres fichiers ou répertoires. > lien symbolique : pointe vers un autre fichier. > spécial : permet l'accès à un périphérique. William Puech CUFR Nîmes Le système de fichiers ! Un fichier est représenté par une structure (I-node) contenant : taille, droits d'accès, dates de création et de modification, … ! Un seul type de fichier ordinaire : flot de caractères de 8 bits. ! Partage des fichiers en réseau : NFS William Puech CUFR Nîmes Fichiers et répertoire ! Structure arborescente. ! Répertoire courant. ! Chemin absolu : depuis le répertoire racine (/). ! Le caractère / sépare les répertoires > Exemple : /home/martin/tpc/tp1/tp1.c > Chemin relatif. William Puech CUFR Nîmes Fichiers et répertoire 0 Caractéristiques des noms de fichiers : lettres majuscules et minuscules ! chiffres, pas d'espace, une extension, longueur maximale de 1024 caractères. William Puech CUFR Nîmes Arborescence / (commandes système) (racine) (fichiers temporaires) (utilitaires) (périphériques) bin dev etc dubois home martin lib ... tmp bin usr man lib (utilisateurs) William Puech CUFR Nîmes Les utilisateurs Chaque utilisateur du système est identifié par un nom de login auquel est associé : ! un mot de passe, passwd, ! un identificateur numérique, uid, ! un groupe, gid, ! un répertoire de travail, /home/groupe/nom, ! un langage de commande, stockés dans la base de données passwd. William Puech CUFR Nîmes Les utilisateurs ! Les groupes, gid, permettent aux utilisateurs de partager l'accès à certains fichiers. ! Le répertoire courant : "." ! Le répertoire parent : ".." ! Le super utilisateur root gère tout le système. William Puech CUFR Nîmes Lexique (1) ! Système d'exploitation : programme de base, qui permet de gérer l'ensemble des périphériques, et servir de support à tous les logiciels qui viendront s'y greffer. (Linux, Windows, DOS, OS/2, Unix, MacOs). ! Partitionner : découper un disque en 1 ou plusieurs morceaux, afin que celui-ci puisse être reconnu par le système d'exploitation utilisé. ! Formater : formatage après création des partitions. Permet au système de lire et écrire des données sur le disque dur. William Puech CUFR Nîmes Lexique (2) ! Point de montage : répertoire où l'on monte un disque. ! NFS : Network FileSystem : système de fichiers réseau. C'est un système de fichier (disque dur ou partition) d'une machine distante qui a été monté dans un répertoire à travers le réseau (= CDROM ou disque local). ! IDE : interface la plus utilisée pour les disques durs et CDROM. Gestion de 4 périphériques (2 sur 2 ports). Norme actuelle : Ultra DMA avec un taux de transfert de 33 Mo/s. William Puech CUFR Nîmes Lexique (3) ! SCSI : interface avec un taux de transfert de 80 Mo/s (Ultra Wide SCSI 2). Contrôleur SCSI gérant jusqu'à 15 périphériques. ! Distribution : un système Linux personnalisant l'installation et la configuration. Gratuit en ftp sur internet ou achat des supports (Red Hat, SuSE, Debian,…) William Puech CUFR Nîmes