Junior — Middle
Ako je implementovaná viacvláknová súbežnosť na jednomprocesorovom systéme s jedným jadrom?
sobes.tech AI
Odpoveď od AI
V systéme s jedným procesorom a jedným jadrom je multitasking realizovaný prostredníctvom mechanizmu plánovača úloh operačného systému, ktorý rýchlo prepína vykonávanie medzi vláknami, čím vytvára ilúziu súčasnej práce. Tento proces sa nazýva kooperatívny alebo preemptívny multitasking.
Plánovač prideľuje každému vláknu (thread) krátky čas (kvantum) na vykonanie, po ktorom prechádza na ďalšie vlákno. Takže, hoci fyzicky v každom momente pracuje iba jedno vlákno, prechod je taký rýchly, že používateľ vníma prácu ako paralelnú.
Príklad: v iOS je multitasking realizovaný cez GCD (Grand Central Dispatch) alebo NSThread, ktoré využívajú systémový plánovač na rozdelenie času medzi vlákna.