ORDINATEUR Tres Important

Embed Size (px)

Text of ORDINATEUR Tres Important

I.E.P.S.C.F. Marche en Famenne

Structure des Ordinateurs

1. INTRODUCTION1.1. Prambule. Un ordinateur est une machine capable de rsoudre des problmes en appliquant des instructions pralablement dfinies. La suite des instructions dcrivant la faon dont l'ordinateur doit effectuer un certain travail est appele programme. Les circuits lectroniques de chaque ordinateur ne pouvant reconnatre et excuter directement qu'un nombre trs limit d'instructions, tout programme doit tre, avant son excution, converti pour n'tre exprim qu'avec ces instructions. Celles-ci sont du genre : additionner deux nombres voir si un nombre est nul changer d'emplacement mmoire une donne

L'ensemble des instructions excutables directement par un ordinateur forme un langage qui permet aux utilisateurs de communiquer avec cet ordinateur. On parle de langage machine. Les concepteurs de l'ordinateur l'on cr avec des instructions les plus simples possible ( ceci rduit les cots ). Ceci a pour consquence que le langage de la machine en est d'autant plus compliqu. Il devient quasi impossible de programmer de cette faon. Pour rsoudre ce problme, le programmeur va crire dans un langage qui sera converti en langage machine. Deux possibilits existent :

le langage de programmation est traduit : chaque instruction du langage de programmation est remplace par l' ( ou les ) instruction(s) quivalente(s) en langage machine. Cette traduction constitue le programme quivalent en langage machine. Il peut donc tre excut par l'ordinateur. Nous ne parlerons pas de langage traduit mais de programme compil. le langage de programmation est interprt : chaque instruction est remplace par son quivalent en langage machine qui sera immdiatement excute par l'ordinateur.

On peut comparer ces deux faons de travailler celles des traducteurs et interprtes pour les langues trangres. La compilation traduit une fois pour toute un programme dans sa version langage machine, ce qui permet une plus grande rapidit lors de l'excution. Toutefois, si vous modifiez une instruction, il faut recompiler tout le programme. C'est la mme chose quand vous changez de type de machine avec un autre langage machine. L'interprtation impose la conversion chaque excution du programme. Ceci ralentit considrablement son excution. Toutefois, si vous changez de machine, il n'y a rien adapter. Le langage JAVA est interprt, tandis que le C, le COBOL, le PASCAL sont compils. Plus un langage de programmation est proche de la machine, plus il est rapide mais moins facile crire. Plus un langage est facile crire ( on parle de langage volu ) et moins vite il s'excutera. La langage le plus proche du langage machine est appel langage assembler ( assembleur en franais ). Chaque type de machine a son propre assembler ( ainsi, l'assembler micro est radicalement diffrent de l'assembler 370 des IBM ). Je vous montrerai un exemple de chaque sorte, tout en signalant qu'il est impossible de le transporter sur l'autre type de machine. Il est possible d'crire un programme en Assembler mais ceci demande une quantit norme d'instructions peu parlantes ( sauf pour certains ) et donc un risque norme de fautes ( des bugs ). Les programmeurs systme l'utilisent rgulirement pour programmer un composant matriel. Les langages volus et donc faciles ( hum ? hum ? ) utiliser comme le PASCAL, le JAVA, le C, le COBOL, le Fortran, le BASIC, permettent une programmation plus rapide et plus sre mais sont moins proches de la machine et plus lents. Ils demandent moins d'instructions ( en gnral, une instruction en L.E. est traduite en plusieurs instructions en L.A. ) et sont trs lisibles ( hum ? hum ? ).

eric.brasseur@village.uunet.be

-1-

I.E.P.S.C.F. Marche en Famenne

Structure des Ordinateurs

Nous n'tudierons pas l'Assembler dans ce graduat. Je conseille toutefois ceux qui veulent connatre le fonctionnement de l'ordinateur de s'en proccuper. 1.2. Le modle six couches. Actuellement, un ordinateur est compos de plusieurs niveaux ( ou couches ) ( ou machines virtuelles ). Voici un schma simplifi de ces couches : Couche 5 : couche des langages d'application ou volus.

Traduction ( par compilateur ou interprte )

Couche 4 : couche du langage assembler

Traduction ( assembler )

Couche 3 : couche du systme d'exploitation

