La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

1 Introduction à la Micro-informatique Eric T. KOUAM octobre 2005.

Présentations similaires


Présentation au sujet: "1 Introduction à la Micro-informatique Eric T. KOUAM octobre 2005."— Transcription de la présentation:

1 1 Introduction à la Micro-informatique Eric T. KOUAM octobre 2005

2 2 Notions de base sur linformatique Culture générale de lingénieur « SI » Ce cours nest quun rapide panorama : –beaucoup de notions seront approfondies durant votre cursus (programmation, archi, système...) –à vous dêtre curieux pour le reste ! Objectifs

3 3 Quelques définitions (1/3) Information Renseignement élémentaire susceptible dêtre transmis et conservé grâce à un support et un code. Une fois codée, elle devient une donnée. Exemple de données/information? Informatique (1962, information et automatique) Technique du traitement automatique de linformation au moyen dordinateurs. Science du traitement rationnel de linformation. Science ou technique ?

4 4 Quelques définitions (2/3) Ordinateur Machine capable d'effectuer automatiquement des opérations arithmétiques et logiques (à des fins scientifiques, administratives, comptables, etc.) à partir de programmes définissant la séquence de ces opérations. Réseau Ensemble d'équipements reliés les uns aux autres par des câbles ou des faisceaux hertziens, afin qu'ils puissent échanger, distribuer ou diffuser des informations et partager différentes ressources.

5 5 Quelques définitions (3/3) Internet Réseau informatique mondial constitué dun ensemble de réseaux nationaux, régionaux et privés, reliés par le protocole TCP/IP. Ces réseaux coopèrent pour offrir une interface unique (DNS, routage…) Applications de lInternet ? Bit (Binary digit) Unité élémentaire dinformation (codée), ne prenant que 2 valeurs différentes (ex: 0 ou 1) et pouvant être composée pour coder des information plus complexes

6 6 Unités de mesures… (1/2) Lunité de quantité dinformation codée est le bit. 1 octet = 8 bits En Anglais, ne pas confondre « bit » et « byte » –Quest-ce quun byte? Le système international des poids et mesures ne normalise pas le bit et ses multiples! Donc gare aux confusions…

7 7 Unités de mesures… (2/2) On considère souvent les multiples selon une base binaire et non une base décimale. Norme internationale (bureau des poids et mesures) 1 kilo = 1000, 1 Mega = 10 6, 1 Giga = 10 9 … Usage en informatique 1 Kilo = 1024, 1 Mega = 1024 Kilo = 2 20, 1 Giga = 2 30 … Terminologie CEI (Commission électrotechnique internationale, rarement appliquée malheureusement) 1 Kibi = « 1 Kilo Binaire » = 2 10 = 1024Abbrév: Ki 1 Mébi = « 1 Méga Binaire » = 2 20 = Abbrév: Mi… Exemple: 1 Kibi-octet = 1024 octets

8 8 Pré-histoire et Histoire de lInformatique

9 9 Calculateurs mécaniques (1/4) 1643 Blaise Pascal invente la Pascaline, machine à faire les additions, soustractions et a convertir les monnaies Lorsquun cadran fait un tour complet, le cadran suivant est incrémenté (retenue automatique)

10 10 Calculateurs mécaniques (2/4) 1679 Leibnitz améliore la Pascaline, en y ajoutant la multiplication et la division : la calculette est née! Pose les bases de larithmétique binaire

11 11 Calculateurs mécaniques (3/4) 1820 Charles-Xavier Thomas de Colmar invente larithmomètre. Portable, pratique et facile a utiliser : 1500 exemplaires en 30 ans

12 12 Calculateurs mécaniques (4/4) 1890 Automatisation du recensement américain grâce à la tabulatrice à cartes perforées de Hollerith. Inspirée des métiers à tisser Jacquard + électricité Création de la « Tabulated Machine Company » Plein de calculateurs mécaniques jusquaux années 1950 !

13 13 XIX ème siècle Boole : bases de la logique binaire (1854) (2 valeurs de vérité, 4 opérations de base) Babbage : machine a différences calcul des éphémérides grâce a une suite dadditions et de soustractions purement mécanique sortie : gravure dune plaque de cuivre ! Calcul sophistiqué mais machine spécialisée

14 14 La Machine Analytique (1/2) 1833, Babbage : « un calculateur universel » 1. Entrée (programme) 2. Unité de commande 3. « Magasin » (mémoire) 4. « Moulin » (calcul élémentaire, UAL) 5. Sortie

15 15 La Machine Analytique (2/2) Une conception trop en avance! Problèmes de technologie : la machine ne fonctionna jamais. Assisté de Lady Ada Lovelace, première programmeuse!

