iOS sur un Raspberry Pi

13

Maintenant, je comprends qu'il serait probablement impossible de le faire, mais pour la raison "parce que je peux", j'aimerais essayer d'installer iOS sur mon Raspberry Pi. (quand ça finit par arriver ..)

J'ai cherché des articles à ce sujet, et ils semblent suggérer que l'exécution d'iOS 3 peut être possible en raison de contraintes matérielles, mais à quel point cela pourrait-il vraiment être difficile? Il y a des années, j'ai installé quelques machines OS X86, et même si une douleur est finalement devenue possible. (évidemment)

Donc, ma question générale est, que dois-je étudier / faire pour essayer d'installer iOS sur un Raspberry Pi?

Mick MacCallum
la source
J'étais sur le point de répondre à la réponse habituelle: "Non, pour la dernière fois, vous ne pouvez pas installer de fenêtres ou d'autres distributions Linux car elles ne sont que x86" mais alors je suis comme ... iOS ... ARM ... bonne idée: P
Alexander - Reinstate Monica
1
Je pense que le matériel idevice est trop spécialisé pour qu'il y ait un espoir pour iOS fonctionnant sur un RPI… interfaces graphiques, prise en charge USB, ethernet sur usbm etc.
Alexander - Reinstate Monica
@XAleXOwnZX Vous voyez, c'est là que je ne suis pas sûr. Bien que cela puisse parfois devenir difficile, vous pouvez toujours écrire un pilote! Ce que je prévois être la partie la plus problématique sera la fin de l'interface utilisateur.
Mick MacCallum
Comment feriez-vous l'interface avec elle? La prise en charge du clavier et de la souris n'a pas été introduite dans iOS depuis iOS 5 sur iPad. Je veux dire, il n'y aurait pas de support pour un curseur de souris comme il y en a sur un iPad actuel utilisant une souris bluetooth
Alexander - Reinstate Monica
1
@XAleXOwnZX Je suis presque sûr que presque toutes les distributions Linux existantes vous permettent de compiler votre propre noyau et d'obtenir même des packages précompilés pour ARM, donc je pense que dire aux gens "vous ne pouvez pas installer Windows ou d'autres distributions Linux" est faux à un moment donné
Petr

Réponses:

19

Bien que l'iOS d'Apple soit attrayant pour les utilisateurs, si vous êtes un passionné (comme vous devez avoir le Raspberry Pi) ou un développeur, iOS est le moins convivial pour vous.

iOS est compilé spécifiquement pour chaque modèle d'iPad ou iPhone d'Apple avec une intégration spécifique du matériel et des logiciels pour la plate-forme. Essentiellement, tous les logiciels sont un blob binaire géant. Quelqu'un a mentionné dans les commentaires qu'il existe de nombreuses similitudes matérielles entre le Raspberry Pi et certains modèles d'iPhone. Votre plus grand espoir de faire fonctionner iOS sur Raspberry Pi serait de trouver une image de firmware pour un téléphone dont le matériel est le plus similaire au Raspberry Pi, puis d'essayer de le faire fonctionner. Cependant, comme la plupart des images compilées spécifiques à une plate-forme, il est probable que même de légères déviations de l'environnement en cours d'exécution par rapport à l'environnement attendu produiront un système non amorçable. Si cela finit par être le cas, alors vous devrez probablement recourir à la rétro-ingénierie et pirater le blob binaire avec différents pilotes ou configurations matérielles. Cela peut être très simple et se révéler difficile même pour une équipe d'ingénieurs compétents et expérimentés.

En tant que telle, une connaissance très approfondie du matériel spécifique des différents modèles d'iPhone ainsi qu'une très bonne connaissance du processus de démarrage de bas niveau que Raspberry Pi et iOS utiliseront seront nécessaires. De plus, examinez l'architecture d'iOS qui, si je comprends bien, est vaguement basée sur le système Darwin. Pour cela, vous pouvez étudier les différentes méthodes de jailbreak et leur fonctionnement.

Il convient également de noter que la légalité de telles actions est discutable car il existe probablement de multiples violations du CLUF, dont la plus évidente est la stipulation que le système d'exploitation d'Apple ne fonctionne que sur du matériel Apple. Le jailbreak est techniquement légal, mais l'ingénierie inverse n'est que parfois protégée par la loi et n'a jamais été appliquée de manière vraiment cohérente. Le projet Cydia et la plupart des applications qui s'y trouvent sont capables de personnaliser finement iOS. Les connaissances sur la façon de le faire peuvent chevaucher les connaissances sur son fonctionnement sur Raspberry Pi.

Cela dit, j'ai vu des projets incroyables et difficiles à réaliser car une communauté de développeurs et de hackers dédiés s'est réunie dans un objectif commun, par exemple le projet Xbox-Linux , ou comme vous l'avez souligné, le projet OSx86 . Il n'est certainement pas impossible d'exécuter iOS sur le Raspberry Pi, mais ce qui est possible n'est pas toujours pratique. Vous pouvez avoir plus de plaisir et moins de tracas avec Android, étant donné qu'il est open source. Cela dit, là où il y a une forte volonté, il y a un moyen.

Dougvj
la source
0

Je dirais que votre meilleur pari est de décompiler toute l'image de démarrage, puis de la reconstruire de bas en haut en l'adaptant aux spécifications pi. Le problème avec cela est que vous auriez besoin d'une connaissance extrêmement approfondie du codage dans plusieurs langues (les personnes qui le conçoivent ont plusieurs années de travail et une formation spécifique). Ce serait presque impossible, mais il y a une chance ...

Daniel Corcoran
la source
0

Je ne suis pas sûr mais certaines des premières versions d'iOS ont été faites pour quelque chose comme un Armv6, donc le matériel peut être similaire, et vous devrez faire quelques kexts graphiques pour le système, (je ne sais pas si vous '' ll pourra porter l'accélération graphique qui est complexe à faire) et tout le matériel comme les ports, les contrôleurs et la mémoire. J'ai trouvé cela, mais je suis dans un état assez initial; http://winocm.com/projects/research/2013/11/22/milestone-one/ alors essayez un noyau Mach / xnu personnalisé pour le RPi et démarrez-le, puis voyez ce qui se passe

Dian Aleksandrov
la source