Connexion
Abonnez-vous

iOS, macOS : Apple publie les sources à jour du noyau XNU

Oh, du code ARM

iOS, macOS : Apple publie les sources à jour du noyau XNU

Le 02 octobre 2017 à 12h30

En fin de semaine dernière, Apple a publié les sources sur GitHub de son noyau XNU. Ce n’est pas une nouveauté en soi, l’éditeur le faisant après chaque nouvelle version de macOS. C’est par contre la première fois qu’une déclinaison ARM fait son apparition.

Pour bien comprendre ce qu’est XNU, il faut rappeler certains détails historiques. macOS, tel qu’on le connait aujourd’hui, est la résultante du rachat de NeXTSTEP par Apple en 1997. Une opération qui avait d’ailleurs signé le grand retour de Steve Jobs dans l’entreprise qu’il avait cofondée.

Quand il fut question pour Apple de lancer Mac OS X, c’est NextSTEP qui fut retenu comme base du nouveau système. Cette base se nomme actuellement Darwin, qui comprend entre autres le noyau XNU (« X is Not Unix »). XNU hérite en grande partie des travaux menés par l’université Carnegie-Mellon sur le noyau Mach et de ceux de Berkeley sur BSD. Le résultat est un noyau hybride.

Pour la première fois, du code ARM

C’est ce qui explique la publication du code de chaque nouvelle version de XNU. Apple puise en effet largement dans le monde de l’open source pour ses produits. Aussi, la publication du nouveau XNU sur GitHub après l’arrivée de High Sierra n’a rien d’un hasard ou même d’une nouveauté. Cependant, Apple fournit pour la première fois une version ARM du code.

On ne sait pas exactement pourquoi cette publication n’intervient que maintenant. Le noyau de macOS est pratiquement le même que celui d’iOS, qui fonctionne sur ARM depuis le début. Lors de la présentation du premier iPhone en 2007, Steve Jobs avait pour rappel indiqué partir d’une « fondation solide », à savoir Mac OS X. Dans un premier temps, le système s’était appelé iPhone OS, avant de devenir l’iOS que tout le monde connait.

Précision importante : toutes les sources fournies sont sous licence Apple Public Source License 2.0. Elle est considérée comme libre et résulte d'une collaboration entre l'entreprise et la Free Software Foundation. Elle a cependant deux limitations qui peuvent s'avérer bloquantes : elle est incompatible avec la GPL et n'est pas copyleft, puisqu'elle autorise le mélange avec du code propriétaire.

Du code, mais aucune explication

L’arrivée du code ARM peut signifier qu’Apple souhaite simplement rétablir l’équilibre en montrant les modifications spécifiques à iOS, puisque l’architecture ARM est au cœur des iPhone. Cela pourrait également indiquer que l’entreprise travaille sur une version ARM de macOS. En fait, cette éventualité a sans doute déjà été testée. Après tout, les rumeurs du projet Marklar s’étaient avérées exactes : Apple, qui n’utilisait que du PowerPC dans ses Mac, avait compilé en secret des versions x86 de son système d’exploitation. Et la société d’annoncer sa transition vers Intel.

L’idée de Mac embarquant des SoC ARM n’a rien de neuf. Beaucoup suspectent Apple depuis des années de vouloir notamment lancer un MacBook ainsi équipé. La firme pourrait alors sans doute évoquer une autonomie conséquente. La question reste cependant la même : quid des performances ? Même si macOS et iOS partagent les mêmes fondations et – le plus souvent – les mêmes API, les usages d’un ordinateur ne sont pas les mêmes : on leur demande généralement des opérations plus intensives.

Le problème est qu’Apple n’a publié aucun message particulier pour accompagner ses sources. Le texte explicatif reste le même et évoque plutôt l’historique du noyau. L’entreprise souhaite-t-elle recueillir des avis de développeurs sur cette version ? Difficile à dire, tout comme pour l’éventualité d’un macOS compilé pour ARM.

Commentaires (11)

Vous devez être abonné pour pouvoir commenter.

Abonnez-vous
votre avatar

On le sentait venir avec le dernier soc. Je ne serai pas étonné de voir un MB arm dans deux ou trois générations.

votre avatar

“Showing  1,695 changed files  with 278,930 additions  and 53,551 deletions.”

Ca c’est du commit.

votre avatar

On appelle ça un f*g blob

votre avatar

Crois-tu ?github.com GitHub<img data-src=" />

Le nombre de changements dans un commit ne veut rien dire. Refactoring ou (surtout) commits squashés, ça donne ce genre de résultat.

votre avatar



L’idée de Mac embarquant des SoC ARM n’a rien de neuf. Beaucoup suspectent Apple depuis des années de vouloir notamment lancer un MacBook ainsi équipé.





On peut aussi imaginer un concurrent au Chromebook à la sauce Apple, c’est à dire un portable toujours connecté qui sont abordable (c’est à dire seulement la moitié d’un bras).

votre avatar







127.0.0.1 a écrit :



On peut aussi imaginer un concurrent au Chromebook à la sauce Apple, c’est à dire un portable toujours connecté qui sont abordable (c’est à dire seulement la moitié d’un bras).





ça n’arrivera pas <img data-src=" /><img data-src=" />



votre avatar

+1, “pas assez cher mon fils” <img data-src=" />

votre avatar

Ce serait tout de même surprenant de de voire un laptop OSX arm tant Apple essaye de pousser son iPad Pro comme une machine pouvant remplacer un laptop.

En plus la gamme de produits est déjà pas simple:




  • Un MacBook moins puissant mais plus cher qu’un iPad Pro&nbsp;

  • Un MacBook Air un peu plus cher qu’un iPad Pro 13 avec des perfs similaires, mais un écran et un châssis qui commence à dater&nbsp;

  • Un MacBook Pro 13 au même prix et plus puissant qu’un MacBook&nbsp;



    Un truc qui pourrait me paraître logique serait peut-être un MacBook au prix d’un MacBook Air avec un Soc ARM et qui viendrais remplacer les deux.

votre avatar







misterB a écrit :



ça n’arrivera pas <img data-src=" /><img data-src=" />



Abordable pour du Apple, il l’a précisé en parenthèse <img data-src=" />


votre avatar







grsbdl a écrit :



+1, “pas assez cher mon fils” <img data-src=" />





elle a tout d’une grande…


votre avatar







KP2 a écrit :



On appelle ça un f*g blob





les blobs sont sur la plage ?


iOS, macOS : Apple publie les sources à jour du noyau XNU

  • Pour la première fois, du code ARM

  • Du code, mais aucune explication

Fermer