![]() |
Emploi
|
![]() |
Start-up
|
![]() |
Evénements 01 | ![]() |
Avis d'expert | ![]() |
Vidéos | ![]() |
Indicateurs
|
![]() |
Distribution
|
![]() |
Telecharger Pro
|
![]() |
Livres blancs | |||||||||||||||||||||












C'est l'une des grandes nouveautés de Mac OS X 10.6. Qui, pour l'occasion, pourrait se généraliser au monde Unix. Apple vient en effet de placer sous licence Apache 2.0 sa technologie Grand Central Dispatch (GCD), conçue pour optimiser l'exploitation des processeurs multicœurs et permettre aux programmeurs d'en tirer pleinement partie.
Pour rappel, GCD est une technologie permettant de gérer la répartition des fils d'instruction (threads) lorsqu'un programme est en cours dans une architecture multicœur. Elle présente donc un intérêt de premier ordre pour les développeurs, qui peuvent se concentrer sur leur programme sans avoir à se préoccuper de la gestion de ces fils d'instruction.
En ouvrant ainsi le code de GDC, Apple a plusieurs objectifs. D'abord, l'entreprise souhaite s'attirer la faveur de développeurs qui pourraient contribuer à l'évolution de la technologie, comme cela a été le cas avec Webkit, également d'origine Apple, et permettant de réaliser un navigateur. Car Grand Central Dispatch n'est actuellement utilisé que pour les applications développées avec l'environnement Cocoa. Ce qui n'est pas l'objectif premier de la firme de Cupertino.
L'une des motivations principales d'Apple est d'adapter GCD à la plus large frange du monde Unix et plus particulièrement Linux. Microsoft n'ayant que plus ou moins d'intérêt pour cette technologie, Apple sait qu'il y a là des bénéfices évidents à cibler d'autres plates-formes.
La dernière motivation du constructeur serait de pousser l'adoption des blocs, ces extensions du langage C qui constituent la base de Grand Central Dispatch. Ceux-ci définissent des tâches au sein des applications prises en charges par CGD et ne sont actuellement pas des standards.
Actuellement, seul le compilateur libre LLVM les supporte nativement. S'ils sont inclus dans la branche de développement du compilateur GCC d'Apple, les blocs ne sont pas présents dans le repository principal de GCC, l'un des compilateurs Linux les plus usités. Et Apple aurait tout intérêt à ce qu'ils le soient.
Tout cela n'est encore que pure hypothèse. D'autant qu'il reste encore à adapter le noyau tout entier de GCD sur le site macosforge, puisqu'actuellement, seule l'API développeur est disponible. Pour l'utiliser on pourra se procurer la bibliothèque libdispatch, téléchargeable sur le site du projet, et utilisable notamment avec le compilateur LVMM.
















