iOS et Mac OS X partagent-ils le même noyau ou leurs noyaux sont-ils séparés de manière significative ?


Je suppose que cela dépend du niveau d'abstraction dont on'parle.

Le rôle d'un noyau de système d'exploitation est de fournir une interface entre les ressources matérielles et les processus qui les utilisent. Souvent, cela consiste en un ensemble de routines de bibliothèque de bas niveau qui sont mises à disposition.


Voici'comment nous savons que quelque chose ne va pas:

Apple a d'abord commencé sur le PowePC, puis est passé au chipset Intel. Ce sont des jeux d'instructions, des accès mémoire et des architectures radicalement différents. Donc le noyau -devait- être différent.

Mais le grand dévoilement du changement de plateforme s'est accompagné d'une démonstration selon laquelle, du point de vue de l'utilisateur, nous verrions une présentation parfaite au pixel près et un comportement identique dans les fonctionnalités. Apple a intelligemment fait une couche d'abstraction pour tirer parti de tout le code existant. Ainsi, ces appels de bibliothèque faisaient la même chose, juste implémentés différemment sous le capot.

Encore une fois, nous savons que le matériel sur lequel fonctionne iOS est différent de nos ordinateurs de bureau. Les périphériques sont entièrement différents. Donc, le noyau de plus bas niveau doit être différent.

Cependant, il a été divulgué qu'un hacker expérimental a pu obtenir une copie complète d'OS X fonctionnant sur une Apple Watch. Une vidéo montre l'Apple Watch exécutant Mac OS 7.5.5 via un émulateur

Il'est impossible que cela se produise à moins qu'un certain niveau d'abstraction ait lieu.

Apple a dit autant que iOS est une version dépouillée d'OS X, et nous voyons une tendance où les plateformes de bureau et mobiles commencent à s'unifier.

Ma supposition est qu'elles ont commencé par diverger mais qu'elles avaient une bonne conception qui permettait d'empocher les détails de mise en œuvre avec des couches d'abstraction, et maintenant l'objectif est d'arriver au point où les développeurs peuvent écrire une seule base de code pour leurs applications et leurs applications, et Apple aussi aurait le désir de ne pas maintenir une demi-douzaine d'implémentations de systèmes d'exploitation à long terme.