Quand un stagiaire s'amuse à porter Darwin sur ARM

Christophe Laporte |
En 2010, le Platform Technologies Group, une sous-division du département CoreOS chez Apple, a passé un certain temps à porter Darwin sur un processeur ARM de Marvell.

Comment a filtré cette information ? Le plus simplement du monde… En 2009, Tristan Schaap a effectué un stage de quatre mois au sein de cette division, période durant laquelle il a été affecté à ce projet. Et le stage s'est plutôt bien passé pour Tristan Schaap, puisqu'il est ingénieur dans le département Core OS depuis maintenant deux ans.

Son mémoire était sous embargo, mais il a été rendu public en milieu d'année dernière. L'étudiant explique que le projet en question comportait trois objectifs : mettre au point le buildsystem en route pour compiler le noyau et ses extensions; compiler et faire démarrer le kernel en mode "single user"; faire démarrer le système en mode multi-utilisateur.

Tristan Schaap raconte avoir travaillé avec une puce MV88F6281, un processeur compatible ARMv5te de Marvell. Dans son mémoire, l'étudiant affirme que cette puce a toutes les fonctionnalités d'un processeur moderne.

Lors de ces quatre mois, le stagiaire est parvenu à l'essentiel des objectifs qu'il s'était fixés. Toutefois, il indiquait qu'il lui restait encore un peu de travail pour avoir un résultat convenable.


Le sous-titre de son mémoire est pour le moins éloquent : "ARMing the Snow Leopard". Dans sa préface, il explique également du fait du caractère innovant de ce projet, il est dans l'impossibilité de dévoiler certains détails. Petit détail cocasse, on y apprend la devise de la Platform Technologies Group : "Nous faisons de la plomberie, si nous faisons bien notre travail, vous ne la voyez jamais !"


Rappelons que Tristan Schaap a donc travaillé sur Darwin, qui pour aller vite est la partie basse de Mac OS X. Qu'Apple s'amuse à porter les fondations de son système n'a rien de surprenant. Quand Mac OS X était sur PowerPC, Apple avait déjà mené des projets similaires sur Intel, mais pas seulement… Le but de ce projet est toutefois curieux sachant qu'iOS partage dans ses tréfonds de nombreux points communs avec son grand frère.



Quelle idée avait Apple dans la tête ? Proposer un MacBook Air sous architecture ARM ou une tablette Mac OS X ? L'année dernière, il se murmurait que la firme de Cupertino avait dans ses labos des prototypes de MacBook Air équipés du processeur A5 (lire : Un MacBook Air A5 en test chez Apple ?).



On rappellera que tout récemment l'analyste Richard Gardner était ressorti d'une réunion avec Tim Cook avec le sentiment qu'Apple ne produirait pas de MacBook Air avec processeur ARM (lire : Pas de MacBook Air avec processeur ARM ?).
Tags
#ARM
avatar Florent Morin | 

Avec les nouveaux ARM compatibles avec la paravirtualisation, on peut imaginer un OS X et un iOS tournant en parallèle. Sans consommer plus.

avatar Tronculaire | 

Quand on voit ce qu un travail capital peut etre abattu en 4 mois par un stagiaire, avec 100 millions de $ (une broutille pour Apple), ils pourraient nous pondre un nouvel ilife et un iwork non?...

avatar Dr_cube | 

Petit à petit les Mac et les appareils iOS vont converger, donc on va voir des appareils un peu hybrides. iOS tourne depuis le début sur Intel (le Simulateur). Il est logique que Mac OS X soit adapté également pour ARM dans les labos d'Apple.

Peut-être que ce n'est pas pour faire un MacBook Air ARM ou un iPad Intel : le résultat sera peut-être dans un appareil qui n'existe pas encore, entre les deux.

avatar Tronculaire | 

iOS n est il pas en gros un MacOS avec une nouvelle interface et donc n ont ils pas commencé par porter le kernel sur ARM pour lancer l iPhone?...

avatar lmouillart | 

Les CPU exploitant le jeu d'instruction ARMV8 (qui apporte entre autre le 64bit) arriveront fin 2014 pas avant. Ensuite les performances de la FPU & de l'unité vectorielle des ARM sont très très faible, en gros tout ce qui est calcul passe très mal). C'est notamment pour cela que dans les architecture Tegra NVidia les a supprimé en faisant du GPGPU. Donc les cpu de 2014 arm ne permettront pas sur aperture, imovie, fcpx ... de faire ce que font les CPU intel actuel.
D'ici la ,les CPU intel se seront bien améliorés. Bref si un jour switch il y a c'est vraiment vraiment pas pour tout de suite sur un latop/desktop fait pour autre chose que de la bureautique.

avatar wwwkeustanet | 

HP devrait prendre plus de stagiaires

avatar victordallery | 

