De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Hoofdstuk 9: Scheduling bij één processor. 9.1. Soorten scheduling Soorten scheduling: short term scheduling middle long term scheduling long term scheduling.

Verwante presentaties


Presentatie over: "Hoofdstuk 9: Scheduling bij één processor. 9.1. Soorten scheduling Soorten scheduling: short term scheduling middle long term scheduling long term scheduling."— Transcript van de presentatie:

1 Hoofdstuk 9: Scheduling bij één processor

2 9.1. Soorten scheduling Soorten scheduling: short term scheduling middle long term scheduling long term scheduling I/O scheduling Px PROCESSOR Px RAM Py Pz ready Pa Pb Pc Pd Pe Py hfdst 7/8 hfdst 3hfdst 11

3 9.1. Soorten scheduling ready allow release blocked ready suspended exit dispatch time-out (~preemtive) wait on event (I/O) event occurs running suspend new allow activate event occurs activate suspend blocked suspended secondary memory main memory procestoestanden

4 9.1. Soorten scheduling ready blocked ready suspended exit running new blocked suspended procestoestanden long term scheduling long term scheduling middle long term scheduling middle long term scheduling short term scheduling

5 9.1. Soorten scheduling batch jobs PROCESSOR queue ready queue ready-suspended queue blocked-suspended queue blocked time-out release wait on event event occurs long term sched. middle long term sched. short term sched.

6 9.1. Soorten scheduling scheduling = inroosteren doel:1)wachtrijvertragingen minimaliseren 2)prestaties maximaliseren long term scheduler wanneer runnen? - exit van proces - processor te weinig actief middle long term scheduler - bij onefficiente geheugenallocatie middle long term scheduler - klokinterrupts - I/O interrupts - system calls - signals

7 9.2. Algoritmen voor scheduling criteria bij korte termijn scheduling kwantitatief (~prestaties) kwalitatief (~overig) user oriented system oriented - turn-around time - response time - deadlines - predictability (~variability on response times and turn-around times) - throughput - processor usage - fairness - respecting priorities - balancing usage of system resources

8 9.2. Algoritmen voor scheduling gebruik van prioriteiten PROCESSOR release RQ0 RQ1 RQn Queue blocked dispatch :::: admit probleem: starvation oplossing: prioriteit aanpasbaar

9 9.2. Algoritmen voor scheduling mogelijke strategieën voor scheduling selectiefunctie : bepaalt welke proces in ready toestand als volgende de processor krijgt toebedeeld. gebaseerd op: 1) prioriteit 2) vereiste systeembronnen 3) uitvoeringskenmerken van proces uitvoeringskenmerken: w = tijd die wachtend is doorgebracht e = tijd die tot dusverre aan verwerking is besteed s = totale bedieningstijd van proces (inclusief e)

10 9.2. Algoritmen voor scheduling mogelijke strategieën voor scheduling beslissingmodus : bepaalt op welke tijdstippen de selectiefunctie wordt uitgevoerd niet preëmptiefpreëmptief bij einde van proces of bij blokkering van proces bij aankomst van nieuw proces of bij optreden van interrupt of Periodiek (~klokinterrupt)

11 9.2. Algoritmen voor scheduling definities service time: totale tijd die vereist is voor verwerking turnaround time : totale tijd dat proces in systeem aanwezig is (service time + wait time) genormaliseerde turnaround time : turnaround time / service time setting time of arrivalservice time A03 B26 C44 D65 E82

12 9.2. Algoritmen voor scheduling definities service time: totale tijd die vereist is voor verwerking turnaround time : totale tijd dat proces in systeem aanwezig is (service time + wait time) genormaliseerde turnaround time : turnaround time / service time setting time of arrivalservice time A03 B26 C44 D65 E82

13 9.2. Algoritmen voor scheduling first come, first served (FCFS) time of arrival service time A03 B26 C44 D65 E82 ABCDEABCDE gemiddelde service time = 8,60 gemiddelde T r /T s = 2,56 nadelen: 1) ongunstig bij korte processen (zie next slide) 2) neiging om processor gebonden processen voorrang te geven op I/O gebonden processen (kan leiden tot inefficient processorgebruik en I/O gebruik) vaak gebruikt in combinatie met andere technieken

14 9.2. Algoritmen voor scheduling first come, first served (FCFS) voorbeeld van slecht service level time of arrival service timestart time end time turnaround time T r /T s W X Y Z ,99 gemiddeld10026

15 9.2. Algoritmen voor scheduling Round Robin (RR) time of arrival service time A03 B26 C44 D65 E82 ABCDEABCDE bij q=1: gemiddelde service time = 10,80; gemiddelde T r /T s = 2,71 - klokinterrupt met periodieke intervallen (let’s say ‘q’) - selectie van volgend proces volgend FCFS principe gedrag afhankelijk van time slice ‘q’ (see next slide) ‘q’ klein  veel overhead door vele proceswisselingen ‘q’ groot  neigt naar FCFS

16 9.2. Algoritmen voor scheduling Round Robin (RR) time of arrival service time A03 B26 C44 D65 E82 ABCDEABCDE bij q=1: gemiddelde service time = 10,80; gemiddelde T r /T s = 2,71 ABCDEABCDE bij q=4: gemiddelde service time = 10,00; gemiddelde T r /T s = 2,71

17 9.2. Algoritmen voor scheduling Round Robin (RR) time of arrival service time A03 B26 C44 D65 E82 gedrag afhankelijk van time slice ‘q’ (see next slide) ‘q’ klein  veel overhead door vele proceswisselingen ‘q’ groot  neigt naar FCFS richtlijn: neem ‘q’ iets groter dan doorsnee ‘interactie’ response time time slice q response time preëmptieve onderbreking q groter dan doorsnee interactie q kleiner dan doorsnee interactie

