Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?

macOS Sierra: Warum einige Programme nicht mehr laufen

Jedes Systemupdate birgt natürlich immer das Risiko, dass bestimmte Programme nicht mehr korrekt funktionieren - beispielsweise weil bestimmte Schnittstellen aufgegeben wurden oder Apple Framework-Änderungen vornahm. Mit macOS Sierra wird es gleich eine ganze Reihe an Programmen treffen. Nach dem Update auf Sierra zeigt direkt schon das Logo jener Apps, dass keine Ausführung möglich ist und der Nutzer nach Alternativen schauen muss. Der Grund dafür ist die Abschaffung von "Garbage Collecting", das Apple mit Mac OS X 10.5 im Jahr 2007 eingeführt hatte. Betroffen sind viele Apps, die in den Jahren 2007 bis 2009 auf den Markt kamen und seitdem nicht neuentwickelt wurden. "Du kannst diese Version des Programms „XY“ nicht mit dieser Version von macOS verwenden." lautet übrigens jene Fehlermeldung, die man sicher nicht sehen will. Leider ist es etwas schwieriger, dies vorab zu überprüfen. Eine kurze Anleitung gibt es am Ende des Artikels.


Apple und Garbage Collecting
Apple sah sich vor mehr als zehn Jahren mit der Problematik konfrontiert, dass andere moderne Anwendungsumgebungen allesamt auf automatische Speicherverwaltung setzten - daher musste eine Lösung her, damit Umsteiger von anderen Sprachen nicht vor große Hürden gestellt werden. Anders als die momentan in Objective-C und Swift vorhandene Möglichkeit, mittels ARC (Automatic Reference Counting) schon beim Kompilieren automatisch Speicherbereiche zu verwalten, griff der Garbage Collector ein, während ein Programm lief. Es wurde analysiert, welche Speicherbereiche noch benötigt werden und welche freizugeben sind.

Frühe Probleme
Da aber weder Objective-C noch die gesamten Frameworks darauf ausgelegt sind, führte dies zwangsläufig zu einer Vielzahl von Problemen: Häufiger konnte der Garbage Collector nicht verlässlich analysieren, welche Gruppen von untereinander verbundenen Speicherbereichen im RAM bleiben mussten und welche überflüssig sind. Andersherum kam es auch vor, dass der Garbage Collector manche Speicherbereiche freigeben hat, obwohl diese noch von anderen Bestandteilen benötigt wurden.

Xcode - Apples Pilotprojekt
Apple stellte die mit OS X 10.5 Leopard erschienene Version der Xcode-Programmierumgebung auf den Garbage Collector um - wohl um Probleme mit der automatischen Speicherverwaltung zu erkennen zu beheben. Xcode setzte aber nicht alle im System beinhalteten Frameworks ein, sodass manche gar nicht mit dem Garbage Collector verwendet werden konnten, weil zu viele Bugs auftraten.

Schwache Performance
Ein großes Problem stellte auch die Performance des Garbage Collectors dar: Ein Programm, welches viele Objekte anlegt und (normalerweise) sofort wieder freigibt, brauchte ein Vielfaches des Speichers im Vergleich zu einem Programm mit manueller Speicherverwaltung. Es war in diversen Situationen aus Sicht des Entwicklers einfach nicht vorhersehbar, wann der Garbage Collector mit dem Aufräumen anfing.

Das sehr schnelle Aus für den Garbage Collector
Den Todesstoß des Garbage Collectors setzte wahrscheinlich iOS: Auf dem Mac war der Performance-Verlust zwar merklich, aber zu verschmerzen. Auf dem ersten iPhone mit viel weniger RAM mussten die Entwickler zu Anfang den Speicher wieder manuell verwalten, da de Ressourcen zu schnell erschöpft gewesen wären. Eine neue Lösung musste her - und diese heißt ARC (Automatic Reference Counting), löste den Garbage Collector auf dem Mac ab und steht auch auf iOS zur Verfügung. Schon mit OS X 10.8 Mountain Lion kündigte Apple an, den Garbage Collector irgendwann einzumotten. Dies ist jetzt mit macOS Sierra vollzogen.

Wie kann ich feststellen, ob die App Garbage Collecting verwendet?
Eine Vorabprüfung fällt leider sehr umständlich aus. Erforderlich dazu ist, dass auf dem Mac Xcode installiert wurde. Anschließend muss folgende Eingabe ins Terminal erfolgen, der Befehl verweist auf Programme im Applications-Order:

