Cours Systèmes d'exploitation, Dalila Souilem, ISITC, département informatique.



Documents pareils
CH.3 SYSTÈMES D'EXPLOITATION

HISTORIQUE DES SYSTEMES D'EXPLOITATION (S.E.)

Les générations d'ordinateurs de 1945 à nos jours

Systèmes et traitement parallèles

MODULE I1. Plan. Introduction. Introduction. Historique. Historique avant R&T 1ère année. Sylvain MERCHEZ

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Windows 2000: W2K: Architecture. Introduction. W2K: amélioration du noyau. Gamme windows W2K pro: configuration.

Vous avez des problèmes d'impression réseau? UniPrint. est la solution qu'il vous faut. Aperçu du produit

Cours Informatique 1. Monsieur SADOUNI Salheddine

Systèmes en réseau : Linux 1ère partie : Introduction

Informatique industrielle A Systèmes temps-réel J.F.Peyre. Partie I : Introduction

Cours 3 : L'ordinateur

Administration de systèmes

la virtualisation pour quoi faire?

Informatique UE 102. Jean-Yves Antoine. Architecture des ordinateurs et Algorithmique de base. UFR Sciences et Techniques Licence S&T 1ère année

laissez le service en démarrage automatique. Carte de performance WMI Manuel Désactivé Vous pouvez désactiver ce service.

//////////////////////////////////////////////////////////////////// Administration systèmes et réseaux

REALISATION d'un. ORDONNANCEUR à ECHEANCES

Service Informatique et Télématique (SITEL), Emile-Argand 11, 2009 Neuchâtel, Tél ,

B2i. LE B2i Brevet Informatique et Internet. Niveau : tous. 1 S'approprier un environnement informatique de travail. b2ico1.odt.

Le contrat SID-Hébergement

LE MICRO ORDINATEUR. Introduction Architecture Les supports amovibles Les composants Le système d exploitation Les portables

NOTE DE SYNTHESE Virtualisation de postes utilisateurs

Exécution des instructions machine

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES

VMWare Infrastructure 3

Fiche Technique. Cisco Security Agent

Microsoft Windows NT Server

Les clusters Linux. 4 août 2004 Benoît des Ligneris, Ph. D. benoit.des.ligneris@revolutionlinux.com. white-paper-cluster_fr.sxw, Version 74 Page 1

Matériel & Logiciels (Hardware & Software)

Module 0 : Présentation de Windows 2000

Bénéficiez d'un large choix d'applications novatrices et éprouvées basées sur les systèmes d'exploitation i5/os, Linux, AIX 5L et Microsoft Windows.

Éléments d'architecture des ordinateurs

Prestataire Informatique

Introduction aux Systèmes et aux Réseaux, Master 2 CCI

Structure et fonctionnement d'un ordinateur : hardware

GESTION DE LA MEMOIRE

et dépannage de PC Configuration Sophie Lange Guide de formation avec exercices pratiques Préparation à la certification A+

Microsoft Dynamics AX. Solutions flexibles avec la technologie Microsoft Dynamics AX Application Object Server

Windows XP niveau 2. D. Hourquin, Médiapôle St Ouen l'aumône

Spécifications Techniques Générales. Techno Pole Internet. Lycée Djignabo / Ziguinchor

Catalogue & Programme des formations 2015

Modules du DUT Informatique proposés pour des DCCE en 2014/2015

Projet : PcAnywhere et Le contrôle à distance.

Systèmes d'exploitation des ordinateurs

TEKLYNX SENTINEL S/5

Adonya Sarl Organisme de Formation Professionnelle 75 Avenue Niel PARIS, France

La continuité de service

Démarches d urbanisation : réorganiser le Système d Information en structurant ses fonctions dans des blocs fonctionnels communicants.

Data Station Plus. La solution complète de gestion de données. > Convertisseur de multiples

IV- Comment fonctionne un ordinateur?

