Introduction. Didier Verna



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

TO4T Technologie des ordinateurs. Séance 1 Introduction aux technologies des ordinateurs

CH.3 SYSTÈMES D'EXPLOITATION

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

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

Linux 1: Présentation

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

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

Histoire de l Informatique

Éléments de programmation et introduction à Java

Évaluation et implémentation des langages

Concept de machine virtuelle

Machines virtuelles Cours 1 : Introduction

I.1- DÉFINITIONS ET NOTIONS DE BASE

Programmation C. Apprendre à développer des programmes simples dans le langage C

CQP 112 Introduc/on à la programma/on. Thème 2 : Architecture d un système informa/que. Département d informa/que

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

Cours 3 : L'ordinateur

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Introduction à l Informatique licence 1 ère année Notes de Cours

1 L évolution de l informatique

VMWare Infrastructure 3

Chapitre 2 : Abstraction et Virtualisation

Architecture matérielle des systèmes informatiques

Virtualisation CITRIX, MICROSOFT, VMWARE OLIVIER D.

Tivoli Endpoint Manager Introduction IBM Corporation

Module : Virtualisation à l aide du rôle Hyper-V

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

LA VIRTUALISATION. Etude de la virtualisation, ses concepts et ses apports dans les infrastructures informatiques. 18/01/2010.

Environnement Informatique EMSE Linux

Présentation d HyperV

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

Cours 1 : La compilation

Systèmes et traitement parallèles

IV- Comment fonctionne un ordinateur?

Systèmes d'exploitation des ordinateurs

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

L importance de la «virtualisation de l espace de travail utilisateur» dans la virtualisation des postes de travail Whitepaper

Maîtrisez l'administration du système [2ième édition]

Découverte des Logiciels Libres. Gilles Dequen

Point sur la virtualisation

Leçon 1 : Les principaux composants d un ordinateur

Éléments d'architecture des ordinateurs

L I V R E B L A N C P r o t ég e r l e s a p p l i c a t i o n s m ét i e r s c r i t i q u e s M a i n f r a m e, un b e s o i n c r u c i a l

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB)

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

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

CESI Bases de données

Retrouver de vieux programmes et jouer sur VirtualBox

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

Linux embarqué: une alternative à Windows CE?

M1105 : Bases des systèmes d exploitation

La gestion du poste de travail en 2011 : Panorama des technologies

Architecture des ordinateurs Introduction à l informatique

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès haouaticpge@gmail.com

VMware ESX/ESXi. 1. Les composants d ESX. VMware ESX4 est le cœur de l infrastructure vsphere 4.

Introduction aux Bases de Données Relationnelles Conclusion - 1

en version SAN ou NAS

Gregory Renard CTO Wygwam - Research and Innovation Manager Usilink Microsoft Regional Director - Most Valuable Professional

Windows Server Chapitre 1: Découvrir Windows Server 2008

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

Matériel & Logiciels (Hardware & Software)

Fiche Technique. Cisco Security Agent

Un ordinateur, c est quoi?

CA ARCserve r16 devance Veeam Backup and Replication 6.5 dans le domaine de la protection virtuelle

Virtualisation des Serveurs et du Poste de Travail

«Le malware en 2005 Unix, Linux et autres plates-formes»

Annexe : La Programmation Informatique

Cours Informatique 1. Monsieur SADOUNI Salheddine

VMware vsphere 5 Préparation à la certification VMware Certified Professional 5 Data Center Virtualization (VCP5-DCV) - Examen VCP510

Introduction aux systèmes temps réel. Iulian Ober IRIT

vbladecenter S! tout-en-un en version SAN ou NAS

Java c est quoi? Java. Java. Java : Principe de fonctionnement 31/01/ Vue générale 2 - Mon premier programme 3 - Types de Programme Java

Introduction à l informatique en BCPST

La Virtualisation Windows chez CASINO. Philippe CROUZY Responsable Infrastructure Equipes Systèmes -Stockage

