- Grand Central Dispatch
-
Grand Central Dispatch Maintainer Apple Inc. Entwickler Apple Inc. Aktuelle Version 1.0
(11. September 2009)Betriebssystem Mac OS X, Unix Lizenz Apache-Lizenz 2.0 Deutschsprachig nein libdispatch.macosforge.org Grand Central Dispatch (GCD) ist eine Technologie und ein Entwickler-Framework, das von dem Unternehmen Apple entwickelt wird, um die Unterstützung von mehreren Prozessoren und Mehrkernprozessoren in Mac OS X v10.6 zu verbessern.[1] Grand Central stellt eine Programmierschnittstelle zur Verfügung, die die Verwendung mehrerer Rechenwerke (CPU-Prozessorkerne) abstrahiert. Der Quellcode für die Einbindung von Grand-Central-Dispatch-Diensten, libdispatch, wurde am 10. September 2009 von Apple offengelegt.[2]
Grand Central wird entwickelt, um den Softwareentwicklern auf Mac OS X die Nutzung von mehreren Prozessorkernen zu erleichtern. Die Grundkonzeption der Technologie ist es, einzelne, zu verarbeitende Aufgaben (Tasks) zu definieren, die dann von GCD verwaltet und an die verfügbaren Prozessoren verteilt werden. Die Vorteile dieser Technologie sind, dass sich die Entwickler für die Implementierung von einfachen parallelen Aufgaben nicht mit den Details von Multithreading auskennen müssen, sowie dass es unabhängig von der Anzahl der Prozessorkerne arbeitet und somit ein erheblicher Programmieraufwand für die Entwickler entfällt.[3]
Grand Central Dispatch beruht auf den gleichen Prinzipien wie auch Microsofts Task Parallel Library für die .Net-Plattform, Javas Concurrency API für Java und Intels Threading Building Blocks.
Portierung auf andere Betriebssysteme
Am 26. September 2009 wurde die Verfügbarkeit von libdispatch unter FreeBSD 8.1 bekanntgegeben.[4] Auch MidnightBSD 0.3-CURRENT beinhaltet libdispatch.[5]
Die aktuellen Quellen des libdispatch Projektes kompilieren und funktionieren auch unter Linux und wurden der Debian Distribution als Pakete vorgeschlagen.[6][7]
Windows wird von zwei Forks unterstützt, die auf opensource.mlba-team.de und Github zu finden sind.[8][9] Eine Zusammenführung der verschiedenen Projekte und Integration in andere GUI Toolkits außer Cocoa, wie etwa Qt wird angestrebt.[10]
Siehe auch
Einzelnachweise
- ↑ Apple zeigt Entwicklern Mac OS X Snow Leopard, 9. Juni, 2008,englisch
- ↑ Libdispatch veröffentlicht 10. September 2009, englischsprachig
- ↑ WWDC 2008: Neues in Mac OS X Snow Leopard, 18. Juni 2008, englisch
- ↑ GCD libdispatch w/Blocks support working on FreeBSD, 26. September 2009, englisch
- ↑ libdispatch, 14. August 2010, englisch
- ↑ libdispatch mailing list: "Porting status" 10. April 2011, englisch
- ↑ Paket: libdispatch0
- ↑ libdispatch mailing list: "libdispatch for Win32" 22. April 2011, englisch
- ↑ libdispatch mailing list: "Updates regarding the status of libdispatch on Windows" 5. Mai 2011, englisch
- ↑ Qt Integration, 4. Juni 2011, englisch
Wikimedia Foundation.