Tengo una idea sólida de cómo funciona GCD, pero quiero saber más acerca de los componentes internos de "administración de sistemas operativos". Parece que casi todas las explicaciones técnicas de cómo Grand Central Dispatch funciona con el "Sistema operativo" son totalmente diferentes. Voy a parafrasear algunos de mis hallazgos.¿Cómo realmente utiliza Grand Central Dispatch el sistema operativo?
"Es un demonio que es global para el sistema operativo que distribuye las tareas durante muchos núcleos."
No soy tan estúpido como para creer eso.
"El apoyo está integrado en el kernel para ser consciente de todas las aplicaciones GCD. GCD aplicaciones funcionan en concierto con el kernel para tomar decisiones lógicas en cómo manejar los hilos dentro de la aplicación ."
Suena como este esquema de sincronización sería mucho más lento que simplemente administrar la lógica dentro de la aplicación.
"GCD es únicamente existe en la aplicación y utiliza sistema actual carga como una métrica a la forma en que se comporta."
Esto me parece más realista, pero solo vi una declaración como esta en un solo lugar.
¿Qué está pasando realmente aquí? ¿Es solo una biblioteca, o es un "sistema" completo?
¡Gracias por la explicación detallada! Mi confusión comenzó cuando leí sobre el puerto de FreeBSD y me preguntaba cómo se transportaba una función OSX "OS" (aunque BSD) como una biblioteca. Gracias de nuevo +1 –