Etude d architecture de consolidation et virtualisation

Systèmes d exploitation

Hébergement MMI SEMESTRE 4

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing

Pré-requis techniques

Présentation Windows 7 &

CA ARCserve r16 devance Symantec Backup Exec 2012

Délivrer des postes de travail virtuels et des applications virtuelles en utilisant des technologies Open Source

INTRODUCTION À L INFORMATIQUE

Environnements de développement (intégrés)

Livre blanc. La sécurité de nouvelle génération pour les datacenters virtualisés

Symantec Backup Exec 11d

Square-IT-Consulting. Présentation

Hiérarchie matériel dans le monde informatique. Architecture d ordinateur : introduction. Hiérarchie matériel dans le monde informatique

Plan de la conférence. Virtualization. Définition. Historique. Technique. Abstraction matérielle

Cours Bases de données

EMC AVAMAR. Logiciel et système de sauvegarde avec déduplication

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

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

Qu est ce qu un un serveur?

Présentation du module Base de données spatio-temporelles

Parallels Transporter Lisez-moi

Procédures de qualification Télématicienne CFC Télématicien CFC

Transcription:

1/46 didier@lrde.epita.fr http://www.lrde.epita.fr/ didier

2/46 Table des matières 1 2 3 4 Autres contemporains 5 Organisation des systèmes d exploitation

4/46 Qu est-ce qu un système d exploitation? Ça? Ça? Que dire de command.com, des shellutils, de X11...?

5/46 Définition pragmatique Utilisateur OS Machine 1 3 Permettre une utilisation pratique de la machine Fournir une indépendance vis à vis du matériel 2 Utiliser efficacement les ressources matérielles

6/46 Définition(s) technique(s) La plus répandue : Allocateur de ressources (CPU, mémoire, périphériques etc.) Contrôleur de ressources (gestion et contrôle dans le temps et dans l espace) Autres : Première couche logicielle au dessus du matériel Seul programme permanent dans une machine Portion logicielle qui tourne en mode noyau

8/46 1642 : Pascal http://davidguy.brinkster.net/computer/ Machines Arithmétiques : calcul dirigé manuellement.

9/46 1801 : Jacquard http://lyc-jacquard.scola.ac-paris.fr/historique_1p.html Automates : métier à tisser doté d un programme sur une carte en bois permettant de gérer le mouvement des engrenages.

10/46 1843 : Charles Babbage / Ada Byron http://www-gap.dcs.st-and.ac.uk/~history/ Automate pour le calcul arithmétique : programme sur une carte en bois, «magasin» pour le stockage des résultats intermédiaires, automate pour l exécution du programme.

12/46 1936 : Alan Turing http://www-gap.dcs.st-and.ac.uk/~history/ Définition mathématique précise de la notion d algorithme. Modèle abstrait pour le calcul informatique. «Machine de Turing».

13/46 1945 : Von Neumann http://www-gap.dcs.st-and.ac.uk/~history/ Stockage du programme dans le «magasin» (la mémoire), codage de l information en binaire. Seul le «logiciel» sait distinguer les instructions et les données.

14/46 1945 1955 : lampes et jacks Machines énormes Dizaines de milliers de relais mécaniques progressivement remplacés par des lampes Utilisation 100% manuelle Directement en langage machine, panneaux de contrôle électriques. Pas de distinction entre concepteurs, administrateurs et utilisateurs 1950 : apparition des cartes perforées = Temps de préparation considérable, unité centrale peu active.

15/46 ENIAC (1) Electronic Numerical Integrator and Computer http://www-gap.dcs.st-and.ac.uk/~history/

16/46 ENIAC (2) http://www-gap.dcs.st-and.ac.uk/~history/

17/46 ENIAC (3) http://www-gap.dcs.st-and.ac.uk/~history/

18/46 ENIAC (4) http://www-gap.dcs.st-and.ac.uk/~history/

19/46 ENIAC (5) http://www-gap.dcs.st-and.ac.uk/~history/