Interprtation partielle ( systme d'exploitation )

Couche 2 : couche machine traditionnelle

Interprtation ( microprogramme )

Couche 1 : couche microprogramme

Excution directe du microprogramme par le matriel Couche 0 : couche physique

Nous allons tudier ces diffrentes couches pour que vous compreniez bien le chemin parcouru par les programmes que vous serez amens raliser plus tard. Retenez pour l'instant que votre programme ( couche 5 ) sera traduit successivement jusque la couche 0. L'idal serait de disposer d'une machine capable d'utiliser votre programme directement sans traduction : autrement dit : que le langage machine de

eric.brasseur@village.uunet.be

-2-

I.E.P.S.C.F. Marche en Famenne

Structure des Ordinateurs

votre ordinateur soit le langage dans lequel vous crivez. Ce n'est pas impossible, mais ce serait particulirement coteux et difficile mettre au point ( voir SUN et JAVA ?) 1.3. Bref historique de l'ordinateur. Je ne cite ici que les ordinateurs qui ont marqu l'histoire et je prcise pourquoi. Anne Nom 1642 1673 1834 Mach. Analytique Constructeur Pascal Leibniz Babbage On retient Engrenages Engrenages Cartes perfores donc premier langage (crit par Ada Byron ) calculateur lectronique Caractristiques Additions et soustractions + multiplications et divisions magasin mmoire moulin de calcul lecteur de cartes impression tests conditionnels premier ordinateur relais dcodage des messages de la marine allemande rouleau perfor 18000 tubes 1500 relais 30 tonnes 140 kW 6000 commutateurs programme enregistr calcule en temps rel premier calculateur commercialis mmoire unit arithmtique unit de contrle entre sortie premier cran de visualisation premier jeu vido bandes magntiques et cartes perfores transistors outils spcifiques pour l'algol 60 puce de silicium circuits intgrs multiprogrammation mulation anciens plusieurs units de calcul

1936 1943 1944 1946

Z1 Colossus Mark 1 ENIAC 1

Zuse Gouv. anglais

Aiken Eckert/Mauchley premier tubes

1949 1951 1951 1952

EDSAC Whirlwind 1 UNIVAC 1 IAS

Wilkes M.I.T. Eckert/mauchley von Neumann premier binaire

1960

PDP - 1

DEC

1961 1962 1963 1964

1401 7094 B 5000 360

IBM IBM Burroughs IBM

premier miniordinateur ( 50 vendus ) machine de gestion machine scientifique langage algol 60 premire famille

1964 1965 1970 1974 1974 1978

6600 PDP - 8 PDP - 11 8080 Cray -1 VAX

CDC DEC DEC Intel Cray DEC

architecture parallle bus unique vendu + de 50000 exemplaires cot rduit ( ? ) ordinateur des universits CPU sur une puce naissance du micro super ordinateur. super-mini 32 bits

Depuis 1980, l'explosion des ventes du micro ordinateur et son volution constante me pousse parler de l'volution des processeurs et en particulier ceux fabriqus par Intel et AMD d'un ct et ceux fabriqus par Motorola de l'autre ct.

eric.brasseur@village.uunet.be

-3-

I.E.P.S.C.F. Marche en Famenne

Structure des Ordinateurs

1.4. La famille Intel ( + AMD ) A sa fondation en 1968, Intel fabriquait des circuits de mmoire. Intel fut le premier fabricant de CPU intgrs sur une seule puce. Ces CPU s'appelaient 4004 et 8008. On tait en 1972. Ils servaient comme contrleurs de terminaux et dans des calculatrices. En 1974, sortait le 8080. La barrire des 16 Ko de mmoire tait vaincue. En 1978, le 8086 apparaissait. C'tait un vrai processeur 16 bits. Toutefois, comme il n'tait pas parfaitement compatible avec son prdcesseur et qu'il tait coteux, Intel sortit la mme anne le 8088. Moins rapide, mais moins cher, il fut choisi par IBM pour quiper le P.C en 1980. Ce processeur est ainsi devenu le standard en matire d'ordinateur personnel. En 1982, son successeur, plus puissant et toujours compatible est n : le 80286. Il ajoute peu d'instructions de base mais casse la barrire des 1Mo de mmoire centrale : il peut adresser 16 Mo. Il quipe les AT. En 1985, le 80386 commence quiper les PC : son adressage se fait en 32 bits, ce qui permet une plage mmoire de 70 To. En 1989, c'est le tour du 80486. Il comprend un coprocesseur mathmatique intgr. En 1992, le Pentium est n. On peut dire que tous les successeurs sont bass sur la mme structure. Ils comprennent de plus en plus d'instructions de srie et sont de moins en moins coteux en lectricit car leur taille se rduit. Bien entendu, ils sont chaque fois plus puissants et donc plus performants. Intel a un grand concurrent sur le march des processeurs compatibles : A.M.D.. Au dbut, A.M.D. avait la rputation de copier les processeurs Intel. Ils portaient d'ailleurs le mme numro. ( il existait un autre fabricant : Cyrix ). A partir du pentium, les noms ont chang. Si Cyrix continuait la srie 80586 puis 80686, A.M.D. nommait ses processeurs K5 , K6 puis K7 ( ou Athlon). La guerre des prix s'est transforme en guerre des technologies car A.M.D. impose de plus en plus souvent ses processeurs avant ceux d'Intel. L'important est de savoir qu'ils sont compatibles ( sauf pour quelques instructions destines prioritairement aux jeux ). La technologie de l'un est de toute faon implmente dans la version suivante de son concurrent. Les vitesses s'expriment en Mhz et la mmoire cache en Ko. 1.5. La famille Motorola. C'est en 1975 que Motorola ( fabricant de semi-conducteurs ) sort son premier processeur : le 6800. Il ressemble trs fort au 8080 d'Intel. En 1979, Motorola ose sortir un processeur qui n'est pas compatible avec son