I icke-förebyggande kortaste jobb först (SJF)-schemaläggning, allokeras CPU till den process som har den kortaste CPU-skurtiden bland processerna i redo-kön. När en process väl har allokerats CPU kan den inte förebyggas av en annan process, även om den senare har en kortare CPU-skurtid. Det betyder att den process som körs för närvarande kommer att fortsätta att köras tills den slutför sin körning eller blockerar av någon anledning.
Här är ett exempel för att illustrera icke-förebyggande SJF-schemaläggning:
Tänk på följande uppsättning processer med deras CPU-bursttider:
Process 1:Bursttid =5
Process 2:Bursttid =3
Process 3:Bursttid =8
Inledningsvis är alla tre processer i klarkön. CPU:n allokeras till Process 2 eftersom den har den kortaste CPU-bursttiden. Process 2 börjar köras och körs i 3 tidsenheter. Vid tidpunkten t =3 slutför process 2 sin exekvering och avslutas.
Nu innehåller redo-kön Process 1 och Process 3. Process 1 har en kortare CPU-skurtid än Process 3, så den tilldelas CPU. Process 1 pågår i 5 tidsenheter och avslutar sin exekvering vid tidpunkten t =8.
Slutligen är det bara Process 3 kvar i redo-kön. Den är tilldelad CPU och körs i 8 tidsenheter. Vid tidpunkten t =16 slutför process 3 sin exekvering och CPU:n blir inaktiv.
Sammanfattningsvis är den ordning i vilken processerna exekveras i detta exempel:Process 2, Process 1 och Process 3. Den totala tiden det tar att slutföra alla processer är 16 tidsenheter.