CPU -schemaläggningsalgoritmer är utformade för att bestämma vilken process som ska tilldelas CPU vid en viss tidpunkt. För att fatta detta beslut överväger de olika kriterier. Dessa kriterier kan i stort sett kategoriseras i:
1. Prestationskriterier:
* CPU -användning: Syftar till att hålla CPU:er upptagen så mycket som möjligt och maximera dess användning.
* genomströmning: Mäter antalet processer som är genomförda per tid.
* Turnaround Time: Den totala tiden en process spenderar i systemet, från ankomst till slutförande.
* Väntetid: Den tid en process spenderar på att vänta i den färdiga köen innan du får CPU.
* Responstid: Den tid det tar för en process att börja svara efter en användarförfrågan.
* Rättvisa: Säkerställer att alla processer får en rättvis andel av CPU -tiden.
2. Kriterier för resursanvändning:
* Resursutnyttjande: Åtgärder hur effektivt systemresurser som CPU, minne och I/O -enheter används.
* Resursallokering: Fokuserar på hur resurser tilldelas olika processer och säkerställer ingen svält (där en process aldrig får tilldelade resurser).
3. Andra kriterier:
* Prioritet: Tilldela olika prioriteringar till processer baserat på deras betydelse eller brådskande.
* tidsfrister: Tänk på de tidsfrister som är förknippade med processer och säkerställa att det är i tid.
* Realtidskrav: Hantera realtidsprocesser som har strikta tidsbegränsningar (t.ex. i multimedia-applikationer).
4. Schemaläggningsalgoritm Specifika kriterier:
Vissa schemaläggningsalgoritmer har specifika kriterier utöver de allmänna som anges ovan. Till exempel:
* kortaste jobb först (SJF): Gynnar processer med den kortaste förväntade exekveringstiden.
* Prioritetsplanering: Tilldelar prioriteringar till processer och schemalägg den högsta prioritetsprocessen först.
* Round Robin: Ger varje process en fast tidsskiva av CPU, roterande mellan processer.
Att välja rätt kriterier:
Valet av schemaläggningskriterier beror på de specifika systemkraven och arten av processerna som planeras. Till exempel:
* interaktiva system: Prioritera responstid och rättvisa för att ge en smidig användarupplevelse.
* batchsystem: Fokusera på genomströmning och CPU -användning för att maximera bearbetningseffektiviteten.
* realtidssystem: Prioritera tidsfrister och responstider för att garantera i rätt tid.
Genom att förstå de olika schemaläggningskriterierna kan du välja den lämpligaste algoritmen och parametrarna för dina specifika systembehov.