Original-URL des Artikels: https://www.golem.de/news/mac-os-x-10-9-apples-mavericks-unter-der-haube-1306-99755.html    Veröffentlicht: 12.06.2013 09:37    Kurz-URL: https://glm.io/99755

Mac OS X 10.9

Apples Mavericks unter der Haube

Apples kommendes Betriebssystem Mac OS X 10.9 alias Mavericks soll dank neuer Technik wie Compressed Memory, App Nap und Timer Coalescing schneller sein und für längere Akkulaufzeiten sorgen. In Sachen Netzwerk setzt Apple künftig auf Technik von Microsoft, und animierter Flash-Werbung schiebt es einen Riegel vor.

Apple erläutert in einem Dokument die Technik von "OS X Mavericks" und erklärt, wie einige der geplanten Neuerungen, darunter Compressed Memory, App Nap und Timer Coalescing, funktionieren. Ganz nebenbei tauscht Apple auch die in Mac OS X genutzte Standardnetzwerktechnik aus.

Compressed Memory

"Compressed Memory" soll dafür sorgen, dass Macs schnell bleiben und reagieren. Füllt sich der Speicher des Systems, komprimiert Compressed Memory die am seltensten benötigten Speicherinhalte auf etwa die Hälfte. Der dadurch frei werdende Speicher kann dann von anderen Anwendungen genutzt werden. Werden die komprimierten Speicherinhalte wieder benötigt, entpackt das System sie.

Dabei verwendet Apple WKdm-Algorithmen, was dafür sorgen soll, dass Kompression und Dekompression schneller erfolgen als der Zugriff auf die Festplatte. Um die CPU-Last gering zu halten, verteilt Apple den dabei anfallenden Rechenaufwand auf alle Kerne. Compressed Memory soll auch helfen, die Energieeffizienz zu erhöhen, da weniger virtueller Speicher in Swap-Files ausgelagert werden muss.

App Nap

App Nap soll vor allem die Akkulaufzeit von Notebooks verlängern: Apps, die gerade nicht verwendet werden, werden in einen speziellen Stromsparmodus geschaltet, bei dem der Zugriff auf CPU, Netzwerk und Festplatte beziehungsweise SSD vom System reguliert wird. Die Timer einer App werden im App-Nap-Modus seltener aufgerufen, Zugriffe auf die Festplatte oder Netzwerke erfolgen mit niedrigster Priorität und sehr langsam. Das soll auch verhindern, dass eine App, die im Hintergrund läuft, eine andere ausbremst. Auch die Unix-Priorität einer App wird reduziert, so dass der App weniger Rechenzeit zugeteilt wird.

Dieser App-Nap-Modus kann beispielsweise ausgelöst werden, wenn kein Fenster einer App sichtbar ist und auch kein Ton abgespielt wird. Allerdings können Entwickler ihre App auch gezielt dagegen schützen, in den App-Nap-Modus versetzt zu werden. Eine App wie Photobooth, die die integrierte Webcam nutzt, kann diese beispielsweise deaktivieren, wenn ihr Fenster von einer anderen App überlagert wird.

Safari Power Saver

Mit Power Saver wendet Apple das App-Nap-Konzept auch auf Webseiten in Safari an. So werden Webseiten, die in einem Hintergrund-Tab laufen, in einen Schlafzustand versetzt. Möglich macht das eine neue Prozessarchitektur in Safari, die jedes Tab in einem eigenen Prozess ausführt.

Inhalte von Plugins wie Adobe Flash werden nicht mehr automatisch angezeigt. Stattdessen erstellt Safari aus dem Flash-Inhalt ein Vorschaubild, das angezeigt wird. Animationen werden erst abgespielt, nachdem der Nutzer mit dem Plugin interagiert, also beispielsweise auf ein Werbebanner geklickt hat.

Centralized Task Scheduling, Timer Coalescing, SMB2 statt AFP

So manche Hintergrundaufgabe, die ein System wiederholt ausführt, kann ausgesetzt werden, wenn das System mit Akkustrom betrieben wird. Dank Centralized Task Scheduling werden bestimmte Aufgaben wie das Suchen nach Updates im Akkubetrieb nur noch alle paar Tage durchgeführt und Downloads finden gegebenenfalls nur dann statt, wenn das System am Stromanschluss hängt.

App-Entwickler können dem System über neue APIs mitteilen, wenn ihre App Aufgaben zeitlich verlagern kann, so dass diese beispielsweise nur dann ausgeführt werden, wenn das System am Stromanschluss hängt. Das System soll aber auch erkennen, wenn ein Rechner nicht benutzt wird, um dann, falls nötig, Aufgaben mit hoher Systemlast abzuwickeln, ohne dass dies den Nutzer stört.

Timer Coalescing

Die interessanteste Neuerung dürfte aber Timer Coalescing sein. Es soll dazu führen, dass die CPU möglichst viel Zeit im Idle-Modus verbringt, da dies die Leistungsaufnahme reduziert und so die Akkulaufzeit verlängert. Dazu werden die Timer der laufenden Apps synchronisiert, so dass sie möglichst gleichzeitig ausgelöst werden. So wird die CPU seltener aus dem Schlafmodus geweckt, und wenn sie aufwacht, kann sie gleich Aufgaben für mehrere Apps abwickeln. Um das zu erreichen, verändert Apple den Zeitpunkt, zu dem Timer ausgeführt werden, Entwickler können sich also nicht darauf verlassen, wann ihre Timer ausgelöst werden. Allerdings soll Mac OS X APIs bieten, mit denen App-Entwickler dies ausdrücklich unterbinden können.

Da es immer einige Mikrosekunden dauert, bis die CPU wieder voll einsatzbereit ist, wird ohne Timer Coalescing ein Teil der in diesem Zeitraum ansteigenden Leistungsaufnahme regelrecht verschwendet. Reduziert man die Wechsel zwischen den verschiedenen CPU-Modi, steigt auch die Energieeffizienz des Systems.

SMB2 statt AFP

Eine nennenswerte Änderung gibt es beim Standardnetzwerkdateisystem, denn Mavericks setzt hier bei Microsoft auf SMB2. AFP, SMB und NFS werden aber auch weiterhin unterstützt.

SMB2 sei sehr schnell, sicher und kompatibel mit Windows, begründet Apple die Umstellung. Dank des von SMB2 genutzten Resource Compounding können beispielsweise mehrere Anfragen in einem Request gesendet werden. Auch kann SMB2 schnelle Netzwerke effizienter nutzen und cacht Datei- und Ordnereigenschaften recht aggressiv. Verlorene Verbindungen kann SMB2 wieder aufbauen, ohne dass Applikationen etwas davon merken.

Bei der Authentifizierung unterstützt SMB2 Kerberos und NTLMv2, was für mehr Sicherheit sorgen soll.  (ji)


Verwandte Artikel:
Maps: Apples Kartenmaterial kommt auf die Macs   
(11.06.2013, https://glm.io/99728 )
Retrofit Kit: Alte MacOS-Versionen für APFS fit machen   
(22.02.2018, https://glm.io/132913 )
Bildbearbeitung: Google gibt Nik Collection auf   
(31.05.2017, https://glm.io/128112 )
iOS und MacOS: Apple will sich mehr Zeit bei Software-Entwicklung lassen   
(31.01.2018, https://glm.io/132486 )
Visual Studio 2017 für Mac: Mac-Entwicklungsumgebung für iOS- und MacOS-Apps   
(10.05.2017, https://glm.io/127750 )

© 1997–2019 Golem.de, https://www.golem.de/