Home page de
Michel Casabianca

Actualité
oBlog
oNo Apple
oDebian sur Zotac Nano CI320
oDebian sur Acer C720P
oUn an avec un Raspberry Pi
oLes interfaces du GO
oParseurs YAML pour Go
oIntroduction à YAML
oNotes Formation Perl
oUtiliser le module Ruby MySQL
oUtiliser le module Ruby DBI
oScripts Python avec DB-API

Outils
oBabel
oBee
oTâches Ant
oInstalleur Java
oVisual SQL

MacOSX
oViewCVS sous MacOSX
oEmacs sous Panther

Conférences
oOutils J2EE Open Source
oDév. XML en Java sous Linux
oOutils de dév. Java sous Linux

Articles XML
oIntroduction à XML
oIntroduction à XSLT
oDéveloppement XML en Java
oGénérer des sites web avec Ant
oDTD Ant
oProject X

Articles Java
oTips CodeGuide
oKFM et Jars
oMails en Java
oJava et préprocesseur
oJava et images
oThreads
oÉvénements
oAstuces

Jeux
oAwele
oAtomX
oCore Warrior
oSolitaire
oSpiceWars
oTangram
oTaquin

Simulations
oJeu de la vie
oFourmi de Langton
oTri du couvain
oPiste de chasse

Graphisme
oFractales
oImages 3D
oPowered by ...
oEcce Duke
oTIE

À propos
oDe l'auteur
oDe ce site


Powered by

Powered by Debian
Présentation | Histoire | Red Code | Core Warrior | Télécharger

Core Warrior - Histoire

Michel CASABIANCA - casa@sweetohm.net

C'est un article de A.K. Dewdney ("Deux programmes ennemis s'affrontent à coups de chiffres binaires" paru dans "Pour la science") qui est à l'origine de CoreWar. Cet article (comme beaucoup d'autres du même auteur pour lequel j'ai le plus grand respect) a provoqué un véritable engouement pour cette forme contemporaine des jeux du cirque où les gladiateurs sont des programmes informatiques.

L'idée de ce jeu est venue à l'auteur après qu'il aie entendu une anecdote (fausse, mais c'est un détail) qui parlait d'un programme (Creeper) se dupliquant lui même lorsqu'il était exécuté. Ce programme envahissant progressivement le réseau de la société où il avait été développé n'a pu être éradiqué qu'à l'aide d'un autre programme (Reaper) dont la mission était de traquer et détruire les exemplaires de Creeper qu'il rencontrait puis de se détruire lui même.

L'auteur propose dans cet article un langage informatique simple (proche de l'assembleur) pour coder de petits programmes belliqueux : le Red Code. Pour une description détaillée de ce langage, voir la rubrique "Red Code" du menu ci-dessus. Les programmes s'exécutent dans la mémoire d'un ordinateur "virtuel" constituée de 8000 cases. Chaque case peut contenir une instruction. Les deux programmes sont installés aléatoirement dans une case de la mémoire, puis une instruction de chacun est exécutée successivement jusqu'à ce qu'un des deux programmes plante (par exemple si le pointeur de l'instruction à exécuter pointe sur une case contenant une donnée) ou que la partie soit nulle (après un nombre de cycles déterminé sans plantages d'un des concurrents). Le dernier programme opérationnel étant le vainqueur.

De nombreux programmeurs se sont pris au jeu, et rapidement des tournois se sont organisé. Il a été écrit de nombreuses versions de machines virtuelles pour faire tourner ces programmes Red Code (dont la plus célèbre est sans aucun doute Mars) et encore maintenant des compétitions permanentes ont lieu sur des sites où les concurrents déposent leurs programmes. Les versions du langage Red Code se sont succédées (84, 86 et 88), et la dernière en date est la version 94.

Ce que Dewdney n'avait pas prévu, c'est que des esprits perfides ont eu l'idée de programmer des gladiateurs en langage machine pour infecter de vrais systèmes. C'était la naissance des virus informatiques qui allaient se répandre comme une traînée de poudre. Il explique les conséquences de son idée dans un autre articles "Virus, parasites et autres maladies des ordinateurs", mais il était un peu tard... C'est le propre des grands esprits de provoquer des mouvements qui les dépassent, et Core War allait engendrer une descendance nombreuse et particulièrement virulente !

Liens Core War

La référence absolue de Core War est la série d'articles parus dans Scientific American (et traduits dans "Pour la Science"). Ces articles sont disponibles (sous forme d'images JPG, longues à télécharger...) à l'adresse :

http://www.koth.org/info/sciam

Le site internet de référence me semble être King Of The Hill (koth pour les intimes) à l'adresse :

http://www.koth.org

On peut y télécharger les instructions pour réaliser une Machine Virtuelle Core War (il y est fait référence dans le premier article de Dewdney), les standards Core War (88 et 94) ainsi que de nombreux tutorials et exemples de Guerriers.

Enfin, il faut noter une série d'articles dans le "Virus informatique" ( à partir du numéro 8) avec le code d'un compilo et d'un VM en Basic. Le site du Virus est à l'adresse :

http://www.acbm.com

Pour finir, un site qui organise une championnat de Core War :

http://kinux.ifrance.com/


Présentation | Histoire | Red Code | Core Warrior | Télécharger


Dernière mise à jour :  2000-02-07