Распоре?ива?е процеса
[
уреди
]
Распоре?ива?е процеса
нам ?е битан метод у области
мултипрограмира?а
. Мултипрограмира?ем се мемори?а дели на партици?е у ко?е се смешта?у различити процеси. У суштини мултипрограмира?ем више процеса на на?ефективни?и начин делимо различите процесе различитим процесорима. Зато на ?еднопроцесорским системима се у ?едном тренутку може извршавати само ?едан процес. За распоре?ива?е процеса на на?ефективни?и начин ?е задужен оперативни систем, па се ту сусре?емо са по?мовима
"Редови чека?а на процесор"
и
"Планери послова и диспечери"
.
Редови чека?а на процесор
[
уреди
]
Посто?и више редова чека?а кроз ко?е пролазе процеси:
- ред чека?а за послове (job queue), ко?и обухвата све посто?е?е процесе на систему;
- ред чека?а спремних послова (ready queue), ко?и обухвата све процесе спремне за рад и ко?и се налазе у радо? мемори?и.
- специ?ални ред чека?а ко?и уводи оперативни систем за улазно/излазне уре?а?е.
Када процесор крене да извршава одре?ени процес тада кажемо да се та? процес налази у ста?у извршава?а.
Када се процес налази у ста?у извршава?а могу се десити различити сценари?и:
- процес се може извршити;
- процес може пре?и одре?ени временски квантум (ограниче?е) па зато остати без процесора;
- направити нови процес и чекати у блокираном ста?у док се нови процес не изврши;
- може остати без процесора уколико се деси прекид
- Постави U/I захтев, након чега се пребацу?е у ред чека?а на улазно/излазни уре?а?, т?. поста?е блокиран. Процес се вра?а у ред чека?а на процесор све док се не заврши, после чега ослоба?а све заузете ресурсе;
Планери послова и диспечери
[
уреди
]
на основу ресурса ко?е доминантно користе, процеси се деле на
- процесе ко?и доминантно користе процесор;
- процесе ко?и доминантно користе улазно/излазне уре?а?е;
Планер послова има задуже?е да све процесе
попаку?е
на временски на?ефективни?и начин. Зато процесор не сме себи да дозволи следе?е две ставке:
- ве?ина одабраних послова интензивно користи процесор, ?ер би тада улазно/излазни били
слабо искориш?ени;
- ве?ина одабраних послова интензивно користи улазно/излазне уре?а?е, ?ер би тада
процесор био слабо искориш?ен;
Улога
диспечера
?е да доде?у?е процесор процесу када он пре?е из
ста?а извршава?а у ста?е чека?а или готово.
Диспечер одлучу?е следе?е три ствари:
- ко?и процес ?е добити процесор;
- када ?е га добити;
- на колико дуго ?е га добити;
Учесталост позива?а планера послова и диспечера се знатно
разлику?у, диспечер се позива много чеш?е од планера.