Je rêve d un Mac os X sur iPad pour l utiliser à 100% !

avatar nicogala | 

[quote=S. JOBS]Nous ne ferons jamais de téléphone... boom ![/quote]
Bref, nous ne ferons jamais de Mac ARM... ouais-ouais-ouais...

avatar joneskind | 

@Tronculaire :

Je me suis posé la même question ! Il doit nous manquer certaines bases d'informatique visiblement ^^

Sinon, pour en revenir à cette news, ça me semble assez normal qu'Apple ait rapidement cherché à adapter son noyau Darwin à l'architecture ARM pour une raison assez simple. Elle vend aujourd'hui bien plus de processeur ARM que d'Intel, donc elle a une opportunité de négociation du prix de ses proc. Maintenant, y a plus qu'à attendre qu'ARM propose le proc qui va bien.

avatar Tom.P | 

Moi j'aime bien l'image de l'iPad pro :)

avatar joneskind | 

@lmouillart :

Je ne suis probablement pas assez callé en informatique pour comprendre ce que tu racontes, mais j'avoue quand même avoir un mal fou à voir en quoi les proc ARM seraient moins performants que les Intel quand je vois la puissance de calcul des iPad et autres iPhones. Afficher des jeux de si bonne qualité avec si peu de RAM et un proc aussi ridiculement petit... Gérer des flux audio sans latence (GarageBand) faire du montage video avec autant de fluidité (Avid, iMoviesur) des devices aussi ridicules...

avatar Abudah (non vérifié) | 

Article intéressant, je voulais juste signaler à la rédaction qu'il manquait un petit "le" au début du 5ème paragraphe à "pour le moins". je n'ai pas la prétention de vous corriger, vous faites un super boulot! :D

avatar fessebook | 

L'ère du post Pc est en marche... ;-))

avatar elamapi | 

@joneskind

Concernant la video/3d, ce n'est pas ARM qu'il faut féliciter mais powervr. C'est la partie/puce graphique qui s'en charge.

Concernant la partie son, c'est juste du traitement de son "basique".

Quand on parle de calcul, ça serait par exemple pour du traitement lourd (calcul 3D en raytracing, calcul de matrice enorme).

Un exemple concret. Siri.

Un iphone n'est pas capable d'effectuer le traitement de reconnaissance vocale. Il filtre juste le signal pour l'envoyer à des serveur (c'est le "SON" qui va au serveur, ce ne sont pas les mots détecté).

Quand il s'agit de calcul pur, ARM ne peut, pour le moment bien sur, rivaliser avec des archi serveurs/desktop.

avatar lmouillart | 

En terme de réduction de consommation d'énergie et d'amélioration du poids du MBA d'une 100ène de gramme Apple aura une solution : les écrans OLED même si ils sont actuellements totalement hors de prix en grande taille et que la quasi totalité de la production est maitrisé par El Diablo (Sammy).

avatar MBagnick | 

Les mac passeront à l'ARM à terme avec une puce construite par Apple. Mais pas avant 2 ans car l'architecture V8 (64 bits) d'ARM n'est qu'au stade des spécifications. RDV en 2014.

avatar karting1234 | 

iPad tournant sous Mac OS ou MacBook tactile ... on t'attend !

avatar Pepoto | 

Il n'est pas anodin qu'un mémoire sorte.
Un rappel indirect plutôt fin envoyé à Intel par Apple.
"Au fait, OSX fonctionne très bien sur ARM. Et toi, ça va ?" ^^

avatar Stech72 | 

La techno des co proc qui revient ????

Une puce Intel secondé par une ARM … ?? la i7 ne fonctionnant que pour appliquer de lourdes tâches ….

Tout cela dans un Macbook Air sur le quelle on le débarrasse de son écran et de son clavier physique pour en faire une super tablette tactile ? …..

comme

Un MacPad ou un Air Pad avec 8Go de Ram 250Go de HDD_SSD(6g) et un i7 en mode dock station et un ARM en mode mobilité …. ?

techniquement parlent ,la marge est très mince entre un mac Book Air et un iPad

et

Sincèrement je crois que nous ne verrons jamais MacOS 11 …. le jour vient ou ce sera MaciOS ..

avatar SimR69 | 

iOS n'est-il pas déjà basé sur un Darwin tournant sur ARM ?

avatar elamapi | 

Pour du Low perf, why not.

Maintenant, avant d'avoir les perf d'une ATI ou Nvidia simplement milieu de game dans un air ou un idevice ... On à de la marge.

Avant d'avoir un stockage correct sur un Air ou un iDevice, on à de la marge.

Bien sur. Le jour ou on aura tous 10Mb full duplex avec un ping a 45ms sur no idevice, alors oui, on pourra se contenter de 16Go et d'une carte video bas de game (stockage distant / rendu déporté à la onlive).

