COMMENT MARCHE UN ORDINATEUR - Plutôt bien, en fait Enfin malgré tout - Espace 19
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
COMMENT MARCHE UN ORDINATEUR (Plutôt bien, en fait… … Enfin malgré tout … … il ne faut pas oublier de l’allumer!) Hervé D. Comment marche un ordinateur 06/2018 1
D’abord, voyons comment c’est fichu c’truc-là Hervé D. Comment marche un ordinateur 06/2018 2
L’unité de traitement L’intelligence, le cerveau? Pas sûr! • Le microcontrôleur: Machine à café, Télécommande, Lave-linge - Processeur - Mémoires (programme et données) - Entrées/Sorties • Le microprocesseur: Ordinateurs (Personnels, Mainframes) - Processeur (1 à 4, 8 ,16…) • Le méga-processeur: Super-ordinateurs (Météo) - Processeurs (milliers) Tous ces formidables processeurs sont en fait… complétement dénués d’intelligence. Mais ils sont très obéissants. Hervé D. Comment marche un ordinateur 06/2018 3
Les Entrées-Sorties • Entrées: – Clavier – Souris – Scanner – Webcam – Micro • Sorties: – Ecran – Imprimante – Haut-parleurs Hervé D. Comment marche un ordinateur 06/2018 4
Les bus système (Maintenant, si vous préférez le métro…) A part un véhicule vert, c’est quoi un bus? Tout bêtement, un groupe de signaux électriques comme: - Les contrôles de la RAM: sélection, lecture/écriture… - Les adresses de la RAM: où l’on va dans la mémoire - Les données de la RAM: Les informations contenues dans la mémoire: Sur 8, 16, 32 ou 64 bits en parallèle. Un bus 64 bits échange les informations 2 fois plus vite qu’un bus 32 bits Hervé D. Comment marche un ordinateur 06/2018 5
Les mémoires (Là où l’on range programmes et données) Par ordre de taille: – Cache: Dans le microprocesseur, faible taille, rapide, volatile – RAM: Sur carte-mère, taille moyenne, assez rapide, volatile – SSD: Dans boîtier ou sur carte-mère, lent, non volatile – Disque dur: Dans boîtier, grande taille, très lent, non volatile Et on réalise avec horreur que: – Il y en a des petites et des grandes – Il y en a des rapides et des lentes – Il y en a des permanentes et des volatiles Et que pas une n’a toutes les qualités à la fois. C’EST POUR CELA QUE LES ORDINATEURS SONT CONÇUS AINSI Hervé D. Comment marche un ordinateur 06/2018 6
Comparons les mémoires Donc, il n’existe pas encore (ça viendra) de mémoire universelle, qui serait: - aussi rapide que le processeur (~GHz), - de très grande capacité (~To), - non volatile Actuellement: Capacité Vitesse Disque Dur SSD RAM Cache ~To+ ~To ~Go ~Mo Hervé D. Comment marche un ordinateur 06/2018 7
On récapitule: • Cache: Electronique, dans le microprocesseur. Vitesse maximum, faible capacité (Mo), volatile. • RAM: Electronique, sur la carte-mère. Vitesse élevée, capacité moyenne assez adaptée à l’ordinateur (Go), volatile. • Solid State Drive (SSD): Electronique, sur la carte-mère ou dans le boîtier, vitesse faible, capacité assez élevée (en progrès constant), non volatile. • Disque Dur (HDD): Electromécanique, dans le boîtier, vitesse très faible, capacité très élevée (To), non volatile. Conclusion: Pour assurer une performance acceptable, les programmes et données en cours d’utilisation doivent se trouver dans la RAM Hervé D. Comment marche un ordinateur 06/2018 8
Un peu de logiciel (C’est pas ma tasse de thé, mais y n’en faut) • Système d’exploitation (OS) Logiciel qui contrôle l’ordinateur: - Matériel: Ecran, clavier, souris, disque dur, réseau… - Logiciel : Lancement des applications Arrêt des applications Gestion mémoire Windows, Mac-OS, Linux Hervé D. Comment marche un ordinateur 06/2018 9
Un exemple de programme (Qui démontre la formidable intelligence d’un processeur) Examinons l’activité du programme de gestion du clavier: Début: Quelqu’un a appuyé sur une touche? o Non? Chic, je continue à glander (retour au Début) o Oui? Zut, faut que j’aille bosser: Je relève le code de la touche Je l’envoie au chef Je recommence à attendre (retour au début) OK, c’est un peu caricatural, mais… Cet exemple illustre le fonctionnement de n’importe quel ordinateur. Le processeur, comme un simple soldat, fait ce qu’on lui ordonne sans discuter. La valeur d’un ordinateur se trouve donc dans: - La complexité et la qualité de ses programmes - La capacité du processeur a exécuter ses ordres très rapidement (près de 100 Milliards d’instructions par seconde actuellement) Hervé D. Comment marche un ordinateur 06/2018 10
Organisation logicielle (Organisation??? Faut pas exagérer quand même…) • Les programmes d’un ordinateur sont organisés en couches: – De moins en moins puissantes (et volumineuses) – De plus en plus liées au matériel • Du haut vers le bas: – Les applications (ou programmes): Traitement de texte, Navigateur Internet, Messagerie, Traitements images/audio/vidéo, etc. Le ‘chef’ des programmes est l’OS (Il ne faut pas qu’il se la pète trop non plus: le chef de l’OS est… l’utilisateur). – Les drivers: On peut considérer qu’ils sont formés de deux couches: • La couche d’abstraction: Par exemple, un fichier est fourni à l’application de la même manière quelle que soit son origine (disque dur ou optique, clé ou disque USB externe, réseau). • La gestion des composants matériels (Firmware) qui se charge de manipuler les composants électroniques pour répondre aux demandes du driver. Hervé D. Comment marche un ordinateur 06/2018 11
Assez de théorie Comment ça marche tout ça? Commençons par allumer l’ordinateur: Un élément intervient en premier: L’alimentation – Transforme la tension 220V du réseau électrique en voltages utilisables par les composants de l’ordinateur, En général une bonne demi-douzaine allant de 0,8V à 12V – De plus, pour les ordinateurs portables, est capable d’utiliser la tension de batterie (de l’ordre de 20V) à la place du 220V. Comporte également l’électronique de contrôle de la charge et de la décharge de la batterie. Tout le monde a sa ration d ’électrons? Alors, au boulot! Hervé D. Comment marche un ordinateur 06/2018 12
Le microprocesseur n’a pas assez à manger? (Alors, nourrissons-le en instructions) Là, ça commence à se gâter: Le processeur est conçu pour trouver programmes et données dans la RAM, mais…. Au démarrage de l’ordinateur, il n’y a rien dans la RAM! Heureusement, même si le processeur est le plus efficace lorsqu’il trouve ses informations dans la RAM, il peut quand même (à titre exceptionnel et c’est bien parce que c’est vous) aller en chercher ailleurs (qu’il se dépêche d’ailleurs de recopier dans … la RAM! (il y est si bien, il ne peut pas résister…), DONC… (là, il faudrait penser à changer de diapo, eh patate!) Hervé D. Comment marche un ordinateur 06/2018 13
La première nourriture du processeur (la becquée, en quelque sorte) • Le processeur trouve ses premières instructions dans une petite mémoire (Flash), non volatile bien sûr. On appelait ça le BIOS, devenu de nos jour l’UEFI. Avec les instructions de cette mémoire, il va principalement: – Lancer les logiciels d’initialisations des périphériques (Drivers): • Contrôleur de disques (dur et/ou optique), d’écran (plus clavier et pavé tactile pour un portable) • Contrôleurs USB (pour clavier, souris, imprimante…) • Contrôleurs réseau (Ethernet, Wi-Fi) • Contrôleurs multimédia (Entrés/sortie audio, Webcam) – Déterminer la source du programme de chargement (Boot): • Disque dur • Disque optique (CD, DVD, Blu-Ray) • USB • Réseau Hervé D. Comment marche un ordinateur 06/2018 14
On sait où est le Boot… alors Bootons (Les Anglois hors du royaume de France) Au fait, c’est quoi c’t’histoire de Boot? Souvenons-nous: Paradoxalement, la RAM est le seul type de mémoire qui… ne RAME pas (vous pouvez applaudir l’excellent jeu de mots, merci). Les étapes du Boot: • Copier le programme de Boot dans la (zut, le nom m’échappe ) Ah oui, dans la RAM! • Copier l’OS dans la RAM • Lancer l’OS • Aller se coucher (après le démarrage de l’OS, le Boot a fini son travail, il est retiré de la RAM) Remarque: • Ceci explique pourquoi un ordinateur met du temps à démarrer (eh oui, ce satané disque dur est tellement lent ). Hervé D. Comment marche un ordinateur 06/2018 15
L’OS est lancé, mais… (Il a encore un peu de boulot) Le BIOS/UEFI et le Boot on placé l’ordinateur dans une configuration minimale permettant le lancement de l’OS. L’OS doit maintenant configurer l’ordinateur pour son fonctionnement normal en lançant un certain nombre de services, par exemple: • Gestion de l’affichage (mise en route du processeur graphique) • Gestion du disque (organisation, optimisation, compactage) • Gestion des protocoles de communication (USB, Wi-Fi, Ethernet) • Gestion des entrées/sorties Audio D’autres services sont lancés à la demande en fonction de l’activité de l’ordinateur (gestionnaire d’impression par exemple). C’est pour cela que même après l’affichage de l’écran d’accueil (voire même après l’ouverture de la session), l’ordinateur continue à afficher un sablier ou un joli rond bleu (Windows 10). Il n’a simplement pas fini de démarrer tous les services nécessaires. Hervé D. Comment marche un ordinateur 06/2018 16
Après un certain temps, l’ordinateur est prêt (à faire toutes les bêtises que lui demandera l’utilisateur) Imaginons que l’utilisateur veuille lancer un programme (oh! L’imprudent) Qu’est-ce qu’il se passe-t-il? (à part l’inévitable plantage de l’ordinateur, évidemment) L’utilisateur: Déplace la souris vers l’icône du programme qu’il veut lancer Le driver de souris: Détecte le mouvement et prévient l’OS: ‘Chef, Chef! La souris elle fait rien qu’à bouger!’ L’OS lui répond: ‘Du calme mon petit, je préviens le driver graphique’ (On notera au passage qu’en bon chef, il cherche à rassurer son subordonné) L’OS réagit: ‘Eh driver graphique, envoie la flèche aux coordonnées: X = Alpha / Tango / Delta Y = Zoulou / Banane / Eléphant’ Le driver graphique: ‘ A y est’ Et ce petit jeu dure tant que l’utilisateur déplace la souris Au bout d’un moment, l’utilisateur a amené la souris à bon port (donc sur l’icône du programme à lancer). Et, là, horreur! (La suite à la prochaine diapo…) Hervé D. Comment marche un ordinateur 06/2018 17
Toujours aussi inconscient… (L’utilisateur clique sur l’icône) Qu’est-ce qu’il se passe-t-il maintenant? Le driver de souris: Détecte l’appui sur le bouton et prévient l’OS: ‘Chef, Chef! Le bouton gauche, il est enfoncé!’ L’OS répond: ‘Pas de panique, je m’en occupe’ L’OS réagit: ‘Driver graphique, fait tourner le petit rond bleu pour faire patienter’ ‘Gestionnaire de mémoire, trouve-moi une zone RAM disponible’ ‘Gestionnaire de fichiers, copie le programme dans cette zone’ Gestionnaire de fichiers :‘OK, je cherche où il se trouve sur le disque. Ah! Je l’ai: Je préviens le driver’ Driver de disque: ‘Le fichier qui se trouve sur la piste X, secteur Y, tête Z? OK, je l’copie en RAM’ L’OS: ‘Merci les gars, je démarre le truc. Driver graphique, arrête ton joli rond’ Le driver graphique: ‘ A y est’ (pas beaucoup de vocabulaire, celui-là) Et voilà. L’OS passe le contrôle de l’ordinateur au programme. (Enfin, pas tout à fait) Faut pas pousser, quand même: l’OS c’est LE CHEF. Il va pas abandonner le contrôle comme ça, sans rien faire. Car… Hervé D. Comment marche un ordinateur 06/2018 18
N’oublions pas que l’OS est multitâches (Il en met partout…) Ben oui, mais y’a qu’un seul processeur, alors il fait comment, L’OS? Pour faire cela, il a un mécanisme nommé ‘Scheduler’ qui lui permet de ‘prêter’ le microprocesseur successivement à tous les programmes qui tournent dans l’ordinateur. Ainsi, chaque programme s’exécute pendant un certain temps puis ‘laisse la place’ au suivant. Tout cela va tellement vite que l’utilisateur a l’impression que tous les programmes s’exécutent en même temps. (Ah ah, malin l’OS, il vous a bien eus!) Donc: L’OS passe son temps à regarder ce qui se passe au niveau de: souris, clavier, réseau… Et si l’utilisateur clique sur l’icône d’un autre programme, la séquence précédente se reproduit jusqu’au lancement du second programme. Et ainsi de suite… Hervé D. Comment marche un ordinateur 06/2018 19
Le fichier d’échange (Et si la RAM était pleine à ras bord?) Pour maximiser la performance, l’OS range dans la RAM tout ce qu’il peut: L’OS (eh, le chef d’abord quand même!) et tous les programmes en cours d’exécution et les données qui vont avec. Il arrive alors que la RAM soit pleine à craquer (les utilisateurs ne sont pas raisonnables, non plus) L’OS se trouve donc dans l’obligation de faire le ménage. Mais comme c’est pas un mauvais bougre, il ne va pas jeter les précieuses données de son utilisateur adoré: L’OS libère de la RAM en en copiant une partie sur le disque dur, dans un emplacement appelé ‘fichier d’échange’ Avantage: L’ordinateur continue de fonctionner Inconvénient: L’obligation de copier de la RAM vers le disque, puis pour récupérer les données, du disque vers la RAM C’est pour cela que la taille de la RAM doit être adaptée à l’utilisation de l’ordinateur Hervé D. Comment marche un ordinateur 06/2018 20
Et les fenêtres, alors? (Ouvrir, réduire, fermer… Sans faire de courants d’air) Ben oui, chaque programme s’exécute dans une fenêtre, alors faut gérer ça aussi Pour déterminer quel programme a le droit d’utiliser le processeur, l’OS a un certain nombre de critères (priorité du programme, événements externes, actions de l’utilisateur…). En particulier, lorsque l’utilisateur clique dans une fenêtre, l’OS peut modifier son ordre de distribution du ‘temps processeur’ pour donner la priorité au programme correspondant à la fenêtre qui vient d’être activée. Cela permet de faire croire à l’utilisateur qu’il a le processeur pour lui tout seul. Mais c’est même pas vrai: Les autres programmes continuent à s’exécuter, simplement ils laissent plus de ‘temps processeur’ à ce petit chouchou. C’est grâce à ces mécanismes que l’on peut faire son courrier en effectuant une recherche sur Internet tout en écoutant de la musique et plein d’autres choses. Et maintenant, si l’utilisateur veut fermer un programme? (Ben oui, il va pas regarder du porno toute la journée quand même…) Hervé D. Comment marche un ordinateur 06/2018 21
Fermons les fenêtres (Fait pas chaud là-d’dans) Qu’est-ce qu’il se passe-t-il maintenant? Le driver de souris: Détecte l’appui sur le bouton et prévient l’OS: ‘Chef, Chef! Y’en a un qu’a cliqué sur la croix en haut de la fenêtre’ L’OS répond: ‘Super, on ferme le programme, ça va nous reposer un peu’ L’OS réagit: ‘Gestionnaire de fichiers, copie les infos du programme sur le disque et jette un œil au fichier d’échange, tant que tu y est’ ‘Driver graphique, fait disparaître la fenêtre’ ‘Gestionnaire de mémoire, libère-moi cette zone de RAM’ Drivers et gestionnaires (en chœur): ‘On a tout fini, on peut aller boire un coup?’ L’OS: ‘Oui les gars, mais vite fait, y’en aura p’têt d’autres à fermer’ Et voilà. Le programme est arrêté, ses données sauvegardées et sa fenêtre fermée. Et maintenant, si l’utilisateur veut éteindre l’ordinateur? (Ben oui, il y a un bon porno à la télé…) Hervé D. Comment marche un ordinateur 06/2018 22
Eteindons l’ordinateur (Il est l’heure d’aller au lit) Que l’on ferme un seul programme, ou que l’on éteigne l’ordinateur totalement, le fonctionnement est le même et fait appel aux mêmes étapes que pour le lancement d’un programme, comme décrit dans la diapo précédente (Hé, faudrait suivre, là!). Ceci dit, pourquoi un ordinateur ne s’éteint-il pas instantanément? • Il doit d’abord arrêter successivement tous les programmes en cours d’exécution: Enregistrer les paramètres de ces programmes sur le disque dur Enregistrer les données de ces programmes sur le disque dur (éventuellement en demandant son avis à l’utilisateur) (les données peuvent être dans la RAM ou dans le fichier d’échange) • Il doit ensuite arrêter tous les services en cours d’exécution Par exemple: Réseau, USB… Il est préférable de les terminer ‘proprement’ Tout ceci entraîne de nombreux échanges avec le disque dur… … et ça prend du temps! • Enfin, quand tout est bien fini de nettoyer, l’OS se ferme de la même manière que les autres programmes, et passe la main au gestionnaire d’alimentation pour couper le jus. (Vous pouvez vous réveiller, c’est fini) Hervé D. Comment marche un ordinateur 06/2018 23
Vous pouvez aussi lire