otool -oV Applications/PROGRAMMNAME.app/Contents/MacOS/PROGRAMMNAME | tail -3

Sollte das Terminal nun den Bestandteil "OBJC_IMAGE_SUPPORTS_GC" ausgeben, dann startet die App unter macOS Sierra nicht mehr, da der Garbage Collector zum Einsatz kommt. Dies hier würde bedeuten, dass die App unter macOS Sierra den Dienst verweigert:

Contents of (__DATA,__objc_imageinfo) section
  version 0
    flags 0x6 OBJC_IMAGE_SUPPORTS_GC

Der einfachere Weg ist natürlich, dem Hersteller zu schreiben oder auf den jeweiligen Produktseiten nachzulesen, ob macOS Sierra auch unterstützt wird.

Kommentare

Peter Eckel20.09.16 17:01
Erstens: Man muß nicht die ganze XCode-Umgebung installieren, für den angegebenen Zweck reichen die CLI-Tools. Die bekommt man sehr schnell und einfach vom Terminal aus aufs System:
xcode-select --install
Zweitens:
Der einfachere Weg ist natürlich, dem Hersteller zu schreiben oder auf den jeweiligen Produktseiten nachzulesen, ob macOS Sierra auch unterstützt wird.
Wenn das der einfachere Weg ist, dann weiß ich's nicht ... wie vielen Herstellern will ich denn Mails schreiben und auf deren Antwort warten, um die Kompatibilität aller meine Apps abzuklären? Da bin ich sogar dann schneller fertig, wenn ich das otool-Kommando für jedes Programm auf meiner Platte einzeln eingebe - und die Antwort ist auch definitiv richtig

Aber der Tip mit otool ist gut, danke dafür!
Ceterum censeo librum facierum esse delendum.
0
GothicGayTuerke
GothicGayTuerke20.09.16 17:05
Das mit dem Entsperren finde ich echt 'ne Sauerei! Habe MbPr und Air aus dem Jahre 2012 und freute mich schon auf die Uhr, um es damit zu entsperren? Gibt es Alternativen, auch ohne die Uhr, sprich manuell? So wie damals bei Windows?
Wie erklärt man einem dummen Menschen, dass er dumm ist?!
0
schaudi
schaudi20.09.16 17:26
GothicGayTuerke
Das mit dem Entsperren finde ich echt 'ne Sauerei! Habe MbPr und Air aus dem Jahre 2012 und freute mich schon auf die Uhr, um es damit zu entsperren? Gibt es Alternativen, auch ohne die Uhr, sprich manuell? So wie damals bei Windows?

vielleicht einfach so wie bisher auch über das passwort? oder was meinst du?
Hier persönlichen Slogan eingeben.
0
Barbarossa
Barbarossa20.09.16 18:21
Warum nicht einfach hier die Namen der betroffenen Programme zusammentragen?
0
MikeMuc20.09.16 18:31
Jetzt wäre ein nettes tool interessant welches alle Programme auf der Platte abgrast, diesen Test durchführt und dann eine Liste aller Programme präsentiert die nicht mehr laufen.
Und bitte dabei auch gleich alle möglichen Treiber, Erweiterungen etc mit testen. Sonst ist hinterher das Geschrei groß wenn dieser Drucker und jener Scanner nicht mehr läuft.
0
ShumweightBerlin
ShumweightBerlin20.09.16 18:44
Ich habe mit dem obenstehenden Terminalkommando die Programme Tags 2.5.5, Affinity Photo 1.4.2 und Adobe Photoshop CS3 unter Mac OS X 10.10.5 ausgeben lassen. Scheinen nicht betroffen zu sein.

Worauf könnte denn das RR hinter Flag hindeuten?

0
ocrho20.09.16 18:46
Ich bin überrascht, dass noch keiner weltweit eine Kompatibilitätsliste erstellt hat so wie das bei früheren OS X Updates war. Falls doch so wäre es nett wenn er hier einen Link posten könnte.
0
robiv8
robiv820.09.16 18:59
ocrho
Ich bin überrascht, dass noch keiner weltweit eine Kompatibilitätsliste erstellt hat so wie das bei früheren OS X Updates war. Falls doch so wäre es nett wenn er hier einen Link posten könnte.

Schau mal hier nach.
roaringapps
0
ocrho20.09.16 21:34
robiv8
roaringapps

