Top Secret iPod Hülle





Es war ein typischer grauer Tag Ende 2005. Ich saß an meinem Arbeitsplatz und schrieb Code für die nächste Version des iPod. Plötzlich, ohne zu klopfen, stürzte der iPod-Software-Direktor, der Chef meines Chefs, herein und schloss die Tür. Er kam sofort auf den Punkt: „Ich habe eine besondere Aufgabe für Sie. Ihr Chef weiß nichts davon. Sie helfen zwei Ingenieuren des US-Energieministeriums beim Bau eines einzigartigen iPod. Sie melden sich nur bei mir. "



Am nächsten Tag erhielt ich einen Anruf von der Rezeption und sagte, dass zwei Männer in der Lobby warteten. Ich ging hinunter, um sie zu treffen. Es waren Paul und Matthew, Ingenieure, die ihren eigenen iPod bauen wollten. Ich möchte sagen, dass sie in dunklen Gläsern kamen und in die Spiegelungen der Fenster schauten, um sicherzustellen, dass sie nicht verfolgt wurden, aber nein, sie waren nur die gewöhnlichsten dreißigjährigen Ingenieure. Ich ließ sie herein und wir gingen in den Konferenzraum.





Sie arbeiteten nicht für das Energieministerium, sondern für die Abteilung Bechtel, ein bedeutender Verteidigungsunternehmer des Ministeriums. Sie wollten dem iPod ihre eigene Ausrüstung hinzufügen und die Daten auf die Festplatte brennen. Außerdem wollten sie alles so verkleiden, dass es von außen so aussieht, als wäre dies ein gewöhnlicher iPod.



Sie haben die ganze Arbeit gemacht, meine Aufgabe war es, ihnen die Hilfe zu geben, die sie von Apple brauchten.



Ich erfuhr, dass ein Beamter des Energieministeriums den Senior Vice President für Hardware kontaktiert und um Hilfe beim Bau modifizierter iPods gebeten hatte. Der Senior Vice President schickte eine Anfrage an den Vice President der iPod-Abteilung, der sie an den iPod-Software-Direktor weiterleitete, und er kam zu mir. Meinem Chef wurde gesagt, dass ich an einem speziellen Projekt arbeite und dass Fragen hier unangemessen seien.



Hintergrund



Ich war der zweite Programmierer, der für das iPod-Projekt eingestellt wurde, als es 2001 herauskam. Zu diesem Zeitpunkt hatte Apples Marketing nicht den Namen iPod und das Produkt hatte den Codenamen P68. Der erste Programmierer wurde später Direktor für Softwareentwicklung für den iPod. Er war es, der mit dieser Aufgabe zu mir kam. Ich habe ein Dateisystem für den iPod und später eine SQLite-Datenbank geschrieben, die alle Songs im Auge behält. Im Laufe der Zeit habe ich an fast allen Teilen des iPod-Betriebssystems gearbeitet, mit Ausnahme von Audio-Codecs, die MP3 und AAC in Sound verwandelten.



(Diese Audio-Codecs wurden von zwei Diplomingenieuren aus Berkeley und Stanford geschrieben. Wenn sie sich nicht darüber stritten, welche Universität besser ist, schrieben sie mathematischen Code, den ich nicht anfassen wollte. Sie würden nicht zulassen, dass ein normaler Ingenieur mit diesem Code herumspielt. Von Zeit zu Zeit spielten sie Poker und ich ging mit. Der einzige Grund, warum ich nicht mein ganzes Geld verlor, war, dass einer von ihnen Wodka genoss.)



Kompilieren des Betriebssystems iPod von der Quelle, Booten auf ein Gerät, Testen und Debuggen ist ein komplexer Prozess. Wenn ein neuer Ingenieur zu uns kommt, geben wir ihm eine Woche Zeit, um sich um ihn zu kümmern, bevor wir anfangen, Aufträge zu vergeben.



Das iPod-Betriebssystem ist unabhängig und basiert nicht auf anderen Apple-Betriebssystemen wie dem klassischen Mac OS oder Darwin, dessen Unix-Kernel macOS, iOS, iPadOS, WatchOS und tvOS unterstützt. Die ursprüngliche iPod-Hardware basiert auf einer Hardwareplattform, die Apple von Portal Player gekauft hat. Portal Player stellte grundlegende Aspekte des iPod-Betriebssystems bereit, z. B. Energieverwaltung, Festplattentreiber und einen Echtzeit-Kernel (von Quadros lizenziert). Apple hat auch High-End-Teile des iPod OS von Pixo gekauft. Pixo wurde einige Jahre zuvor von einem ehemaligen Apple-Ingenieur mit dem Ziel gegründet, ein universelles Betriebssystem für Mobiltelefone zu schreiben und es an Unternehmen wie Nokia und Ericsson zu verkaufen. Pixo-Code verträgt sich gut mit GUI- und Unicode-Text (was für die Lokalisierung sehr wichtig ist).verwaltet den Speicher und behandelt Ereignisse. Natürlich haben die Apple-Ingenieure diesen Code im Laufe der Zeit geändert und den größten Teil neu geschrieben.



