iOS su un Raspberry Pi


13

Ora capisco che probabilmente non sarebbe pratico farlo, ma per il motivo "perché posso" mi piacerebbe provare a installare iOS sul mio Raspberry Pi. (quando alla fine arriverà ..)

Ho cercato post su questo argomento e sembrano suggerire che l'esecuzione di iOS 3 potrebbe essere possibile a causa di vincoli hardware, ma quanto potrebbe essere difficile? Anni fa ho installato un paio di macchine OS X86, e anche se un dolore è diventato possibile. (ovviamente)

Quindi la mia domanda generale è: cosa devo cercare di fare / imparare a provare a installare iOS su un Raspberry Pi?


Stavo per andare alla solita risposta di "No, per l'ultima volta, non puoi installare windows o altre distribuzioni di Linux perché sono solo x86" ma poi sono come ... iOS ... ARM ... buona idea: P
— Alexander - Ripristina Monica il

1
Penso che l'hardware di idevice sia troppo specializzato per sperare che iOS funzioni su un RPI ... interfacce grafiche, supporto USB, Ethernet su USBm ecc.
— Alexander -

@XAleXOwnZX Vedi, ora è lì che non sono sicuro. Anche se a volte può diventare difficile, puoi sempre scrivere un driver! Ciò che prevedo sia la parte più problematica sarà la fine dell'interfaccia utente.
— Mick MacCallum,

Come si interfaccia con esso? Il supporto di tastiera e mouse non è stato introdotto in iOS da iOS 5 su iPad. Voglio dire, non ci sarebbe supporto per un cursore del mouse come su un attuale iPad che utilizza un mouse bluetooth
— Alexander - Reinstate Monica

1
@XAleXOwnZX Sono abbastanza sicuro che quasi tutte le distribuzioni Linux esistenti ti consentano di compilare il tuo kernel e abbiano anche pacchetti precompilati per ARM, quindi penso che dire alla gente "non è possibile installare Windows o altre distribuzioni Linux" è sbagliato ad un certo punto
— Petr

Risposte:


19

Sebbene l'iOS di Apple sia attraente per gli utenti, se sei un appassionato (come devi avere il Raspberry Pi) o uno sviluppatore, iOS è il meno amichevole per te.

iOS è compilato appositamente per ogni modello di iPad o iPhone di Apple con integrazione specifica di hardware e software per la piattaforma. Fondamentalmente tutto il software è un gigantesco blob binario. Qualcuno ha menzionato nei commenti che ci sono molte somiglianze hardware tra il Raspberry Pi e alcuni modelli di iPhone. La tua più grande speranza per far funzionare iOS su Raspberry Pi sarebbe quella di trovare un'immagine del firmware per un telefono il cui hardware è più simile al Raspberry Pi e quindi provare a farlo funzionare. Come la maggior parte delle immagini compilate specifiche della piattaforma, tuttavia, è probabile che anche lievi deviazioni nell'ambiente in esecuzione dall'ambiente previsto produrranno un sistema non avviabile. Se finisce così, quindi molto probabilmente dovrai ricorrere al reverse engineering e all'hacking del BLOB binario con diversi driver o configurazioni hardware. Questo può essere molto banale e si rivelerebbe difficile anche per un team di ingegneri competenti ed esperti.

Come una conoscenza molto ampia dell'hardware specifico di diversi modelli di iPhone, nonché un'ottima conoscenza del processo di avvio a basso livello che saranno necessari sia l'uso di Raspberry Pi che iOS. Inoltre, osserva l'architettura di iOS che, a quanto ho capito, è vagamente basata sul sistema Darwin. Per questo, potresti esaminare i diversi metodi di jailbreak e come funzionano.

Inoltre, vale la pena notare che la legalità di tali azioni è discutibile in quanto vi sono probabilmente molteplici violazioni dell'EULA, la più ovvia delle quali è la stipulazione che il sistema operativo di Apple funziona solo su hardware Apple. Il jailbreak è tecnicamente legale, ma il reverse engineering è solo a volte protetto dalla legge e non è mai stato applicato in modo coerente. Il progetto Cydia e molte delle app in esso contenute sono in grado di eseguire alcune personalizzazioni ottimizzate per iOS. Le conoscenze su come eseguire questa operazione potrebbero sovrapporsi a quelle su come farlo funzionare su Raspberry Pi.

Detto questo, ho visto nascere alcuni progetti sorprendenti e difficili perché una comunità di sviluppatori e hacker dedicati si è riunita in un obiettivo comune, ad esempio il progetto Xbox-Linux o, come hai sottolineato, il progetto OSx86 . Certamente non è impossibile eseguire iOS su Raspberry Pi, ma ciò che è possibile non è sempre pratico. Potresti divertirti di più e meno problemi con Android, dato che è open source. Detto questo, dove c'è una forte volontà c'è un modo.


0

Direi che la soluzione migliore è decompilare l'intera immagine di avvio, quindi ricostruirla dal basso verso l'alto adattandola alle specifiche pi. Il problema è che avresti bisogno di una conoscenza estremamente ampia della codifica in più lingue (le persone che progettano questo hanno più anni di lavoro insieme a una formazione specifica). Sarebbe quasi impossibile, ma c'è una possibilità ...


0

Non sono sicuro, ma alcune delle prime versioni di iOS sono state create per qualcosa di simile a un Armv6, quindi l'hardware potrebbe essere simile e dovrai creare alcuni kexts grafici per il sistema, (non so se tu ' riusciremo a portare l'accellerazione grafica che è complessa da fare) e tutto l'hardware come le porte, i controller e la memoria. Ho trovato questo, ma è in uno stato piuttosto iniziale; http://winocm.com/projects/research/2013/11/22/milestone-one/ quindi prova un kernel Mach / xnu personalizzato per l'RPi e avvialo, quindi vedi cosa succede

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.