Mais actuellement, essayez 2 secondes vous contenter de 64Go de stockage et d'un rendu low cost.

avatar Ali Ibn Bachir Le Gros | 

M'ouais, à mon avis Mac os X sur ARM, il faut oublier. Pas parce que ce ne serait pas faisable à terme, mais plutôt parce que Mac OS X est sur la fin tout simplement.

Apple prépare doucement sa transition vers les appareils mobiles et l'entreprise se débarrassera de ses ordinateurs dès que le marché sera mûr pour ça.

avatar hartgers | 

Ni Mac OS X, ni iOS ne vont disparaitre : ils vont fusionner. Merci à plusieurs intervenants (lmouillart, elemapi, MBagnick) pour vos réponses claires sur la transition vers ARM, 64 bits qui plus est. La convergence entre les deux systèmes est une réalité, elle amènera des usages complètement différents de ceux que nous connaissons

@elemapi : il serait, je pense, plus rapide d'augmenter les capacités de stockages à plus bas coûts que d'attendre que les différents pays du monde s'équipent d'un réseau ultra-performant. Le pari de Google est un coup d'essai honorable, mais malheureusement encore utopique. La solution d'Apple, si elle devient un peu plus complète, est probablement préférable en l'état.

avatar Dwigt | 

Même si Apple n'a pas pour intention de sortir des Macs sous ARM, il y a toute une série de raisons pour lesquelles c'est intéressant de porter Darwin sur une autre architecture.
En particulier, en cas de bug sous une des architectures, ça permet de savoir si le bug se situe au niveau du code, du compilateur ou du processeur en comparant le comportement.
C'est aussi pour ça qu'Apple maintenait Mac OS X en parallèle sur architecture x86 avant même d'envisager de switcher : c'est plus facile de déboguer.

avatar lmouillart | 

@Dwigt Apple sortira très vraisemblablement tôt ou tard des Mac sous ARM.
Il y a un quasi monopole : Intel, tous les constructeurs on intérêt à passer sur de l'ARM.
Voici pourquoi :
C'est bien moins cher qu'un couple Intel/NVidia-ATI
On fait ce qu'on veux, la FPU et SIMD sont mauvaise on la supprime comme pour le Tegra et on fait du GPGPU
On veut intégrer des fonctions dans le SOC : des dsp, des core, on est pas limité à une gamme éditer par un seul constructeur.
Il n'y a pas d'architecture ARM contrairement aux architecture PC donc on fait ce qu'on veut.

Si on prends le cas précis d'Apple c'est un grand pas en avant cela permet d'hériter des avancés sur les CPU et GPU en ne les partagent pas. Bref un sacré facteur de différenciation. Pour le moment à pas le design du boitier et deux trois bricoles un Mac = un Dell = un Lenovo ...

Ensuite en terme de performance ARM est partie de très très loin avec des perf plus qu’exécrable mais sur les opération sur les entier 32bits ils talonnent les mauvais cpu intel, il y a deux ans les performances était très différentes.

A titre perso je pense que la solution NVidia est la meilleure : se passer des FPU et SIMD moisi et passer sur du GPGPU, la contrainte est d'utiliser massivement OpenCL ou CUDA en place des habituelles options de compilations des instructions NEON (SIMD). En plus cela fait de la place sur le die du SOC pour mettre plus d'unités de traitement d'entier ou de GPU et de simplifier l'architecture.
Pourquoi ça fonctionne ? C'est simple de nombreux centres de calcul sont passés sur des solution x64 + GPGPU nvidia tesla (http://www.nvidia.com/object/tesla_computing_solutions.html).

Bref avec une solution de ce style bien maîtriser, on peut faire du ménage sur les cartes mères en intégrant un peu tout dans une grosse puce, on à la possibilité d’élargir plus facilement la taille des bus de communication GPU CPU et mémoire.

avatar lmouillart | 

On a plus de place dans la machine pour mettre de la batterie. Les prochains SOC Tegra auront un baseband (donc 4G dispo vers les 2014 => tiens ça tombe bien).

Les macbook/pc cela sera quoi ? Deux bloc (qui représentent actuellement la partie UC+clavier et la partie écran), ces deux blocs seront OLED et multitouch. En gros le clavier sera ré organisable en clavier/table de montage vidéo etc .... idem pour la partie du haut. Bref un super Ipad avec la possibilité d'avoir un écran de 26" ou 13" suivant l'utilisation.

Avec le NFC/Blutooth tu pourra beamer des donner d'un iphone ou un ipad à un autre en glissent les infos vers lui.

avatar elamapi | 

Oui, enfin, dans un cas comme dans l'autre, la conclusion est:
Faut de la puissance (que ce soit dans le GPU, ou dans le CPU, ou dans la FPU ou vous voulez mais il en faut).

