Spustit frontu - Run queue
![]() | tento článek ne uvést žádný Zdroje.Prosince 2009) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
V moderních počítačích mnoho procesy běžet najednou. Aktivní procesy jsou umístěny do pole zvaného a spustit frontunebo runqueue. Fronta běhu může obsahovat hodnoty priority pro každý proces, které budou používány plánovač k určení, který proces bude spuštěn jako další. Aby bylo zajištěno, že každý program má spravedlivý podíl zdrojů, je každý spuštěn po určitou dobu (kvantově), než je pozastaven a vrácen zpět do fronty spuštění. Když je program zastaven, aby bylo možné spustit další program, může se spustit program s nejvyšší prioritou ve frontě spuštění.
Procesy jsou také odstraněny z fronty spuštění, když o to požádají spát, čekají na zpřístupnění zdroje nebo byly ukončeny.
V Linux v operačním systému (před jádrem 2.6.23) je každému CPU v systému přidělena běhová fronta, která udržuje aktivní i prošlou řadu procesů. Každé pole obsahuje 140 (jeden pro každou úroveň priority) ukazatelů na dvojnásobně propojené seznamy, které zase odkazují na všechny procesy s danou prioritou. Plánovač vybere další proces z aktivního pole s nejvyšší prioritou. Když proces ‚kvantum vyprší, je umístěn do prošlého pole s určitou prioritou. Když aktivní pole neobsahuje žádné další procesy, plánovač zamění aktivní a prošlá pole, proto název O (1) plánovač.
v UNIX nebo Linux, sar příkaz se používá ke kontrole běhové fronty.
The vmstat UNIX nebo Linux Příkaz lze také použít k určení počtu procesů, které jsou zařazeny do fronty ke spuštění nebo čekají na spuštění. Ty se objeví ve sloupci „r“.
Existují dva modely pro fronty Run: jeden, který přiřazuje Run Queue každému fyzickému procesoru, a druhý má v systému pouze jednu Run Queue
Viz také
- Zcela spravedlivý plánovač, plánovací algoritmus používaný Linuxem od jádra 2.6.23