Projet « Marklar » : Mac OS X sur Intel

Depuis quelques jours, des informations intéressantes sortent sur le projet « Marklar » d’Apple. Ce nom de code (Marklar est le nom d’une race d’extra-terrestres dans South Park) est celui de la version x86 de Mac OS X. Si Tiger (10.4.4) est le premier OS compatible officiellement avec les CPU Intel, Mac OS X tournait depuis des années sur x86 chez Apple. Pour la petite histoire, j’ai appris pour la première fois l’existence de ce projet sur (feu) X86-secret, dans le forum.

Bah, c’est un noyau BSD et le noyau BSD existe sur x86 depuis longtemps… Ceci dit, je sais pas ce que c’était (Mac OS, j’en ai un peu rien a cirer), mais ca tournait sur un P4 et il y était marqué « Panther : Project Markar » sur le fond d’ecran, a part ca, c’est tout

C’est sur Quora qu’on a un peu de l’histoire de Marklar. Globalement, c’est un inégnieur qui voulait bosser de chez lui et qui a donc « choisi » un projet qui ne nécessitait pas de travailler en équipe, porter Mac OS X sur PC. En décembre 2001, Mac OS X est en version 10.1 (Puma) et il fonctionne donc sur les PC de cet ingénieur, monté à la main. Un responsable d’Apple (Bertarnd Serlet) vient voir le travail et demande s’il est possible d’installer Mac OS X sur un Vaio de chez Sony, et il a une réponse : oui, en trois heures. Ce qui selon le post sur Quora, a été fait.

Dès 2002, Apple trouve de l’intérêt à ce portage et lance le projet, les premières rumeurs datent d’ailleurs de début 2002.

Il est intéressant de noter que c’est la femme de l’ingénieur qui a donné le nom du projet, et qu’elle a dû « oublier » ce qu’elle avait vu.

Dans les faits, il a fallu attendre 2005 pour voir un Mac sous Intel, avec le DTK, un Pentium 4 sous Mac OS X pour les développeurs.

MacGeneration, qui a ses sources, a une information intéressante, venant d’une personne ayant eu vent à l’époque de Marklar : un des soucis a été la gestion du big endian des PowerPC face au little endian des x86. Ce nom fait référence aux voyages de Gulliver, mais surtout à l’organisation en mémoire : les octets rangés de gauche à droite sur PowerPC et de droite à gauche en x86, ce qui a visiblement posé des problèmes au niveau de l’affichage avec par exemple des images inversées…

Globalement, le portage sur Intel est donc très ancien (il faut bien dire que NeXT fonctionnait à l’époque sur les 80486) mais il a fallu un certain temps avant qu’Apple ne s’y intéresse vraiment. Je me demande si d’autres projets de ce type existent chez Apple, sachant que des rumeurs de portage de Mac OS X (et pas iOS) sur ARM sont courantes et que le portage sur IA-64 (Itanium) a déjà été évoqué…