Il faut également du stockage ET il faut également (si on entend remplacer nos bon vieux ordi) des grands écran (hein, perso, sur mon bureau, 11" ça me tente pas, que soit pour une video, un jeu, ou de la productivité).

Donc, je ne suis pas devin, mais avant de voir nos Macs/PCs disparaitre ... je pense que beaucoup seront en maison de retraite avant.

C'est bien beau dire que en 2014 ARM va passer en 64bits et qu'il sera capable de faire un rendu Maya / Autocad en moins de 3 siecle.

Mais en 2014, Maya et Autocad, ils auront evolué pour proposer des fonction encore plus aboutie, qui demande encore PLUS de puissance.

Ainsi dessuite ...

Avant de détroner intel ... haha ... y a beaucoup de marge. On en reparle dans 10 ans ...

avatar elamapi | 

On te parles pas de conso, mais de performance / puissance.

Sinon, au lieu de réduire la conso, on peut aussi augmenter la capacité de la baterie.

Mais c'est pas le sujet.

avatar cfendt | 

quand on parle de MacBook Air ARM tout le monde pense à un ordo sans proc Intel...
Mais, perso, j'imagine très bien un ordinateur avec deux CPU : Intel + ARM
Safari, (sauf les processus associés à des pages FLASH), Mail, Aperçu, l'éditeur de texte, ... pourraient tourner sur la partie ARM et le reste tirera parti de la puce Intel...
En gros :
- en usage mobile, on a une conso de l'ordre de 1W (voir moins) sur du ARM (et là, coté autonomie... que du bonheur !!!)
- en usage intensif, le proc Intel s'allume et on démarre les applications gourmande !!!

avatar Marc-Alouettes | 

@IMouillard :"Les CPU exploitant le jeu d'instruction ARMV8 (qui apporte entre autre le 64bit) arriveront fin 2014"

Tu oublies quelques "détails" dans ton raisonnement.
1) Apple n'a pas réussi a convaincre Motorola de développer rapidement un processeur RISC performant du temps du PowerPC alors que son OS était prêt pour le 64bit. Elle a du se rabattre sur le CISC de Untel.
2) Ton petit doigt t'a sans doute dit ce que tu prévois mais tu vas sûrement avoir de grosses surprises d'ici le printemps 2012 et non l'hiver 2014. ( )

Prépares un stock de mouchoirs

avatar Marc-Alouettes | 

@Stech72: "Sincèrement je crois que nous ne verrons jamais MacOS 11 …. le jour vient ou ce sera MaciOS .."

Parfaitement d'accord avec toi et je ne serais pas étonné que MaciOS 1.0 voit le jour avec l'iPad 3 avec un processeur RISC car cela fait longtemps qu'Apple attend une concurrence qui ne vient pas mais je pense qu'une nouvelle révolution est en cours pour très bientôt !

avatar lmouillart | 

@Marc-Alouettes "Ton petit doigt t'a sans doute dit ce que tu prévois mais tu vas sûrement avoir de grosses surprises d'ici le printemps 2012 et non l'hiver 2014. ( )
Prépares un stock de mouchoirs "

Les SOC Apple et des autres constructeurs sont basés sur les jeux d'instructions ARM + les designs proposés par ARM. Le premier point (jeux d'instruction est sorti l'année dernière, le second sort an 2014), donc les CPU basés dessus sortiront après.
Tu peux toujours fantasmer sur autre chose cela ne changera rien à la réalité.

avatar fboyer74 | 

Et puis d'abord mouillart ça s'écrit avec un t, pas avec un d

avatar Marc-Alouettes | 

@lmouillart: Apple n'a pas attendu ARM pour développer OS10 et iOS

ARM est une norme (à laquelle Apple a largement participé) pour processeur RISC (Reduce Instruction Set Computer) qu'Apple maîtrise depuis bientôt 10 ans et qu'elle n'a pu imposer seule avec Motorola. Next (de Steve Jobs) tournait déjà sur RISC. ARM est déjà présent dans des mobiles depuis un an et il faudrait être naïf pour imaginer que l'iPad 3 soit basé sur du CISC de chez Untel ou autre !
Il ne s'agit donc pas d'un fantasme mais d'une réalité qui va s'imposer très bientôt pour tous (Apple ayant toujours au moins trois ans d'avance).

avatar Sopilou | 

@Marc-Alouettes

Donc le nouvel iPad 3 serait compatible MacOS X ?

avatar Marc-Alouettes | 

@sopilou: L'iPad2 a déjà pas mal de compatibiltés avec OS10 via iOS5 mais je ne serais vraiment pas étonné qu'Apple sorte MaciOS 1.0 à l'occasion de la sortie de l'iPad 3 .

CONNEXION UTILISATEUR