16 16 Les prémisses… 1906 invention du « tube à vide » (interrupteur électronique) 1936Alan Turing théorise un calculateur programmable Zuse construit le 1er calculateur à relais 1938Claude Shannon invente le bit (binary digit) 1944Aiken construit la machine analytique avec des relais électromécaniques (1 opération / 6 secondes)

17 17 Deuxième Guerre Mondiale Le défi Enigma (1943) décryptage des communications des sous-marins allemands par larmée britannique construction et utilisation de Colossus, conçu par le mathématicien Alan Turing avantage décisif pour la marine technologie secrète pdt 30 ans Premier ordinateur électronique !

18 18 Deuxième Guerre Mondiale (suite!) ENIAC (1946, Mauchley et Eckert) Electronic Numerical Integrator And Computer Calculs balistiques pour larmée américaine 42 armoires de 3m de haut, 80m², 174kW tubes à vide, 1500 relais Programmation par « câblage » et 6000 commutateurs 330 multiplications/s Publication de lENIAC Premier « bug »

19 19 Premier bilan ENIAC (1946, Mauchley et Eckert) Ordinateurs électroniques Arithmétique décimale Programmes câblés Architecture très complexe

20 20 John Von Neumann Mathématicien génial ayant participé à lENIAC Proposition de Von Neumann =Représentation numérique des programmes + Arithmétique binaire +Architecture en quatre parties Mémoire (données et programme), UAL, UC, E/S A la base de (presque) tous les ordinateurs modernes!

21 21 Pourquoi le binaire? (1/2) 1 chiffre = un état électrique « tout ou rien » (simple, fiable) Opérations logiques faciles à réaliser électroniquement ET : série OU : parallèle NON : inversion détat

22 22 Pourquoi le binaire? (2/2) Les nombres se représentent facilement en binaire. Opérations arithmétiques réalisables grâce aux opérations logiques. Exemple : laddition (13+6 = 19) = R + A + B = R S S = (A B) R R = A.B + R.(A B)

23 23 La suite… 1947Le transistor (Bell labs, Shockley, Brattain et Bardeen) 1950Lassembleur remplace la programmation binaire 1958Circuit intégré ou « puce » (Robert Noyce) 1964System/360 dIBM: création dune gamme dordinateurs compatibles (de /s à 2,5M+/s)

24 24 Le 1er microprocesseur 1971Intel intègre sur une seule puce l« unité centrale » (unité de contrôle, UAL et registres) Petit nom : I 4004 Caractéristiques : 12mm², 2300 transistors 10µm 16 broches, 108KHz 4 bits Début des micro-ordinateurs

25 25 Microordinateurs 1973Grenelle et Truong [Efrei59] créent le premier micro-ordinateur pour lINRA: le MICRAL 1975Création de Microsoft (Paul Allen et Bill Gates) 1976 Apple I (Steve Jobs et Steve Wozniak)

26 26 Hégémonie du PC 1981IBM (en retard!) lance son micro-ordinateur, baptisé IBM PC (Personal Computer), basé sur le processeur Intel ,77MHz, 16 Ko de mémoire vive, un lecteur 5"1/4… + MS-DOS ! « poids dIBM » : standard industriel ! 1983Arrivée des « compatibles PC » 1985IBM perd le contrôle du marché PC! ActuellementArchitecture « Wintel »

27 27 Evolution des Microprocesseurs kHz2.300 transistors10µm ,77 MHz tr3µm MHz tr1,5µm MHz tr1,5µm MHz1,2 Mtr1µm 2002 Pentium 41,7 GHz42 Mtr0,18µm 2004 Pentium M2 GHz140 Mtr0,09µm

28 28 De la puissance des machines ENIACCray 1Pentium (2GHz) 330 Flops160 MFlops> 1000 MFlops ?8 M$830 $ 174 kW60 kW75 W De plus en plus rapides, de moins en moins coûteuses

29 29 La loi de Moore « Le nombre de transistors intégrés sur une puce double tous les 18 mois. » (Gordon Moore, 1965) Des processeurs et mémoires de plus en plus puissants, de moins en moins chers Jusquà quand ? ? ? Économiquement : cercle vertueux MAIS : première loi de Nathan sur les logiciels (et leurs utilisateurs…) « loi » de Gates… gare aux prédictions!

30 30 Où est linformatique maintenant ? Partout ! Entreprises : comptabilité, gestion des ressources Personnelle : budget, jeux, bureautique Applications critiques : transports, nucléaire, spatial… Et aussi : voitures, électroménager « intelligent », cartes à puces, téléphones portables, PDA...

31 31 Programmation

32 32 Ainsi parlait Dijkstra… ( ) « Alan Turing thought about criteria to settle the question of whether machines can think, a question of which we now know that it is about as relevant as the question of whether submarines can swim. » « Computer Science is no more about computers than astronomy is about telescopes. »

