Ich bin mit der Funktionsweise des X11-Systems vertraut, bei dem Clients über einen Socket eine Verbindung zum Server herstellen und Vorgänge an den Windows-Server senden, um bestimmte Vorgänge in ihrem Namen auszuführen.
Ich verstehe jedoch nicht (und konnte keine guten Dokumente finden), wie eine GUI-Anwendung mit dem Windows-System unter Mac OS X interagiert. Einige der Fragen, die ich gestellt habe, sind:
- Wie empfängt eine App Ereignisse vom Fenstersystem?
- Muss sich die App beim Kernel oder einem Windows-Server registrieren?
- Wie fordert das Fenstersystem eine App auf, ihre Anzeige zu aktualisieren?
- Wie löst eine App eine erneute Anzeige aus?
- Gibt es ein Socket-basiertes Protokoll oder ein anderes RPC-System für das Fenstersystem?
- Hat das Fenstersystem oder die Anwendung direkten Hardwarezugriff?
- Welche Operationen stehen zwischen Client-Apps und dem Fenstersystem zur Verfügung?
quelle
Das "Was ist Kakao?" Der Abschnitt des Cocoa Fundamentals Guide enthält eine Reihe großartiger Illustrationen der Architektur von unten nach oben.
quelle
Die beste Ressource für OS X-Interna ist Amit Singhs Mac OS X Interna . Es ist erstaunlich detailliert, deckt aber leider nur OS X bis 10.4 ab. Google books hat eine Vorschau .
Apples Dokumentation für OS X ist ebenfalls eine nette Ressource und offensichtlich aktueller.
quelle
XQuartz ist das Open-Source-Projekt des X.org X Window Systems, das unter Mac OS X ausgeführt wird. Das Entwickler-Wiki und die Mailing-Liste sollen Ihnen bei Ihren Fragen behilflich sein. Es scheint, als bräuchten Sie jemanden, der tief in das Projekt involviert ist, um diese zu beantworten.
quelle
In früheren MacOS-Versionen wurde das Heben von QuickDraw durchgeführt. in OS X, das von Cocoa abgelöst wurde ...
Es ist jedoch nicht einfach parallel zu X11. Beispielsweise enthält X11 kein Audio, Cocoa jedoch.
quelle