Guide utilisation SFR Sync. SFR Business Team - Présentation

Logiciel de Télégestion

Initiation au HPC - Généralités

La surveillance réseau des Clouds privés

Architecture matérielle des systèmes informatiques

Prise en main. Norton Ghost Pour trouver des informations supplémentaires. A propos de Norton Ghost

NOTIONS DE RESEAUX INFORMATIQUES

Manuel du logiciel PrestaTest.

Table des matières Chapitre 1 Virtualisation, enjeux et concepts Chapitre 2 Ligne de produit XEN

Urbanisation des Systèmes d Information Architecture d Entreprise. 04 Architecture du SI : identifier et décrire les services, structurer le SI

Qu est-ce que le «cloud computing»?

LES OUTILS DE LA MOBILITE

DÉVELOPPEMENT INFONUAGIQUE - meilleures pratiques

Module : Informatique Générale 1. Les commandes MS-DOS

AFPA Lomme 35 rue de la Mitterie Lille

TECHNOLOGIE SOFTWARE DU FUTUR. Logiciel de gestion d entreprise pour le Web

Infrastructure RDS 2012

Microsoft Hosted Exchange 2010 DOCUMENT D EXPLOITATION

netzevent IT-MARKT REPORT 2013 Infrastructure ICT en Suisse: Le point de vue des entreprises utilisatrices

Cyber-base du Pays Martégal. Atelier «Découverte de l ordinateur»

Qu'est-ce que c'est Windows NT?

Démontage d'un ordinateur

Conception des systèmes répartis

VMWARE VSPHERE ESXI INSTALLATION

NOUVELLES FONCTIONNALITÉS DE MYQ 4.4

Parallels Transporter Lisez-moi

Manuel d installation De la Cryptolib CPS Dans un environnement client/serveur TSE/CITRIX

PRÉSENTATION DES DIFFÉRENTS RÉSEAUX LOCAUX DU MARCHÉ

Support de cours système d exploitation

Licences Windows Server 2012 R2 dans le cadre de la virtualisation

Serveur d application WebDev

LoReNa : pour dynamiser votre Relation Client (CRM)

Services OSI. if G.Beuchot. Services Application Services Présentation - Session Services Transport - Réseaux - Liaison de Données - Physique

Progiciels pour TPE - PME - PMI

ELO Office / Pro Les avantages : Archivage et gestion documentaire

ORDONNANCEMENT CONJOINT DE TÂCHES ET DE MESSAGES DANS LES RÉSEAUX TEMPS RÉELS 4. QUELQUES EXEMPLES DU DYNAMISME ACTUEL DU TEMPS RÉEL

Quel PC pour quels usages? 1) PC de Bureau ou Portable? Les différents types de portables. - Les ultra-portables. - Les portables généralistes

Guide de configuration de SQL Server pour BusinessObjects Planning

Procédure d installation pour WinEUR PROCÉDURE D INSTALLATION POUR WINEUR. Copyright GIT SA 2015 Page 1/16

Cloud Computing : Généralités & Concepts de base

Qu'est ce que le Cloud?

Chapitre 01 Généralités

PageScope Suite L accélérateur de workflow * L essentiel de l image

Bluetooth pour Windows

ALCATEL EYE-BOX LA RÉPONSE AUX BESOINS ESSENTIELS DE COMMUNICATION DES TPE/PME

Conditions Générales Service d Accompagnement personnalisé

Éléments de programmation et introduction à Java

Transcription:

Plan du cours I Présentation générale des systèmes d'exploitation II Généralités sur UNIX / historique III Les bases du système 1. Système de fichiers (SGF) et commandes associées 2. Processus et commandes associées 3. Redirections d'entrées/sorties 4. Premier niveau de communication entre processus IV Le système de fichiers, représentation interne VII Les processus : concepts avancés 1