33 33 Programmation Un ordinateur est fait pour être programmé : il faut lui dire ce quil doit faire Lhumain programme la séquence des opérations à effectuer, lordinateur exécute. Lexécution est un processus automatique, « facile », mais rapide et fiable

34 34 Quest-ce quun processeur sait faire ? 1. Lire et écrire en mémoire (RAM, graphique, E/S) 2. +, -,, /, logique binaire Passer à linstruction suivante 4. Aller directement à une autre instruction 5. Aller à une autre instruction SI … bien peu… mais très rapidement et sans erreur

35 35 Que programmer ? Programme = résolution dun problème Pour chaque type de problème on conçoit un algorithme Algorithme : méthode détaillée de résolution dun problème. « Ensemble des règles opératoires nécessaires à laccomplissement dune tâche. »

36 36 Algorithmes : exemples (1/4) Calcul du maximum de a et b Si a est plus grand que b alors rendre a Sinon rendre b et si a = b ?

37 37 Algorithmes : exemples (2/4) Calcul de la racine carrée de x Exercice : x = 17 (ne garder que 2 décimales)

38 38 Algorithmes (3/4) Vous connaissez des algorithmes pour… 1. Maths : +, -,,, résolution déquations 1 er et 2 ème degrés… 2. Vie quotidienne… Lalgorithme type : la recette de cuisine (ingrédients, produit, étapes, sous-étapes, savoir-faire)

39 39 Algorithmes : bases (4/4) Variable : stocke une valeur à la fois (affectation/lecture) Séquence : suite dinstructions à exécuter Boucle : ensemble dinstructions à répéter Condition : test dune propriété booléenne, deux suites possibles (« si vrai » et « si faux ») Sous-programme/fonction : étape séparée, porte un nom, a des paramètres et peut renvoyer des résultats cf. le cours de programmation en C bientôt !

40 40 Programmer... Mettre en œuvre un algorithme (implémentation) Lalgorithme doit être suffisamment détaillé pour être au niveau de la machine Il doit être écrit comme une suite dinstructions pour le processeur code binaire ! Non mais ça va pas non !!!!

41 41 Langage de programmation Terrain dentente entre lordinateur et le programmeur pour spécifier les tâches à faire Programmeur : langue natale (+ 1 ou 2…) Ordinateur : langage binaire (« machine ») Langage : mots-clés, ensemble de règles de syntaxe et de grammaire. Traduit en langage machine

42 42 Langages de programmation Assembleur (1950) : « bas-niveau » (une instruction en assembleur = une instruction processeur) mais plus facile à utiliser (mnémoniques). Peu lisible Une instruction assembleur = une opération (que faire?) une ou deux opérandes (sur quoi?) Ex : ADD AX, BX (AX + BX, résultat dans AX)

43 43 Langages impératifs haut niveau Programmes séquentiels « Von Neumann » Syntaxe plus abstraite (indépendante de lUC) 1 instruction = multiples instructions processeur. Premier : Fortran (Formula Translation), maths Best of: Pascal, C (le standard)... Cobol encore z := 1; repeat y := z ; z := 0.5 * ( y + x / y ) ; until ( abs(y - z) < erreur )

44 44 Compilation & Assemblage Le processeur ne connaît que le « code machine » (binaire) Il faut traduire le programme en code machine : compilation(s) & assemblage A chaque « couche » on gagne en puissance mais on perd en rapidité Programme haut-niveau code assembleur code machine

45 45 Autres paradigmes (1/4) Résoudre certains problèmes raisonner Se libérer du « modèle dexécution » Von Neumann Langages fonctionnels : programme = fonction, compositions de fonction, récursion Proche du langage mathématique : facilite lapproche de problèmes réputés complexes Best of: LISP (historique), Caml/Ocaml (le meilleur!)

46 46 Autres paradigmes (2/4) Langages logiques : programme = « faits » et règles Le programme décrit un « univers » (connaissances) On cherche ensuite à prouver quelque chose dans cet « univers » : basé sur la logique mathématique Ex : Prolog Extension importante : contraintes numériques Utilisation : intelligence artificielle, manipulation de données symboliques complexes

47 47 Autres paradigmes (3/4) parent(jean,marie). parent(jean,yann). homme(jean). homme(yann). frere(X,Y):- parent(Z,X), parent(Z,Y), homme(X). ?- frere(A, B). A = yann, B = marie ; A = yann, B = yann.

48 48 Autres paradigmes (4/4) Langages de spécification formels Spécification en langage mathématique : pas de phrase! On exprime mathématiquement ce qui doit être garanti On passe de la spécification au programme par une suite dopérations complexes et codifiées. Tout est prouvé mathématiquement Très fastidieux et réservés à des experts Utilisation : applications « critiques » à fort enjeu Exemples : méthode B, Coq, PVS... Application récente : Météor (RATP/Matra Transport)

