Cosa significa per i consumatori che Apple ha rilasciato il kernel MacOS come open source?


17

https://techcrunch.com/2017/10/01/apple-open-sourced-the-kernel-of-ios-and-macos-for-arm-processors/

Questo significa che vedremo altri computer (che non sono costruiti da Apple) che eseguono MacOS?

In caso contrario, cosa accadrebbe?

Da quanto ho capito, anche il kernel Unix è stato rilasciato e Linux è stato creato. Lo stesso dovrebbe accadere al kernel di Apple?


8
Linux non è basato sul kernel UNIX, è un progetto indipendente (sebbene provi a riprodurre l'API per essere più o meno conforme a POSIX).
Ruslan,

6
In realtà, MacOS è Unix ma Linux non è Unix (Apple ha effettivamente pagato soldi per ottenere il proprio sistema operativo certificato come Unix)
slebetman,


24
La novità qui non è che il kernel sia open-source; la prima frase del tuo articolo dice "Apple ha sempre condiviso il kernel di macOS dopo ogni rilascio importante". La novità è che hanno rilasciato la versione scritta per ARM. Fondamentalmente questo articolo è clickbait e potrebbe essere terminato dopo il primo paragrafo.
jscs,

1
@JoshCaswell Questa dovrebbe essere una risposta, soprattutto perché non ha bisogno di alcun riferimento oltre l'articolo collegato nella domanda.
IMSoP,

Risposte:


34

Non significa niente. Il kernel macOS / OS X è sempre stato open source. Il kernel è solo una piccola parte di un sistema operativo completo, quindi non consente a nessun altro di rilasciare la propria versione di MacOS.


5
Qualcuno potrebbe provare a costruire il proprio sistema operativo basato sul kernel macOS, ad es. OpenDarwin / PureDarwin . Jusr ricorda che mancherà la maggior parte delle altre parti che definiscono ciò che rende macOS.
el.pescado,

3
Qualcuno qui ha creato con successo un xnu che è davvero identico a ciò che è installato? Ai tempi di Tiger ho compilato il mio e ho visto problemi. Apple gli ha poi detto che alcune parti mancano intenzionalmente e che sarebbe impossibile creare un kernel completo di funzionalità da ciò che viene pubblicato. (Quando) è cambiato?
LängLаngС,

2
@LangLangC No, il kernel Darwin è ancora incompleto ad oggi. Quello che hanno rilasciato oggi sono semplicemente i componenti già rilasciati, ma con piccole modifiche per i processori ARM che usano in iOS e tvOS.
Adam Davis,

34

Una precisazione:

Apple ha sempre rilasciato il kernel di MacOS in una forma open source. Il kernel si chiama Darwin. Darwin ha un obiettivo di x86. Può essere portato su altri processori, ma la variante open source di Darwin che Apple controlla e rilascia era disponibile solo per x86.

Tuttavia, iOS, che utilizza processori ARM, ha utilizzato Darwin sin dal suo inizio. Apple non ha mai rilasciato la porta ARM di Darwin, anche se ovviamente ne ha una poiché la usano in milioni di dispositivi iOS già nelle mani dei consumatori.

Questo annuncio è che Apple sta ora rilasciando i pezzi ARM di Darwin che in precedenza avevano trattenuto.

Darwin è solo un kernel, non include la maggior parte di ciò che fa funzionare MacOS o iOS come si aspetta un consumatore. Un kernel non è un sistema operativo completo.

Inoltre, Darwin non è un kernel completo. Apple non rilascia molte parti di esso.

Cosa significa per i consumatori che Apple ha rilasciato il kernel MacOS come open source?

Non molto, inizialmente. Non influenzerà la disponibilità di hardware o software, gli aggiornamenti e probabilmente non avrà nemmeno un impatto sostanziale sul jailbreak o simili usi alternativi dei dispositivi Apple.

Questo significa che vedremo altri computer (che non sono costruiti da Apple) che eseguono MacOS?

Non influisce sulla disponibilità di dispositivi hardware non Apple che eseguono software o sistemi operativi Apple. Ciò che è già disponibile non diventerà più o meno disponibile o più o meno legale.

In caso contrario, cosa accadrebbe?

La spiegazione più probabile, e in che modo i consumatori ne trarranno vantaggio, proviene da una precedente versione del codice che Apple tiene di solito vicino al suo petto, " Apple conferma il codice del kernel iOS lasciato intenzionalmente non crittografato ", il che suggerisce:

Apple ha iniziato a spostarsi verso una maggiore trasparenza, in particolare sulle questioni di sicurezza, sulla scia della sua battaglia con l'FBI per lo sblocco di un iPhone utilizzato dallo sparatutto San Bernardino. Quando l'FBI ha tentato di costringere Apple a sbloccare il telefono, il CEO Tim Cook ha scritto una rara lettera aperta ai clienti di Apple, spiegando la sua decisione di resistere. "Riteniamo di dover parlare di fronte a ciò che vediamo come un superamento da parte del governo degli Stati Uniti", ha scritto Cook. (L'FBI alla fine ha lasciato cadere la sua richiesta dopo aver pagato una terza parte per entrare nel dispositivo.)

L'apertura del codice del kernel per l'ispezione potrebbe indebolire il mercato dei difetti di sicurezza come quello che si presume che l'FBI abbia usato per entrare nell'iPhone di San Bernardino. Se i difetti vengono rilevati rapidamente e ampiamente, ridurrà i prezzi delle forze dell'ordine e i mercati neri pagheranno per loro - e potrebbe significare soluzioni più rapide per i clienti Apple.

Quindi il vantaggio per il consumatore è che più occhi, in particolare i ricercatori della sicurezza, saranno sul codice e, si spera, questo porterà alla luce debolezze nella sicurezza, consentendo ad Apple la possibilità di migliorare la sicurezza per i clienti piuttosto che scoprire che la loro sicurezza viene interrotta quando un governo o terze parti sono in grado di sottrarre i diritti di qualcuno senza il dovuto processo.

Il fatto che ciò avvenga in modo positivo, tuttavia, dipende dal fatto che i ricercatori si offrano volontari per esaminare il codice.

Da quanto ho capito, anche il kernel Unix è stato rilasciato e Linux è stato creato. Lo stesso dovrebbe accadere al kernel di Apple?

Apple ha iniziato con il codice BSD originale, che, utilizzando la licenza BSD, non richiede che le aziende o gli individui rilasciano le proprie modifiche al codice alle persone a cui distribuiscono il software compilato. In effetti, hanno scelto questo sul kernel Linux in modo specifico in modo da poter mantenere segrete alcune proprietà intellettuali (tra le altre ragioni, ovviamente).

Quindi non hanno l'obbligo legale di rilasciare tutto il loro codice. Alcuni dei software che usano hanno altre licenze, come GPL, che richiede di mantenerlo open source. Molti di questi sono disponibili da Apple ora.

Ciò, tuttavia, indica anche un'altra possibilità: molti pezzi del kernel vengono rilasciati in modo che gli sviluppatori possano sviluppare hardware MacOS e software specializzato. Questo è molto più profondo nel sistema di cui agli sviluppatori di app è consentito l'accesso per i dispositivi iOS.

Questa versione, quindi, suggerisce una o entrambe le due forti possibilità (e questa è una congettura completa):

  1. Apple si sta preparando a rilasciare i computer MacOS utilizzando i loro processori ARM serie A.
  2. Apple si sta preparando per consentire agli sviluppatori di creare software di livello più profondo per i dispositivi iOS.

Direi che i computer MacOS che utilizzano processori ARM sono più probabili, poiché l'ultimo chip A11, utilizzato in iPhone 8 e X, batte l'ultimo chip Intel i5 , utilizzato nel Macbook 13 "del 2017. Apple ha ancora molta strada da fare prima possono sostituire i processori Intel lungo tutta la loro linea, tuttavia potremmo vedere, entro uno o due anni, i computer MacOS di fascia bassa con chip A12 o A13, sostituendo i chip Intel precedentemente utilizzati.

Ciò fornirebbe un vantaggio significativo ad Apple (in particolare ai suoi profitti).

Tuttavia, senza una dichiarazione ufficiale non c'è modo di sapere quali motivi Apple ha per rilasciare le parti ARM del suo kernel Darwin già ampiamente open source.

Il consumatore avrà un impatto molto limitato, se non del tutto, e in tal caso solo indirettamente.


Forse un computer macOS di fascia bassa come il Mac mini? :-)
nohillside

1
@patrix So che molte persone stanno aspettando una nuova!
Adam Davis,

Facilmente la risposta migliore; grazie per aver spiegato così chiaramente!
Carattere jolly

1
Se solo i punteggi di Geekbench avessero effettivamente implicato qualcosa sulla performance del mondo reale ... ;-)
Cody Gray,

Risposta davvero straordinaria. Grazie per aver condiviso le tue conoscenze.
DrWongKC,

18

Un impatto importante è stato nel campo della sicurezza del software. Il kernel iOS non è stato precedentemente open-source: le fonti pubbliche in precedenza coprivano solo piattaforme x86 / x64, senza nessuna delle parti ARM / ARM64 che girano su iOS. Anche il kernel era stato precedentemente crittografato nel firmware iOS ed è molto difficile da estrarre, rendendo in precedenza molto difficile eseguire valutazioni di sicurezza del kernel iOS - una sorta di "sicurezza per oscurità".

Provvedere apertamente al kernel e lasciare il kernel non crittografato, ora il kernel iOS può essere analizzato e sondato più liberamente per le vulnerabilità di sicurezza ( https://techcrunch.com/2016/06/22/apple-unencrypted-kernel/ ). Questo sarà un passo positivo per la sicurezza del kernel in generale perché significa che la ricerca sulla vulnerabilità del kernel iOS sarà più aperta ai ricercatori ordinari che potrebbero rivelare problemi ad Apple, piuttosto che limitarsi ad esempio ad attori finanziati dallo stato.

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.