Ακολουθεί ένα παράδειγμα για την απεικόνιση του μη προληπτικού προγραμματισμού SJF:
Εξετάστε το ακόλουθο σύνολο διαδικασιών με τους χρόνους έκρηξης της CPU:
Διαδικασία 1:Χρόνος ριπής =5
Διαδικασία 2:Χρόνος ριπής =3
Διαδικασία 3:Χρόνος ριπής =8
Αρχικά, και οι τρεις διεργασίες βρίσκονται στην ουρά ετοιμότητας. Η CPU εκχωρείται στη Διεργασία 2, καθώς έχει τον μικρότερο χρόνο ριπής της CPU. Η διαδικασία 2 ξεκινά να εκτελείται και εκτελείται για 3 χρονικές μονάδες. Τη χρονική στιγμή t =3, η διαδικασία 2 ολοκληρώνει την εκτέλεσή της και εξέρχεται.
Τώρα, η έτοιμη ουρά περιέχει τη διαδικασία 1 και τη διεργασία 3. Η διεργασία 1 έχει μικρότερο χρόνο ριπής CPU από τη Διεργασία 3, επομένως της εκχωρείται η CPU. Η διαδικασία 1 εκτελείται για 5 χρονικές μονάδες και ολοκληρώνει την εκτέλεσή της τη χρονική στιγμή t =8.
Τέλος, μόνο η διαδικασία 3 μένει στην ουρά ετοιμότητας. Έχει εκχωρηθεί η CPU και τρέχει για 8 χρονικές μονάδες. Τη χρονική στιγμή t =16, η διαδικασία 3 ολοκληρώνει την εκτέλεσή της και η CPU τίθεται σε αδράνεια.
Συνοπτικά, η σειρά με την οποία εκτελούνται οι διεργασίες σε αυτό το παράδειγμα είναι:Διαδικασία 2, Διαδικασία 1 και Διαδικασία 3. Ο συνολικός χρόνος που απαιτείται για την ολοκλήρωση όλων των διεργασιών είναι 16 χρονικές μονάδες.
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα