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

Oh, du code ARM 11
Accès libre
image dediée
OS
Par
le lundi 02 octobre 2017 à 14:30
Vincent Hermann

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.


chargement
Chargement des commentaires...