Mam solidne pojęcie o działaniu GCD, ale chcę dowiedzieć się więcej o reklamowanych elementach wewnętrznych "zarządzania systemem operacyjnym". Wygląda na to, że prawie każde techniczne wytłumaczenie działania Grand Central Dispatch z "Systemem operacyjnym" jest zupełnie inne. Parafrazuję niektóre z moich ustaleń.W jaki sposób Grand Central Dispatch naprawdę korzysta z systemu operacyjnego?
„Jest to demon, który jest globalny do systemu operacyjnego który rozdziela zadania przez wiele rdzeni.”
Nie jestem na tyle głupi, aby w to uwierzyć.
„Wsparcie jest wbudowana w jądro do być świadomy wszystkich zastosowań GCD. GCD aplikacje działają w porozumieniu z jądrem do podejmowania decyzji logicznych jak zarządzać wątki w aplikacji ”.
Wygląda na to, że ten schemat synchronizacji byłby znacznie wolniejszy niż zarządzanie logiką w aplikacji.
„GCD to istnieje wyłącznie w aplikacji i wykorzystuje obecny system obciążenie jako metryki, jak się zachowuje”.
Brzmi to bardziej realistycznie, ale widziałem tylko takie stwierdzenie w jednym miejscu.
Co się tutaj naprawdę dzieje? Czy to tylko biblioteka, czy też jest to cały "system"?
Dzięki za szczegółowe wyjaśnienie! Moje zamieszanie zaczęło się, gdy czytałem o porcie FreeBSD i zastanawiałem się, jak do diabła została przeniesiona funkcja OSX "OS" (choć BSD) jako biblioteka! Jeszcze raz dziękuję +1 –