ChapitreI Présentation générale des systèmes d'exploitation A. Introduction B. Fonctions d un système d exploitation 1. Machine étendue/virtuelle 2. Gestionnaire de ressources C. Historique des Systèmes d'exploitation 1. 1ère génération (1945 1955) 2. 2ème génération (1955 1965) 3. 3ème génération (1965 1980) 4. 4ème génération (1980 1990) 5. 5ème génération (1990????) D. Les différentes classes de Systèmes d'exploitation 1. Selon les services rendus 2. Selon leur architecture 3. Selon leur capacité à évoluer 4. Selon l'architecture matérielle qui les supporte 2

A. Introduction - Deux catégories de logiciels : 1. Les programmes systèmes pour le fonctionnement des ordinateurs, 2. les programmes d'application qui résolvent les problèmes des utilisateurs. Le programme «système d'exploitation» est le programme fondamental des programmes systèmes. Il contrôle les ressources de l'ordinateur et fournit la base sur laquelle seront construits les programmes d'application. - Deux modes de fonctionnement : 1. Le mode noyau ou superviseur et 2. Le mode utilisateur (compilateur, éditeur, programmes utilisateurs...). - Architecture d un ordinateur : Un ordinateur contient : 1. Un ou plusieurs processeurs, 2. Une mémoire principale, 3. Des horloges, 4. Des terminaux, 5. Des disques, 6. Des interfaces de connexion à des réseaux et 7. Des périphériques d'entrées/sorties. La complexité évidente du matériel implique la réalisation d'une machine virtuelle qui gère le matériel : c'est le système d'exploitation. 3

Dispositifs physique : Ils se composent de circuits intégrés, de fils électriques, de périphériques physiques... Microprogramme : C'est un logiciel de contrôle des périphériques (interprète). Langage machine :C'est un ensemble (entre 50 et 300) d'instructions élémentaires (ADD, MOVE, JUMP) pour effectuer le déplacement des données, des calculs, ou la comparaison de valeurs. Système d'exploitation est un ensemble d'instructions plus simples, comme LIRE UN BLOC DU FICHIER. B. Fonctions d un système d exploitation 1. Machine étendue ou encore machine virtuelle : Son rôle est de masquer des éléments fastidieux liés au matériel, comme les interruptions, les horloges, la gestion de la mémoire, la gestion des périphériques (déplacement du bras du lecteur de disquette)... 2. Gestionnaire de ressources : Un ordinateur se compose de ressources (périphériques, mémoires, terminaux, disques...). Le système d'exploitation permet l'ordonnancement et le contrôle de l'allocation des processeurs, des mémoires et des périphériques d'e/s entre les différents programmes qui y font appel. Par exemple 3 programmes essaient d'imprimer simultanément leurs résultats sur une même imprimante cela implique recours à un fichier tampon sur disque. Autre exemple, l'accès concurrent à une donnée ; lecture et écriture concurrentes (par deux processus) sur un même compteur. Ce rôle de gestionnaire de ressources est crucial pour les systèmes d'exploitation manipulant plusieurs tâches en même temps (multitâches). 4