18 9.2. Algoritmen voor scheduling Round Robin (RR) time of arrival service time A03 B26 C44 D65 E82 voordelen: werkt goed bij timesharing of transactieverwerking nadelen: werkt oneerlijk bij mengeling van I/O gebonden jobs en processor gebonden jobs (~slechtere prestaties van I/O gebonden jobs) oplossing: Virtual Round Robin PROCESSOR time-out release wait on I/O3 allow wait on I/O2 wait on I/O1 aanvullende wachtrij ready queue processen uit aanvullende wachtrij krijgen voorrang tot rest van time slice is opgebruikt

19 9.2. Algoritmen voor scheduling Shortest Process Next (SPN) time of arrival service time A03 B26 C44 D65 E82 - selecteer proces met kortste verwachte verwerkingstijd - niet preemptief; langere antwoordtijden voor processorgebonden jobs probleem: schatten van verwerkingstijd 1)batchtaken: waarde schatten door programmeur 2)productieomgeving: statistieken 3)interactieve processen: gemiddelde bijhouden van elke burst van elk proces S n+1 = (T 1 + T 2 + … + T n )/n S n+1 = (T n /n) + ((n-1)/n)*S n S n+1 =  *T n + (1-  )*S n (0<  <1)  =0,8  recente observaties belangrijk  =0,2  alle observaties belangrijk

20 9.2. Algoritmen voor scheduling Shortest Process Next (SPN) time of arrival service time A03 B26 C44 D65 E82 Risico: Starvation bij langere processen

21 9.2. Algoritmen voor scheduling Shortest Process Next (SPN) time of arrival service time A03 B26 C44 D65 E82 ABCDEABCDE 0510 gemiddelde service time = 7,60; gemiddelde T r /T s = 1,

22 9.2. Algoritmen voor scheduling Shortest Remaining Time (SRT) time of arrival service time A03 B26 C44 D65 E82 - selecteer proces met kortste resterende verwerkingstijd - preëmptief (huidig proces onderbroken bij aankomst korter proces in Ready Queue) - eveneens schatting van verwerkingstijden nodig (cfr. SPN) - uithongeren van langere processen mogelijk vergelijking andere algoritmes: t.o.v. FCFS : geen bevoordeling van langere processen t.o.v. RR: geen extra interrupts t.o.v. SRT: beter omlooptijden (~kortere taak krijgt voorrang)

23 9.2. Algoritmen voor scheduling Shortest Remaining Time (SRT) time of arrival service time A03 B26 C44 D65 E82 ABCDEABCDE 0510 gemiddelde service time = 7,20; gemiddelde T r /T s = 1,

24 9.2. Algoritmen voor scheduling Highest response ratio next (HRRN) time of arrival service time A03 B26 C44 D65 E82 DOEL: Tr/Ts klein houden voor elk proces - selecteer proces met grootste te verwachten genormaliseerde turnaround time - niet preëmptief - eveneens schatting van verwerkingstijden nodig (cfr. SPN) - uithongeren van langere processen mogelijk te verwachten genormaliseerde turnaround time = R = (w + s)/s uitvoeringskenmerken: w = tijd die wachtend is doorgebracht s = verwachte bedieningstijd van proces R = responseverhouding

25 9.2. Algoritmen voor scheduling Highest response ratio next (HRRN) time of arrival service time A03 B26 C44 D65 E82 ABCDEABCDE 0510 gemiddelde service time = 8,00; gemiddelde T r /T s = 2, eigenschappen: - houdt rekening met levensduur van proces - kortere processen licht bevooroordeeld

26 9.2. Algoritmen voor scheduling Multilevel Feedback time of arrival service time A03 B26 C44 D65 E82 probleem: wat indien verwerkingstijden niet geschat kunnen worden?  SPN, SRT en HRRN onbruikbaar aanpak: processen straffen die al lang worden uitgevoerd - processen dalen naar wachtrijen met lagere prioriteit - RR per wachtrij - preëmptief onderbreken - mechanisme voor dynamische prioriteit PROCESSOR release allow RQ0 RQ1 RQ2 RQ4 PROCESSOR release PROCESSOR release PROCESSOR lowest priority variante: verschillend tijdsquantum ‘q’ per wachtrij RQi  q=2 i

27 9.2. Algoritmen voor scheduling Prestatievergelijking Factoren die prestaties beïnvloeden: 1)waarschijnlijkheidsverdeling van bedieningstijden 2)efficiëntie van mechanisme voor scheduling en contextwisseling 3)vorm van I/O aanvragen 4)prestaties van I/O subsysteem

28 9.2. Algoritmen voor scheduling Prestatievergelijking wachtrijanalyse indien (a) aankomsttijden Poisson-verdeling vertonen, en (b) bedieningstijden exponentieel verdeeld zijn, dan T r /T s = 1/(1-  ) T r = turnaround time (wachttijd + uitvoeringstijd) T s = gemiddelde bedieningstijd  = bezettingsgraad van processor Practisch: prioriteiten zijn onafhankelijk van verwachte bedieningstijden Voorbeelden: Round Robin & FCFS (niet: SJF, SRTF, …)

29 9.2. Algoritmen voor scheduling Prestatievergelijking Setting: jobs gemiddelde bedieningstijd = T s = 1 gemiddelde aankomstsnelheid = = 0,8 langere jobs korte jobs

30 9.3. Conclusies Soorten scheduling: short term scheduling middle long term scheduling long term scheduling FCFS RR SPN SRT HRRN FB


Download ppt "Hoofdstuk 9: Scheduling bij één processor. 9.1. Soorten scheduling Soorten scheduling: short term scheduling middle long term scheduling long term scheduling."

Verwante presentaties


Ads door Google