Kao sto rekoh, jedan proces SAM ne moze konstantno tokom izvodjenja u multitasking sistemima da dobije 100% procesorskog vremena, znaci uvijek su tu i neki drugi procesi koji rade u pozadini. Vecina procesa se veci dio vremena nalazi u stanju cekanja (
idle-state), znaci ne izvode nikakve operacije i ne opterecuju procesor, tako da procesor moze da posveti vise svog vremena procesu koji non-stop nesto radi (poput petlje). Ali u multitasking sistemima sa jednim procesorom se ne moze dobiti 100% procesorskog vremena, moze biti blizu ali nikada 100%. Kad vidite da je opterecenje procesora 100%, znaci da ga svi procesi zajedno opterecuju 100%, a ne jedan jedini proces.
Neka startujem npr. jedan program sa ovakvom petljom:
Kod:
while(true)
{
;
}
Ovaj blok koda ne daje procesoru predaha, ali ako pogledate koliko procesora zauzima taj program, nece biti 100%, medjutim ukupno opterecenje procesora bice 100%.
Ako startujete vise instanci tog programa sa petljom, vidjecete da svaka instanca zauzima jos manje procesora mjereno u procentima, to je zato sto procesor raspolozivo vrijeme mora da podijeli na vise instanci programa. Ukupno opterecenje procesora bice i dalje 100%.
Ako samo jednoj instanci tog programa povecate prioritet, vidjecete da on zauzima vise procesorskog vremena nego ostale instance, ali nikad 100%, medjutim ukupno opterecenje procesora bice i dalje 100%