Un système d exploitation peut avoir plusieurs fonctionnalités de gestion : - Du processeur : allocation du processeur aux différents programmes. - Des objets externes : principalement les fichiers. - Des entrées sorties: accès aux périphériques, via les pilotes. - De la mémoire : segmentation et pagination. - De la concurrence : synchronisation pour l'accès à des ressources partagées. - De la protection : respect des droits d'accès aux ressources. - Des accès au réseau : échange de données entre des machines distantes. C. Historique des Systèmes d exploitation Tout système d'exploitation dépend étroitement de l'architecture de l'ordinateur sur lequel il fonctionne La 1ère génération (1945 1955):les tubes à vide et les cartes enfichables. Dans cette génération on peut dire qu il n'existait pas de système d'exploitation. Les utilisateurs travaillaient chacun leur tour sur l'ordinateur qui remplissait une salle entière. Ils étaient d'une très grande lenteur et très grande fragilité. La 2ème génération (1955 1965): les transistors et le traitement par lots. Le passage aux transistors rendait les ordinateurs plus fiables. Ils pouvaient être vendus à des utilisateurs (grandes compagnies, université ou administrations). Mais devant les coûts d'équipement élevés on réduisit les temps grâce au traitement par lots. Les utilisations principales étaient le calcul scientifique et l'ingénierie (équations différentielles). Durant cette génération on constate l apparition - Des langages FORTRAN et Assembleur. - Des systèmes d'exploitation (SE) : FMS (Fortran Monitor System) et IBSYS (IBM 7094). La 3ème génération (1965 1980): les circuits intégrés et la multiprogrammation. Dans cette génération on constate - Amélioration des coûts et des performances (circuits intégrés). - Une famille d'ordinateurs compatibles entre eux. - Une seule architecture et un même jeu d'instructions. - Des ordinateurs uniques pour les calculs scientifiques et commerciaux. - Apparition du spoule (spool, Simultaneous Peripheral Operation On Line) pour le transfert des travaux des cartes vers le disque. - Apparition de la multiprogrammation (partitionnement de la mémoire pour des tâches différentes). - Mais, un système d'exploitation énorme et très complexe pour satisfaire tous les besoins (plusieurs millions de lignes d'assembleur). - Apparition du partage de temps, une variante de la multiprogrammation (chaque utilisateur possède un terminal en ligne) ; naissance du système MULTICS (MULTiplexed Information and Computing Service) pour ordinateur central. - Naissance de la première version UNIX en langage C ; ce système d'exploitation a été le plus porté sur toutes sortes de machine. 5

La 4ème génération (1980 1990): les ordinateurs personnels. Ils sont dus au développement des circuits LSI (Large Scale Integration) contenant des centaines de transistors au cm2. Ils ont la même architecture que les mini-ordinateurs mais leur prix est beaucoup moins élevé. Il existe deux systèmes d'exploitation principaux : MSDOS (Microsoft Inc.) et UNIX. MSDOS intègre petit à petit des concepts riches d'unix et de MULTICS. Dans le milieu des années 80, on voit l'apparition de réseaux d'ordinateurs individuels qui fonctionnent sous des systèmes d'exploitation en réseau ou des systèmes d'exploitation distribués. La 5ème génération (1990????): les ordinateurs personnels portables et de poche. - Apparition des PIC (Personal Intelligent Communicator de chez Sony) et des PDA (Personal Digital Assistant, comme le Newton de chez Apple), grâce à l'intégration des composants et l'arrivée des systèmes d'exploitation de type «micronoyau».ils sont utiles pour les «nomades» et les systèmes de gestion des informations (recherche, navigation, communication). - Ils utilisent la reconnaissance de caractère (OCR) et les modes de communication synchrone et asynchrone (mode messagerie). - Très bon marché, ils sont capables de se connecter à des ordinateurs distants et performants. - Les systèmes d'exploitation de type «micronoyau» Sont modulaires (un module par fonction) ; ils peuvent être réalisés avec plus ou moins de modules et donc adaptables à des très petites machines (PDA et PIC). D. Les différentes classes de systèmes d'exploitation 1) Selon les services rendus : a- mono/multi tâches: Multitâches est la capacité du système à pouvoir exécuter plusieurs processus simultanément ; par exemple effectuer une compilation et consulter le fichier source du programme correspondant. C'est le cas d'unix, d'os/2 d'ibm et de Windows 95. b- mono/multiutilisateurs Multiutilisateurs c est la capacité à pouvoir gérer un panel d'utilisateurs utilisant simultanément les mêmes ressources matérielles. C'est le cas d'unix, de MVS, de Gecos... 2) Selon leur architecture a- Systèmes centralisés : L'ensemble du système est entièrement présent sur la machine considérée. Les machines éventuellement reliées sont vues comme des entités étrangères disposant elles aussi d'un système centralisé. Le système ne gère que les ressources de la machine sur laquelle il est présent. C'est le cas d'unix, même si les applications réseaux (X11, FTP, Mail...) se sont développées. 6