Das iPod-Betriebssystem ist in C ++ geschrieben. Da dieses Betriebssystem keine Anwendungen von Drittanbietern unterstützt, gab es keine öffentliche Dokumentation zur Funktionsweise des Betriebssystems.



Schließlich lief das iPod-Entwicklungsteam unter Windows. Apple hatte damals keine Tools für die ARM-Entwicklung, da dies vor dem iPhone war. Das Entwicklungsteam verwendete Tools von ARM Ltd und arbeitete nur unter Windows und Linux.



Meine Aufgabe war es, die Arbeit von Paul und Matthew zu koordinieren, um ein Betriebssystem zu starten, mit dem sie noch nie zuvor gearbeitet hatten.



Schneller Start



Ich habe ein leeres Büro für Paul und Matthew in unserem Gebäude gebucht. IS & T (Apples IT-Abteilung) wurde gebeten, das Büronetzwerk so zu konfigurieren, dass nur eine Verbindung zum Internet hergestellt werden kann und kein Zugriff auf das interne Netzwerk von Apple möglich ist. Apples Wi-Fi befindet sich immer "außerhalb" des internen Netzwerks. Selbst wenn Sie innerhalb des Gebäudes eine Wi-Fi-Verbindung herstellen, benötigen Sie ein VPN, um zum internen Netzwerk zu gelangen. Es war keine Vertrags- und Zahlungskooperation zwischen Apple und Bechtel, Apple half dem DOE inoffiziell. Und der Zugang unter solchen Bedingungen war begrenzt.



Unnötig zu erwähnen, dass Paul und Matthew keinen Zugriff auf den Quellserver hatten. Ich gab ihnen eine Kopie der aktuellen DVD-Version des Codes und erklärte, dass die CD das Gebäude nicht verlassen kann. Außerdem durften sie eine modifizierte Version des iPod OS speichern, nicht jedoch die modifizierte Quelle.



Apple hat ihnen keine Hardware- oder Softwaretools zur Verfügung gestellt. Ich gab ihnen die technischen Spezifikationen für Windows-Computer, die sie zusammen mit einem ARM-Compiler und einem JTAG-Debugger benötigen. Sie kauften auch mehrere Dutzend iPods für den Job.



Wie bei allen Apple-Gebäuden musste jeder vor dem Betreten einen Ausweis vorlegen, um die Tür zu öffnen und das Gebäude zu betreten. Jede Etage hatte eine andere Tür und einen Ausweisleser, sodass nur Personen mit Sicherheitsüberprüfung eintreten konnten.



Jeden Tag riefen mich Paul und Matthew aus der Lobby an, da sie kein Abzeichen hatten. Ich ließ sie als Gäste herein und begleitete sie in ihr Büro. Am Ende bekam ich Verkäuferausweise für sie, als wollten sie Kaffee oder Chips an Apple verkaufen. Auf diese Weise musste ich sie nicht mehr jeden Tag begleiten. Ich bin ein Programmierer, kein Kindermädchen.



Unsere besten Leute



Paul und Matthew waren schlau - vielleicht die besten - und mit ein wenig Hilfe fanden sie es schnell genug heraus. Ich habe ihnen gezeigt, wie man Entwicklungstools einrichtet, ein Betriebssystem aus dem Quellcode erstellt und wie man es auf einen iPod lädt. Wir haben einige kleine Änderungen an der Benutzeroberfläche vorgenommen, damit sie genau sehen können, welchen Build sie ausführen. Ich habe Ihnen auch gezeigt, wie Sie mit dem JTAG-Hardware-Debugger arbeiten, der wählerisch genug war. Und sie stürzten sich in ihre Arbeit.



Durch die Untersuchung des Betriebssystems erklärten sie, was sie zumindest allgemein tun wollten. Sie haben dem iPod spezielle Geräte hinzugefügt, die Daten generieren und Daten daraus aufzeichnen möchten. Sie haben alle Anstrengungen unternommen, damit ich diese Ausrüstung nicht sah und ich sie nicht sah.



Wir haben Möglichkeiten besprochen, die aufgezeichneten Daten auszublenden. Als Festplatteningenieur schlug ich vor, eine zusätzliche Partition auf der Festplatte zu erstellen und dort Daten zu speichern. Selbst wenn jemand einen iPod an einen PC oder Mac anschließt, wird iTunes das Gerät als normalen iPod wahrnehmen. Darüber hinaus sieht der iPod sowohl im Mac Finder als auch im Windows Explorer gleich aus. Die Idee gefiel ihnen.



