סדרן תוכניות

מונח במדעי המחשב, תוכנית שאחראית על חלוקת זמן המעבד בין תהליכים שונים.

במדעי המחשב, סדרן תוכניות (Scheduler) הוא כלי מרכזי במערכות התומכות בריבוי משימות ובמערכות זמן אמת. במערכות מחשב מודרניות, יש בדרך כלל יותר תהליכים שמופעלים בו זמנית מאשר מעבדים במחשב. סדרן התוכניות היא תוכנית שאחראית על חלוקת זמן המעבד בין התהליכים השונים.

עיתוי התזמוןעריכה

סדרן התוכניות אינו יכול סתם כך באמצע ריצת תהליך להפסיק אותו ולהעביר לתהליך אחר, משום שאם תהליך רץ אזי סדרן התוכניות עצמו לא רץ. הדרך הרגילה בה סדרן התוכניות משעה תהליך אחד ומריץ אחר הוא על ידי קביעה לשעון המערכת לתת פסיקה לאחר זמן קצוב שתהליך רץ, ואז השליטה חוזרת אל סדרן התוכניות. כמו כן סדרן התוכניות מחליט את מי להריץ כעת במקרה שתהליך התפצל לשניים, סיים את פעולתו, הכניס את עצמו למצב המתנה על ידי קריאת מערכת או במקרה שחלה פסיקת חומרה בעקבות קלט.

מדיניות התזמוןעריכה

סדרן התוכניות בוחר את התהליך שיקבל את זכות השימוש במעבד לפי אלגוריתם תזמון שמקיים מדיניות תזמון. למדיניות התזמון של סדרן התוכניות יש שתי מטרות עיקריות:

מטרות נוספות עומדות בפני סדרן התוכניות:

  • הבטחת זמן תגובה לאירועים מסוימים - במערכות זמן אמת, על המערכת להבטיח זמן תגובה מינימלי לאירועים מסוימים.
  • הוגנות - חלוקת משאבים הוגנת בין התהליכים השונים.
  • זמן המתנה קצר לתהליכים הממתינים למעבד.

המטרות השונות יכולות להתנגש זו בזו: הצורך בזמן תגובה נמוך עלול לגרום לפסיקות רבות שגוררות החלפות הקשר ופוגעות בניצול המקסימלי של המעבד.