Besten Dank!
0
Legoman
Legoman21.09.16 08:39
schaudi
GothicGayTuerke
Das mit dem Entsperren finde ich echt 'ne Sauerei! Habe MbPr und Air aus dem Jahre 2012 und freute mich schon auf die Uhr, um es damit zu entsperren? Gibt es Alternativen, auch ohne die Uhr, sprich manuell? So wie damals bei Windows?

vielleicht einfach so wie bisher auch über das passwort? oder was meinst du?

Und was genau hat das jetzt mit einem Artikel über nicht mehr laufende Drittanwenderprogramme zu tun?
0
Laphroaig
Laphroaig21.09.16 09:01
Kann jemand mal InDesign CS6 testen? PS und Illustrator CS6 scheinen laut roaringapps zu laufen.
0
David_B
David_B21.09.16 09:48
CS5.1 / CS5.5 wäre auch interessant zu wissen.
0
phaus21.09.16 15:40
Ich habe mal n kleines Script geschrieben was den Check auf alle vorhandenen Applications ausführen sollte:

https://gist.github.com/phaus/493d5c54e0dd39b785a5eb1f1dcf9237
0
sideshow-systems21.09.16 19:30
phaus
Ich habe mal n kleines Script geschrieben was den Check auf alle vorhandenen Applications ausführen sollte:

https://gist.github.com/phaus/493d5c54e0dd39b785a5eb1f1dcf9237

Wow! Wollte ich heute Abend auch machen, kann ich mir jetzt sparen!
Vielen Dank!
0
geka22.09.16 00:20
Laphroaig
Kann jemand mal InDesign CS6 testen? PS und Illustrator CS6 scheinen laut roaringapps zu laufen.
David_B
CS5.1 / CS5.5 wäre auch interessant zu wissen.

CS 4 läuft, das dürfte auch für Euch reichen
0
paraneujahr22.09.16 00:56
geka
CS 4 läuft, das dürfte auch für Euch reichen

...ja, wie schon bei 10.10 und 10.11 muss mal lediglich die Java-Bibliothek nachinstallieren. Das ist aber mit zwei klicks getan.
0
David_B
David_B22.09.16 16:19
Wäre ja cool. Hab zu Dreamweaver gelesen, dass es angeblich gar nicht starten würde.
0
maclake29.09.16 18:31
phaus
Ich habe mal n kleines Script geschrieben was den Check auf alle vorhandenen Applications ausführen sollte:

https://gist.github.com/phaus/493d5c54e0dd39b785a5eb1f1dcf9237
Kann mir einer sagen, wie ich das script nutze?
0
MOTIVHIMMEL
MOTIVHIMMEL02.10.16 15:12
maclake
Kann mir einer sagen, wie ich das script nutze?

Terminal öffnen, dann dort den Befehl "sh" eingeben (Ohne die Striche) und dann die Datei ins Terminal ziehen, die die Befehle da beinhaltet. Die Datei sollte mit der Endung .sh versehen sein.
0
marfa07.01.17 21:28
Hallo, ich bin nicht die super besste was Mac angeht und habe folgendes Problem, dass ich nach dem Update auf OS Sierra den PS in CS6 nicht öffnen kann. Ai und Id gehen ohne Problem.
Ich habe jetzt Java instaliert , hat aber nichts geholfen.
paraneujahr
geka
CS 4 läuft, das dürfte auch für Euch reichen

...ja, wie schon bei 10.10 und 10.11 muss mal lediglich die Java-Bibliothek nachinstallieren. Das ist aber mit zwei klicks getan.

wie installiere ich die Java-Bibliothek nach? bringt das was? was könnte ich noch versuchen?
danke jetzt schon für eure Hilfe.
0
geka07.01.17 23:11
marfa
danke jetzt schon für eure Hilfe.
bei mir funktionierte PS einfach so nach dem letzten Sierra Update.
0
marfa09.01.17 11:57
Kannst du mir bitte direcktes link für den Java-Bibliothek Install schicken?
danke
paraneujahr
geka
CS 4 läuft, das dürfte auch für Euch reichen

...ja, wie schon bei 10.10 und 10.11 muss mal lediglich die Java-Bibliothek nachinstallieren. Das ist aber mit zwei klicks getan.
0

Kommentieren

Sie müssen sich einloggen, um die News kommentieren zu können.