Certains ont du temps à perdre : Dietmar, un Allemand, a modifié le noyau de Windows XP — un système lancé en 2001 — pour qu'il puisse fonctionner sur un processeur 80486. Pour ceux qui ne connaissent que les systèmes d'Apple, la comparaison serait « Quelqu'un modifie Mac OS X Panther pour qu'il se lance sur un processeur Motorola 68040 ».
Windows XP, donc, nécessite officiellement un Pentium alors que Windows 95, lui, fonctionne même sur un simple 386. Pour bien placer les choses dans le temps, Windows XP a donc été lancé en 2001, les premiers 486 datent de 1989 et le Pentium a été introduit en 1993.
La modification nécessaire n'est pas énorme mais a demandé un peu de réflexion : le noyau de Windows XP emploie une instruction qui est apparue avec le Pentium, cmpxchg8b
. Pour faire (très) simple, elle permet de comparer deux valeurs (le cmp
dans son nom) et éventuellement de déplacer 8 bits en fonction du résultat (le xchg
, pour eXCHanGes), comme l'explique Hack A Day. Dietmar a donc modifié le noyau de l'OS (plus exactement Windows XP Service Pack 3) pour remplacer l'instruction par un équivalent compatible avec les processeurs 486, évidemment plus lents.
Les versions modifiées sont disponibles sur archives.org pour les versions anglophones et germanophones du système d'exploitation. Une vidéo montre le résultat dans un émulateur réglé pour simuler un 486. Rappelons quand même que Windows XP nécessite 64 Mo de RAM — une valeur élevée, assez rare sur un 486 — et un processeur avec une fréquence nettement plus élevée. À l'époque, Microsoft recommandait une fréquence de 233 MHz au minimum, et les 486 fonctionnent habituellement entre 16 et 100 MHz (chez Intel).