Histoire de l'informatique
- Histoire de l'informatique
- Deux millénaires de progrès
- Les tubes à vide (1945-1955)
- Les transistors (1955-1965)
- Les circuits intégrés (1965-1970)
- Microprocesseurs (1970-???)
- L'évolution des performances
- Avantages et inconvénients de l'intégration à large échelle
Histoire de l'informatique
Dès le début de l'humanité, nous avons commencé à compter. D'abord on a compté en base 1 (base unitaire). Par exemple, 1 mouton = 1 caillou (d'où calculus qui donne le mot calcul en français)
Un nombre est une quantité que l'on veut représenter, tandis qu'un chiffre est un symbole qui va être utiliser pour représenter le nombre.
Ensuite on a commencé à utiliser la numérotation de position. C'est toujours ce que l'on utilise aujourd'hui, c'est à dire que la position d'un chiffre dans l'écriture d'un nombre a de l'importance.
Par exemple, en base 10 (ce que l'on utilise au quotidien pour compter), si je prends le nombre "542", on peut le décomposer comme ceci :
$$ 542 = 5*10^2 + 4*10^1 + 2*10^0 $$
C'est ainsi que le zéro fait son apparition, avant représenter "rien" n'avait pas d'utilité, mais en numérotation de position, ça a une utilité très claire d'éviter la confusion.
$$ 1 \ 1 \neq 11 \neq 101 \neq 1001 \neq 1010 $$
Voici quelques exemples de bases (celle indiquées en gras sont très liées à l'informatique)
Base | Nom | Usage | Origine |
---|---|---|---|
1 | Unitaire | Comptage (doigts, cailloux, entailles, etc) | |
2 | Binaire | Logique, électronique, informatique | |
5 | Quinaire | Aztèques (doigts d'une main) | |
7 | Septénaire | Jours de la semaine, notes (tons) | |
8 | Octal | Informatique | Premiers ordinateurs |
10 | Décimal | Système le plus répandu | Chinois (doigts des 2 mains) |
12 | Duodécimal | Mois, heures, musique (ton et demi-tons) | Egyptiens |
16 | Hexadécimal | Informatique | |
20 | Vicésimal | Mayas (doigts + orteils) | |
60 | sexagésimal | Trigonométrie (angles), minutes, secondes | Babyloniens, indiens, arabes, ... |
Deux millénaires de progrès
Vers 500av JC, nous avons commencé à compter avec des bouliers, des tables à compter et des bâtons de Neper
1614: John Neper invente la théorie des logarithmes. Grace aux logarithme il est possible de remplacer la multiplication ou la division de 2 nombres par l'addition ou la soustraction de leur logarithmes : $ \log{a*b} = \log{a} + \log{b} $ et $ \log{\frac{a}{b}} = \log{a} - \log{b} $
1623: Wilhelm Shickard (mathématicien) consoit une machine à calculer qui reprends l'idée des batons de Neper
1642: Blaise Pascal (philosophe et scientifique) invente une machine à calculer qui permet principalementd'additionner et de soustraire 2 nombres de six chiffres. En répetant l'opération on pouvait ainsi multiplier.
1673: Gottfried Wilhelm Leibniz améliore la Pascaline pour faire de multiplications et des divisions. Mais, il invente aussi le système binaire et l'arithmétique binaire qui sont à la base des ordinateurs actuels.
En 1805 Joseph Jacquard invente le premier système de programmation. Il s'agit de bandes de carton perforées pour créer de manière automatique des motifs complexes sur un métier à tisser.
En 1833 Charles Babbage invente la machine à différence pour réaliser des tables de calculs et ensuite la machine analytique qui permet de réaliser différentes opérations à partir d'un programme établi sur une carte perforée. Elle était cependant irréalisable par les moyens techniques de l'époque. Mais l'idée était très novatrice, en intégrant des principes comme les programmes, le processeur, les entrées et sorties et de la mémoire.
En 1854, George Boole invente les bases mathématiques de la logique moderne. L'algèbre de Boole est à la base de la conception de circuits électroniques. C'est de Boole que viens "boolean".
En 1890, Herman Hollerith construit un calculateur statistique avec des cartes perforées pour accélérer le recensement de la population américaine. 6 ans plus tard il fonde la Tabluating Machine Company qui deviendra finalement International Business Machine Corporation (IBM) en 1924.
En 1904, John Ambrose Fleming invente le premier "tube à vide" (on va voir plus tard à quoi ça sert)
En 1936, Alan Turing crée l'idée de la machine de Turing suseptible de résoudre tout problème calculable. Tout problème qui ne peut être calculé avec la machine de Turing est dit incalculable. Il cree les concepts d'algorithme et de calculabilité
En 1938, Claude Shannon crée la théorie de l'information qui fait la synthèse de nombres binaires, de l'algèbre booléenne, et de l'électronique.
En 1936, Konrad Zuse construuit les premiers calculateurs électromécaniques basés sur le système binaire (capable de faire une multiplication en 5 seconde)
De 1944 à 1947, Howard Aiken conçoit le Mark I. Un énorme calculateur électromécanique qui fut ensuite remplacé par le Mark II qui utilise des relais plus rapides. Ces calculateurs sont obsolètes dès leur construction car l'ère de l'électronique commence.
Les tubes à vide (1945-1955)
En 1943, le premier ordinateur digital "COLLOSUS" mais est un secret militaire.
En 1945, l'ENIAC est créé. Voir l'article Wikipedia pour se rendre compte à quel point l'ENIAC est énorme.
En 1945, John von Neumann propose une évolution de l'ENIAC appelée EDVAC, notamment pour résoudre le problème majeur de la programmation très laborieuse de l'ENIAC.
Il crée ainsi l'architecture von Neumann où la machine est controlée par un programme dont les instructions sont stoquées en mémoire, le programme pouvant modifier ses propres instructions.
En 1949, Maurice Wilkes construit l'EDSAC, qui est le premier ordinateur basé sur l'architecture von Neumann.
En 1951 construit l'UNIVAC dont les données sont stoquées sur bande magnétiques.
En 1953, IMB lance l'IBM 701 puis ensuite le 704 et 709 et 650.
Les transistors (1955-1965)
Après les tubes à vide, il y eu les transistors. Beaucoup plus rapide, plus fiable et moins cher que les tubes.
C'est aussi à cette période que des languages plus évolués comme le FORTTRAN et le COBOL apparaissent. Ainsi que des composants comme des imprimantes ou des bandes magnétiques.
En 1960, le premier mini-ordinateur, le DEC PDP-1 ($120000), ainsi que le premier écran graphique et premier jeu vidéo.
En 1964, premier super ordinateur scientifique (qui introduit la notion de paralléllisme, c'est adire plusieurs unités fonctionnelles travaillant en même temps) et de coprocesseur pour s'occuper des tâches et des entrées-sorties
En 1965, le DEC PDP-8 ($18000), premier ordinateur de masse avec 50000 exemplaires vendu. Introduit le concept de bus pourinterconnecter les différents éléments de l'ordinateur
Les circuits intégrés (1965-1970)
Les circuits intégrés sont essentiellement de très petits trasnsitors dans une petite boite. Encore une fois: moins cher, plus fiable et plus rapide
En 1958, le premier circuit imprimé par Texas Instruments
En 1964, première gamme d'ordinateurs par IBM qui soit compatibles entre eux mais ayant des puissances croissantes en fonction des utilisateurs (modèles 30/40/50/65). Et multiprogrammation (plusieurs programmes en mémoire) et émulation des modèles précédents (1401 et 7094) par microprogrammation.
En 1969, création de MULTICS et UNIX (qui donnera Linux et macOS)
Microprocesseurs (1970-???)
Toujours pareil, plus petit, moins cher, plus performant et plus fiable.
En 1971, premier microprocesseur (ayant une puissance similaire à l'ENIAC)
En 1973, création du language C pour le développement de UNIX
En 1978, création de la famille de processeur x86 par Intel. Comme une garantie que tous les processeur de cette famille soit compatibles entre eux car le jeu d'instructions est standardisé.
En 1981, design publique du IBM personal computer permetantde faire un stadnard au niveau de tout l'ordinateur.
En 1984, lancement du Apple Macintosh avec une interface graphique grand public.
L'évolution des performances
A partir des années 70s, avec l'intégration toujours plus poussée des composants sur une puce et l'augmentation de la capacité de calcul
En 1965 Gordon Moore, constate que depuis 1959, la complexité des circuits intégrés à base de transistors double tous les ans à coût constant. Et il postule que cela va continuer ainsi; c'est la première loi de Moore.
En 1975, il revoit sa loi, il précisa sa loi en disant que le nombre de transitors sur une puce de silicium (microprocesseurs, mémoires) doublera tous les deux ans. C'est la deuxième loi de Moore. Qui s'est avérée être assez proche de la réalité jusqu'a 2010.
Avantages et inconvénients de l'intégration à large échelle
Avantages:
- Augmentation de la capacité des puces mémoires
- Augmentation de la vitesse, performance et sophistication des composants (distances plus courte et donc fréquence d'horloge, nombre d'instructions par secondes) plus grande
- Plusieurs composants sur une seule puce
Inconvénients:
- Il n'est pas possible de réduire infiniment la taille d'un transistor, il faut un minimum d'atomes our que ce soit suffisament fiable, et les limites atomiques seront bientot atteintes.
- Une densité forte induit des phénomènes parasites et fuites de courrant
- La quantité d'énergie dissipée devient problématique (ça chauffe trop). C'est à cause de la "friction" des électrons. Les transitors libèrent de l'énergie. Et la quantité d'énergie est liée à la tension et à la fréquence. Mais la tension ne peut dessendre en dessous de 0.9V sans causer des problèmes techniques. Et la fréquence est ainsi plafonée à 5GHz.