IOS

Version vom 3. April 2021, 13:37 Uhr von Nino (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

IOS, kurz für IOP Operating System, ist das Betriebssystem der Wii und der vWii, welches auf dem Starlet- bzw. IOP-Koprozessor im Hollywood läuft. Es stellt Services bereit, die von der Wii benutzt werden können, um auf viele Systemgeräte zuzugreifen: USB, Networking, Sicherheit, App-Management, NAND, SD-Karte, optische Medien und WiiConnect24-Features. Programmiert wurde IOS von BroadOn Communications Corporation in Kalifornien.

Jegliche Software, die das Wii SDK oder libogc nutzt, benötigt ein laufendes IOS auf dem Starlet. IOS wird nicht im Gamecube-Modus (stattdessen wird MIOS benutzt) oder in BootMii und verwandter Software (Wii Linux) genutzt (MINI).

IOS wird in einem eigenartigen Weg versioniert - es gibt nicht ein einziges IOS, auf dem jegliche Software läuft, sondern mehrere Zweige (sogenannte Branches), die typischerweise zu einer oder mehreren Versionen des Wii SDKs passen. Jeder Branch hat eine stabile, eingefrorene API und alte Versionen erhalten nur noch Bugfixes. Nintendo hat sogar einen komplett neuen IOS-Branch erstellt, der sich nur im Standardwert der TCP-Buffergröße unterschied. Eine voll aktualisierte Wii enthält eine aktuelle Kopie für jeden Branch von IOS. Diese sind als separate Titel vorhanden, oft "IOS-Slots" genannt. Aufgrund dessen ist es normalerweise sicher, ein IOS zu patchen, zu deinstallieren oder neu zu installieren, solange es nicht vom Systemmenü genutzt wird. Falls etwas schiefgeht, kann eine funktionierende Version einfach drüberinstalliert werden. Hohe, ungenutzte IOS-Slots (wie 249, 250, etc.) werden genutzt, um gepatchte IOS (sogenannte cIOS) oder alternative Starlet-Software (BootMii als IOS254, welches die armboot.bin (MINI) von der SD-Karte lädt) zu installieren und die bestehenden nicht anzufassen.

IOS ist kein Hypervisor, da es auf einer dedizierten, separaten CPU läuft. Jedoch isoliert IOS seinen Speicher von der Haupt-CPU Broadway ab, kann die Wii neu starten und ist sicher, wenn der PPC kompromittiert wird (allerdings wurden viele Lücken gefunden). IOS ist also in der Sicherheitshierarchie höher, als Code, der auf dem PowerPC läuft.

Da die IOS-API oft aufwärtskompatibel ist, kann offizielle Software auch mit einem anderen IOS geladen werden (allerdings wird dies nicht empfohlen). Homebrew-Software kann unter einer Vielzahl von IOS laufen, oft nur eingeschränkt von speziellen Features (wie USB).

Wenn die Wii im Standby-Modus (WiiConnect24) ist (orange LED), ist die Haupt-PowerPC-CPU ausgeschaltet, aber IOS läuft noch.