20/46 1955 1965 : traitement par lots (batch) Utilisation de transistors Machines plus fiables (mainframes) Opérateur professionnel Engagé pour s occuper du système Enchaînement des tâches, surveillance de leur déroulement etc. Le programmeur n a plus accès à la console Mise en commun des tâches similaires Exemple : deux programmes FORTRAN utilisent le même compilateur = Toujours de longues périodes d inactivité de l unité centrale.

21/46 Traitement par lots (suite) Traitement hors ligne (offline) Utilisation de bandes magnétiques comme buffers E/S de l unité centrale (IBM-7094). Conversion cartes bandes sur des machines distinctes (IBM-1401). Moniteur résident Premier système d exploitation rudimentaire : programme d enchaînement automatique des tâches contrôlé par des cartes spéciales ($LOAD, $RUN etc.). = Aucune interactivité dans le traitement des tâches.

22/46 IBM 7094 http://www.columbia.edu/acis/history/

23/46 Console 7094 http://www.columbia.edu/acis/history/

24/46 IBM 1401 http://www.columbia.edu/acis/history/

25/46 1965 : circuits intégrés Offrir une gamme de machines compatibles Éviter les machines dédiées (IBM-1401 vs. IBM-7094). Permettre la montée en puissance progressive. IBM System/360, 370, 4300 etc. Première famille d ordinateurs dotés de circuits intégrés. Rapport performance / coût cassé. OS/360 : des millions de lignes d assembleur. Des milliers de programmeurs. Autant de bugs.

26/46 IBM 360/91 http://www.columbia.edu/acis/history/

27/46 1965 1980 : multiprogrammation Traitement par lots multiprogrammé Idée : 1960, mise en œuvre : 1970. Problème : inactivité du CPU pendant les E/S. Solution : faire coexister plusieurs travaux dans la mémoire, et faire travailler celui qui peut. Spooling (Simultaneous Peripheral Operation Online) Utilisation de disques (accès direct) plutôt que de bandes (accès séquentiel) Plus besoin de conversion cartes bandes Forme rudimentaire d ordonnancement Le système choisi un candidat parmi les travaux disponibles (modification de l ordre initial des travaux) Premier cas de prise de décision à la place des utilisateurs

28/46 Disques magnétiques http://davidguy.brinkster.net/computer/

29/46 Temps partagé (multitâche / timesharing) Extension logique de la multiprogrammation Plusieurs travaux sont lancés simultanément (multiprogrammation) Commutation très fréquente entre les différents programmes en cours (illusion de parallélisme) Possibilité de dialogue avec le programmeur (celui-ci redevient le contrôleur de ses travaux) CTSS (Compatible Time Sharing System), MULTICS (MULTiplexed Information and Computing Service). = Un accès interactif aux données nécessite un système de fichiers, et pose donc les premiers problèmes de sécurité.

30/46 Pour la p tite histoire... Mini-ordinateurs : DEC PDP-1 (5% du prix d un 7094) sorti en 1961. La famille s agrandi jusqu au PDP-11. Ken Thompson (Bell Labs) développa une version simplifiée de MULTICS sur un PDP-7. Ce travail est à l origine d UNIX. UNIX s est développé en System V (AT&T) et BSD (Berkeley Software Distribution). POSIX est un effort de normalisation IEEE. 1987 : Andrew Tanenbaum livre MINIX, un clone d UNIX à vocation pédagogique. MINIX est à la base de LINUX (Linus Torvalds).

31/46 PDP-11/50 http://www.columbia.edu/acis/history/

32/46 Console PDP-11/50 http://www.columbia.edu/acis/history/