49 49 Choix du langage A chaque problème correspond un ou plusieurs langages adaptés. Un programmeur doit maîtriser plusieurs langages différents ! Critères de choix : connaissance, facilité de développement, rapidité dexécution, facilité de maintenance Langages les plus répandus : C, C++, Java… Cobol et Fortran !

50 50 Vie dun logiciel Spécification : quest-ce quon veut faire ? Analyse : comment va-t-on le faire Développement : programmer ce qui est spécifié en se basant sur lanalyse Test : vérifier (et corriger) ce qui est programmé ( confiance certitude) Utilisation Maintenance

51 51 Génie Logiciel Juste pour avoir une idée de ce qui vous attend!

52 52 Musée des horreurs… Linformatique, ce nest pas si simple que ça! Anecdotes de Michael Leuschel (Univ. de Southhampton) lieues sous les mers! –La « safe torpedo »

53 53 Description dun micro-ordinateur

54 54 Configuration externe (base) Ce que lon voit de lextérieur… Un boîtier (abusivement « unité centrale ») Un clavier Une souris Un moniteur Lecteurs de disquettes, CD-ROM, DVD… Un ensemble de prises (connecteurs) à larrière

55 55 Configuration externe (options) Imprimante Scanner Graveur CD-ROM ou CD-RW Lecteur ZIP ou DAT (archivage) Modem Webcam Hauts-parleurs Et plein dautres choses!

56 56 Configuration interne La carte mère Le processeur (CPU ou unité centrale) Horloge RAM (barrettes) Bus (communication) : ISA, PCI, SCSI, AGP, USB… Cartes dextension Carte vidéo (contrôle de lécran, sous-traitance) Carte son Contrôleur de disque…

57 57 Architecture générale Unité centrale Mémoire « principale » Périphériques (mémoires secondaires, moniteur, clavier, carte son…) et leur contrôleur Bus (communications entre les éléments) (cf. schéma)

58 58 Unité centrale Il sagit du microprocesseur Leader : Intel, outsider : AMD Ventilateur pour le refroidir + de 5 millions de transistors Très haute technologie Travail par cycle, cadencé par une horloge UAL (calculs), UCT (traitement), registres

59 59 Carte mère le microprocesseur et l'horloge un coprocesseur dédié aux calculs arithmétiques la mémoire vive les bus (lesquels ?) les slots d'extension (fentes) pour accueillir les cartes

60 60 Le(s) bus (1/3) Relient entre eux les éléments de lordinateur 3 parties : données, adresse, commande Plusieurs types de bus : –1981 : ISA, bus 8 bits, 20 bits dadresse –EISA : 16 bits et + de bits dadresse! 5 Mo/s –Exigences du multimédia : bus PCI conçu par Intel (domaine public) : grand succès. 130 Mo/s max

61 61 Le(s) bus (2/3) Bus PCI : performant mais coûteux Bus USB (Universal Serial Bus) : pour les périphériques « peu rapides », conception concertée entre plusieurs industriels (Compaq, IBM, Intel, Microsoft…), faible coût, bus et alimentation électrique intégrés dans le même câble 1,5 Mo/s Bus AGP : rapides (graphique) 2Go/s A chaque type de périphérique son bus !

62 62 Le(s) bus (3/3) Bus PCI : performant mais coûteux Bus USB (Universal Serial Bus) : pour les périphériques « peu rapides », conception concertée entre plusieurs industriels (Compaq, IBM, Intel, Microsoft…), faible coût, bus et alimentation électrique intégrés dans le même câble 1,5 Mo/s Bus AGP : rapides (graphique) 2Go/s A chaque type de périphérique son bus ! IEEE1394 (Firewire): haute performance (< 3200 Mbit/s)

63 63 Exemple: lUSB Apporte lalimentation électrique (5V, 100mA) Bus série Possibilité de chaîner 127 périphériques (système de « jeton », découpage en ms) Branchement à chaud: détection du périphérique, attribution dun numéro identification USB 1, 1.1 (12Mb/s), 2

64 64 Carte graphique Laffichage sur lécran se fait via une carte disposant de sa propre mémoire. Plusieurs normes :

65 65 Communications Port série : envoi des octets bit par bit Port parallèle : envoi octet par octet

66 66 Mémoires de masse Disques durs, lecteur CD-ROM, DVD… Contrôleurs spécialisés : IDE (< 528Mo), EIDE, SCSI-1 (5 Mo/s), Ultra SCSI (40 Mo/s) Cf. cours sur les mémoires

67 67 Réseau Un ordinateur peut être connecté à dautres par lintermédiaire dun réseau Les données transitent dun ordinateur à lautre à laide dun protocole (ex: TCP/IP)


Télécharger ppt "1 Introduction à la Micro-informatique Eric T. KOUAM octobre 2005."

Présentations similaires


Annonces Google