Dann wollten sie eine einfache Möglichkeit hinzufügen, die Aufnahme zu starten und zu stoppen. Wir haben den längsten Pfad in den Einstellungen genommen und dort ein Element mit einem unauffälligen Namen hinzugefügt. Ich habe ihnen dabei geholfen, dies in OS-Code zu tun, der etwas mehr als offensichtlich war. Der Rest des Geräts funktionierte wie ein normaler iPod.



Der neueste iPod zu dieser Zeit war der iPod der fünften Generation, besser bekannt als "iPod mit Video". Im Vergleich zum iPod nano, der kurz nach dieser Geschichte populär wurde, war die iPod-Hülle relativ einfach zu öffnen und wieder zusammenzubauen, ohne merkliche Spuren zu hinterlassen. Darüber hinaus verfügte der iPod der fünften Generation über ein 60-GB-Laufwerk, sodass sowohl für Songs als auch für zusätzliche Daten ausreichend Platz vorhanden war. Und schließlich war dies der letzte iPod, für den Apple die digitale Signatur des Betriebssystems nicht überprüft hat.





Dies war wichtig, da dadurch der iPod der fünften Generation in gewisser Weise einen Jailbreak erlitt. Enthusiasten genossen die Gelegenheit, Linux darauf auszuführen, was ohne das Fachwissen und die Tools von Apple schwierig war. Wir, das iPod-Entwicklungsteam, waren beeindruckt, aber Apple hat es nicht gefallen. Beginnend mit dem iPod nano wurden Betriebssysteme digital signiert, um Hacker zu stoppen. Der Bootloader hat die digitale Signatur vor dem Laden des Betriebssystems überprüft: Wenn sie nicht übereinstimmt, wird das Gerät nicht gestartet.



Ich glaube nicht, dass Paul und Matthew Apple jemals gebeten haben, ihre Version des Betriebssystems zu signieren, um es auf dem iPod nano auszuführen. Ich bin mir sogar sicher, dass Apple nicht zustimmen würde. In jedem Fall war der große iPod der fünften Generation ideal für diesen Zweck.



Nach mehreren Monaten ununterbrochener Arbeit in ihrem provisorischen Büro haben Paul und Matthew die Integration ihrer Spezialausrüstung in den iPod abgeschlossen und das Projekt verschrottet. Sie kehrten mit ihren Computern und Debugging-Geräten in das Bechtel-Büro in Santa Barbara zurück. Sie gaben mir die Quell-DVD und die Pässe zurück. Sie verabschiedeten sich von mir und ich sah sie nie wieder. Die DVD lag jahrelang in einem Regal in meinem Büro, bis ich sie beim Putzen sah.



Was machten sie?



Das Energieministerium ist riesig. Das Budget für 2005 beträgt 24,3 Milliarden US-Dollar. Es ist verantwortlich für US-Atomwaffen- und Atomkraftprogramme, einschließlich des Los Alamos National Laboratory, das Teil des Manhattan-Projekts war. In der DOE-Budgetanfrage heißt es:

2005 $ 9,0 . , . , , .
Ich vermute, Paul und Matthew haben so etwas wie einen unsichtbaren Geigerzähler zusammengebaut. Etwas, das DOE-Agenten offen verwenden können. Etwas, das unauffällig aussieht und Musik spielt und wie ein normaler iPod funktioniert. Sie können durch die Stadt spazieren, Ihre Lieblingsmusik hören und Radioaktivität - zum Beispiel gestohlenes Uran - oder Hinweise auf die Entwicklung einer "schmutzigen Bombe" entdecken, ohne dass die Öffentlichkeit oder die Presse davon erfahren. Wie viele andere elektronische Geräte wird der Geigerzähler immer kleiner und billiger. Und ich war besonders amüsiert, dass ich auf den Radiation Alert Monitor 200 gestoßen bin , der einem klassischen iPod ähnelt.



Als ich Paul und Matthew fragte, was sie machten, wechselten sie das Thema und stritten sich darüber, wohin sie zum Mittagessen gehen sollten. Oh, diese Geeks.



Der spezielle iPod, den es nicht gab



Nur vier Mitarbeiter von Apple wussten von diesem geheimen Projekt. Ich bin der Direktor für Softwareentwicklung für den iPod, Vizepräsident der iPod-Abteilung und Senior Vice President für Hardware. Keiner von uns arbeitet mehr bei Apple. Und es gibt keine Aufzeichnungen. Alle Verbindungen waren nur in Worten.



Wenn Sie Apple nach einem speziellen iPod-Projekt fragen, wird die Öffentlichkeitsarbeit ehrlich sagen, dass Apple keine Aufzeichnungen über solche Projekte hat.



Aber jetzt weißt du es.






All Articles