33/46 1980? : Ordinateurs personnels LSI (Large Scale Integration) mini-ordinateurs micro-ordinateurs 1974 : CP/M (Control Program for Micro-computers). Premier système d exploitation pour Intel (8080) par Digital Research. Basé sur floppy (8-pouces). 1980 : IBM PC. Bill Gates fourni son interpréteur BASIC (Beginners All-purpose Symbolic Instructions Language). Digital Research refuse de fournir son système d exploitation. IBM se tourne vers Bill Gates :-( MS-DOS (Microsoft Disk Operating System) Modification du DOS de Seattle Computer Products

34/46 1980? : Ordinateurs personnels (suite) 1985 : Macintosh / Windows : incorporation d une interface graphique (Engelbart, Xerox PARC). Windows n est qu une interface graphique au dessus de MS-DOS. Windows 95 / 98 / Me : ne retiennent MS-DOS que pour le boot et la compatibilité des applications. Encore beaucoup de code assembleur Intel 16 bits. Window NT / 2000 : vrai 32 bits. Et bien sûr : LINUX (X11, KDE etc.), Mac OS X.

35/46 Apple IIe http://www.old-computers.com/museum/

36/46 Commodore 64 http://www.old-computers.com/museum/

37/46 ATARI 800 XL http://www.old-computers.com/museum/

39/46 parallèles / multiprocesseurs : Plusieurs processeurs partagent les mêmes ressources matérielles (bus, mémoire, périphériques etc.) Plus grande capacité de traitement et meilleure fiabilité («dégradation progressive») Multitraitement asymétrique Tâches prédéfinies pour chaque processeur, philosophie maître - esclave (ex. SunOS 4) Multitraitement symétrique Chaque processeur exécute une copie du système d exploitation et communique avec les autres pour l allocation des tâches (ex. SunOS 5 (Solaris 2) et LINUX)

40/46 répartis / distribués Plusieurs processeurs ne partageant pas les mêmes ressources matérielles (bus, mémoire, périphériques etc.) Partage de ressources éloignées (imprimantes, fichiers etc.) Accélération du calcul («répartition de charge») Fiabilité (nécessite une certaine redondance) Communication (réseaux)

41/46 temps réel Les systèmes temps réel sont principalement utilisés pour des applications dédiées (ex. robotique industrielle). Ils doivent fournir les résultats attendus quelles que soient les contraintes de temps imposées. Temps réel rigide Système garantissant que les tâches critiques finissent à temps. Caractéristique incompatible avec les systèmes à temps partagé. Temps réel souple Système donnant la priorité aux tâches critiques jusqu à ce qu elles se terminent. Cette fonctionnalité se retrouve de plus en plus dans les systèmes modernes (UNIX en particulier).

43/46 Structure monolithique Pas (ou peu) de structure MS-DOS : conçu initialement pour Intel 8088. Pas de protection matérielle disponible, pas de contrôle d accès, accessibilité de toutes les fonctionnalités aux utilisateurs. UNIX : séparation du système en noyau et programmes systèmes, séparation du noyau en pilotes et interface.

44/46 Approche en couches Chaque couche du système ne peut utiliser que les fonctionnalités fournies par les couches inférieures (ex. anneaux MULTICS). Avantages : modularité, plus grande facilité de débuggage. Inconvénients : difficulté de conception de chaque couche, perte d efficacité des appels système. = Limiter le nombre de couches, étendre leurs fonctionnalités, favoriser la modularité.

45/46 Machines virtuelles Simulation logicielle d une architecture matérielle Virtual 370 Idée d origine : séparer la multiprogrammation de la notion de «machine étendue». CMS CMS OS/360 Avantages : protection des ressources, facilité de développement de nouveaux systèmes, portabilité. VM/370 IBM 370 Hardware Inconvénient : perte d efficacité à cause de la couche logicielle supplémentaire. Concepts voisin Mode 8086 virtuel du Pentium Bytecode (ex. JVM) Exo-kernels : clônage de machines avec restriction de ressources

46/46 Micro-noyaux Le moins possible en mode noyau Fonctionnalités système déplacées en espace utilisateur (userland). Modèle client / serveur Les appels système deviennent des requêtes de clients (processus utilisateurs) vers des serveurs (fonctionnalités système en userland). Avantages : Tolérance aux pannes distribués