Tech

Linux démarre en 4,76 jours sur le processeur Intel 4004

Une photo du circuit imprimé Linux/4004 personnalisé de Dmitry Grinberg.
Agrandir / Une photo du circuit imprimé Linux/4004 personnalisé de Dmitry Grinberg.

Le pirate informatique Dmitry Grinberg a récemment réalisé ce qui pourrait sembler impossible : démarrer Linux sur l’Intel 4004le premier microprocesseur commercial au monde. Avec seulement 2 300 transistors et une vitesse d’horloge d’origine de 740 kHz, le processeur de 1971 est incroyablement primitif par rapport aux normes modernes. Et il est lent : il faut environ 4,76 jours au noyau Linux pour démarrer.

Initialement conçu pour une calculatrice japonaise appelée Busicom 141-PF, le 4004 4 bits trouvé une utilisation limitée dans les produits commerciaux des années 1970 avant d’être remplacés par des puces Intel plus puissantes, telles que les 8008 et 8080 qui alimentaient les premiers ordinateurs personnels, puis les 8086 et le 8088 qui a lancé l’ère IBM PC.

Si vous êtes sceptique quant à la possibilité de réaliser cet exploit avec un 4004 brut, vous avez raison : le 4004 lui-même est bien trop limité pour exécuter Linux directement. Au lieu de cela, Grinberg a créé une solution tout aussi impressionnante : un émulateur qui fonctionne sur le 4004 et émule un processeur MIPS R3000, l’architecture utilisée dans le Station DEC 2100 poste de travail sur lequel Linux a été porté à l’origine. Cet émulateur, associé à une émulation matérielle minimale, permet à un Linux Debian simplifié de démarrer à partir d’une invite de commande.

Linux/4004.

Grinberg est pas un étranger Il a réalisé des prouesses en exécutant Linux dans des endroits improbables. Comme il l’explique sur son site Web, « En 2012, j’ai exécuté un vrai Linux sur un microcontrôleur 8 bits (AVR), établissant ainsi un nouveau record mondial pour la machine la moins chère à avoir jamais exécuté Linux. » Après que d’autres aient amélioré ce record ces dernières années, il a décidé de se surpasser et de surpasser les autres en visant le tout premier microprocesseur.

Le démarrage long et lent

Pour faire fonctionner Linux sur le 4004, Grinberg a dû surmonter de nombreux défis. Le 4004 a une ROM et une RAM extrêmement limitées, aucune interruption et il manque même des opérations logiques de base comme AND et OR. L’émulateur de Grinberg utilise intelligemment des tables de recherche et d’autres astuces pour tirer le maximum de performances du processeur primitif.

Le matériel final utilise le 4004 (overclocké à 790 kHz) ainsi que plusieurs autres puces de support de période correcte du chipset MCS-4 d’Intel. Il comprend un écran VFD pour afficher la sortie Linux et peut accepter une entrée via une connexion série. L’ensemble de la configuration consomme environ 6 W.

Pour mettre tout cela en place, Grinberg a conçu un circuit imprimé personnalisé sans vias (chemins d’un côté du circuit imprimé à l’autre) et uniquement des traces à angle droit pour une esthétique rétro. Il est conçu pour être fixé au mur comme une œuvre d’art, exécutant lentement des commandes Linux au fil des jours ou des semaines.

Bien qu’il n’ait pas d’utilité pratique, le projet Linux/4004 démontre la flexibilité de Linux et pousse l’émulation à ses limites. Grinberg envisage la possibilité de proposer des kits ou des cartes entièrement assemblées pour ceux qui souhaitent expérimenter Linux dans sa version la plus lente, bien que cela ne soit pas encore définitif.

Les détails complets du projet, y compris les schémas et le code source, sont disponibles sur Site Web de GrinbergPour ceux qui s’intéressent à l’informatique vintage ou aux implémentations Linux extrêmes, c’est un aperçu fascinant de ce qui est possible avec la technologie des années 1970 et beaucoup d’ingénierie intelligente.

Source link