b- Systèmes répartis (distributed systems) : Les différentes abstractions du système sont réparties sur un ensemble (domaine) de machines (site). Le système d'exploitation réparti apparaît aux yeux de ses utilisateurs comme une machine virtuelle monoprocesseur même lorsque cela n'est pas le cas. Avec un système réparti, l'utilisateur n'a pas à se soucier de la localisation des ressources. Quand il lance un programme, il n'a pas à connaître le nom de la machine qui l'exécutera. - Ils exploitent au mieux les capacités de parallélisme d'un domaine. - Ils offrent des solutions aux problèmes de la résistance aux pannes. 3) Selon leur capacité à évoluer a- Systèmes fermés (ou propriétaires) : Extensibilité réduite : Quand on veut rajouter des fonctionnalités à un système fermé, il faut remettre en cause sa conception et refaire une archive (système complet). C'est le cas d'unix, MSDOS Il n'y a aucun ou peu d'échange possible avec d'autres systèmes de type différent, voir même avec des types identiques. C'est le cas entre UNIX BSD et SV. b- Systèmes ouverts : Extensibilité accrue : Il est possible de rajouter des fonctionnalités et des abstractions sans avoir à repenser le système et même sans avoir à l'arrêter sur une machine. Cela implique souvent une conception modulaire basée sur le modèle «client/serveur». Cela implique aussi une communication entre systèmes, nécessitant des modules spécialisés. 4) Selon l'architecture matérielle qui les supporte a- Architecture monoprocesseur (temps partagé ou multiprogrammation) Ressource processeur unique : Il a fallu développer un mécanisme de gestion des processus pour offrir un (pseudo) parallélisme à l'utilisateur : c'est la multiprogrammation; il s'agit en fait d'une commutation rapide entre les différents processus pour donner l'illusion d'un parallélisme. b- Architectures multiprocesseurs (parallélisme) :On trouve une grande variété d'architectures multiprocesseurs : - SIMD (Single Instruction Multiple Data) : Tous les processeurs exécutent les mêmes instructions mais sur des données différentes. - MIMD (Multiple Instructions Multiple Data) : Chaque processeur et complètement indépendant des autres et exécute des instructions sur des données différentes. - Pipeline : Les différentes unités d'exécution sont mises en chaîne et font chacune partie du traitement à effectuer. c- Architecture faiblement ou fortement couplée. - Architecture fortement couplée : Ce sont principalement des architectures à mémoire commune. - Architecture faiblement couplée : Ce sont des architectures où chaque processeur possède sa propre mémoire locale ; c'est le cas d'un réseau de stations. 7

- Architecture mixte : Ce sont des architectures à différents niveaux de mémoire (commune et privée). Remarque : Il n'y a pas de système universel pour cette multitude d'architectures. Les constructeurs de supercalculateurs ont toujours développés leurs propres systèmes. Aujourd'hui, compte tenu de la complexité croissante des systèmes d'exploitation et du coût inhérent, la tendance est à l'harmonisation notamment via le développement de systèmes polyvalents tels que les systèmes répartis. 5) Un cas particulier, les systèmes temps réel : Ce sont des systèmes pour lesquels l'exécution des programmes est soumise à des contraintes temporelles. Les résultats de l'exécution d'un programme n'est plus valide au delà d'un certain temps connu et déterminé à l'avance. Généralement, on trouve des systèmes «temps réel» dans les systèmes embarqués (satellites, sondes, avions, trains, téléphones portables,...). On distingue deux types de contraintes temporelles : les contraintes strictes et les contraintes relatives. Pour garantir ces contraintes, le système possède des mécanismes spécifiques dont le but est de réduire l'indéterminisme des durées d'exécution des programmes. C'est le cas de LinuxRT. 8