פרק שלישי – תזמון תהליכים

Slides:



Advertisements
Similar presentations
Chapter 9 Uniprocessor Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Patricia Roy Manatee Community College, Venice,
Advertisements

Chapter 9 Uniprocessor Scheduling
Scheduling Criteria CPU utilization – keep the CPU as busy as possible (from 0% to 100%) Throughput – # of processes that complete their execution per.
OS, , Part II CPU Scheduling Department of Computer Engineering, PSUWannarat Suntiamorntut.
CH 5. CPU Scheduling Basic Concepts F CPU Scheduling  context switching u CPU switching for another process u saving old PCB and loading.
Operating Systems Chapter 6
Ceng Operating Systems Chapter 2.2 : Process Scheduling Process concept  Process scheduling Interprocess communication Deadlocks Threads.
CPU Scheduling Algorithms
Day 25 Uniprocessor scheduling. Algorithm: Selection function Selection function – which process among ready processes to select. w – time spent in system,
Uniprocessor Scheduling III CPSC 410 Operating Systems Department of Physics, Computer Science and Engineering Christopher Newport University.
Uniprocessor Scheduling II
CSE 331 Operating Systems Design 1 Scheduling Scheduling is divided into various levels. These levels are defined by the location of the processes A process.
Computer Architecture and Operating Systems CS 3230: Operating System Section Lecture OS-3 CPU Scheduling Department of Computer Science and Software Engineering.
COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00-6:00 PM.
More Scheduling cs550 Operating Systems David Monismith.
Scheduling Chap 2. Scheduling Introduction to Scheduling (1) Bursts of CPU usage alternate with periods of I/O wait –a CPU-bound process –an I/O bound.
Operating System Chapter 9. Uniprocessor Scheduling
1 Our focus  scheduling a single CPU among all the processes in the system  Key Criteria: Maximize CPU utilization Maximize throughput Minimize waiting.
CPU Scheduling Algorithms Simulation using Java Kaushal Sinha CSC 4320 Spring 2007.
Uniprocessor Scheduling Chapter 9. Processor Scheduling Processor scheduling determines the assignment of processes to be executed by the processor over.
Processor Scheduling Hank Levy. 22/4/2016 Goals for Multiprogramming In a multiprogramming system, we try to increase utilization and thruput by overlapping.
CPU Scheduling Operating Systems CS 550. Last Time Deadlock Detection and Recovery Methods to handle deadlock – Ignore it! – Detect and Recover – Avoidance.
First In First Out SJF is a scheduling policy that selects a waiting process with the smallest execution time to execute next. Shortest Job First Shortest.
CPU Scheduling Algorithms CSSE 332 Operating Systems Rose-Hulman Institute of Technology.
CPU SCHEDULING.
Uniprocessor Scheduling
CPU Scheduling Algorithms
Uniprocessor Scheduling
Uniprocessor Scheduling
Chapter 2.2 : Process Scheduling
Day 25 Uniprocessor scheduling
Scheduling (Priority Based)
CPU Scheduling.
Chapter 6: CPU Scheduling
זימון תהליכים מדיניות בסיסיות: RR, FCFS, SJF
Lecture 23: Process Scheduling for Interactive Systems
Chapter 6: CPU Scheduling
Lecture 16 Syed Mansoor Sarwar
Module 5: CPU Scheduling
COT 4600 Operating Systems Spring 2011
Operating Systems Lecture 15.
Introduction What is an operating system bootstrap
Lecture 6: Uniprocessor Scheduling(cont.)
Operating System Concepts
Operating System Chapter 9. Uniprocessor Scheduling
Chapter5: CPU Scheduling
COT 4600 Operating Systems Spring 2011
Chapter 6: CPU Scheduling
Outline Scheduling algorithms Multi-processor scheduling
Operating System 9 UNIPROCESSOR SCHEDULING
COT 4600 Operating Systems Fall 2009
Exercise Ms.Reema alOraini
Chapter 9 Uniprocessor Scheduling
CGS 3763 Operating Systems Concepts Spring 2013
Lesson Objectives Aims Key Words
Chapter 5: CPU Scheduling
Process Management Scheduling
Processor Scheduling Hank Levy 1.
Uniprocessor Process Management & Process Scheduling
CS 140 Lecture Notes: Protection
Shortest-Job-First (SJR) Scheduling
Chapter 6: CPU Scheduling
Concurrency and Threading: CPU Scheduling
CPU SCHEDULING CPU SCHEDULING.
Scheduling 21 May 2019.
Chapter 6: CPU Scheduling
Uniprocessor Process Management & Process Scheduling
CPU Scheduling.
CPU Scheduling: Basic Concepts
Chapter 5: CPU Scheduling
Presentation transcript:

פרק שלישי – תזמון תהליכים פרק שלישי – תזמון תהליכים מבוא למערכות הפעלה תהליכים תזמון תהליכים תקשורת בין תהליכים פנימיים נעילה (תקיעה) תהליכים קלי משקל ניהול זיכרון זיכרון וירטואלי מדיניות ניהול זיכרון וירטואלי מערכת הפעלה עם קוד פתוח Operating Systems - 2010 Shayke Bilu

תזמון בחירת תהליך (תהליכים) לריצה במעבד (מעבדים) מצב התהליך משתנה ממצב “מוכן לריצה” למצב “ריצה” במעבד המרכזי המרכיב העיקרי של כל מערכת הפעלה, שמבצע את פעולת התזמון נקרא מתזמן Operating Systems - 2010 Shayke Bilu

סוגים של תזמון תזמון נחלק למספר רמות שונות, לפי יעדים. כל רמה מוגדרת ע”י היעד שאליו צריך להגיע התהליך. תהליך כזה יכול להיות: תהליך בעל יכולת הרצה וביצוע באמצעות מעבד תהליך השוכן בחלקו או במלואו בזיכרון הראשי תהליך השוכן בחלקו או במלואו בזיכרון המשני תהליך אשר טרם התחיל להתפתח המערכת Operating Systems - 2010 Shayke Bilu

סוגים שונים של תזמון (המשך) תזמון לזמן ארוך ההחלטה להוסיף את התהליך למאגר התהליכים המיועדים לביצוע תזמון לזמן חלקי ההחלטה להוסיף את התהליך לזיכרון הראשי תזמון לזמן קצר ההחלטה מתי יצליח התהליך לזכות בזמן עיבוד תזמון קלט/פלט ההחלטה איזה תהליך בקשת קלט/פלט יטופל ע”י המעבד כדי שהציוד ההיקפי הנדרש יוקצה עבור אותו תהליך Operating Systems - 2010 Shayke Bilu

קריטריונים לתזמון פייריות: לכל תהליך יהא חלק שווה בתוך היע”מ יעילות: יש לשמור על 100% מימוש היע”מ זמן תגובה: חייב להיות זמן מינימלי עבור משתמשים אינטראקטיביים זמן חזור: חייב להיות זמן מינימלי לחזרה על פעולות אצווה Batch נצילות מקסימלית: חייבת להיות נצילות מקסימלית של עבודות עיבוד לשעה Operating Systems - 2010 Shayke Bilu

קריטריונים לביצוע, התייחסות משתמש קריטריון מטרה זמן תגובה הקטנת זמן התגובה למינימום לאפשר מספר מקסימלי של משתמשים אינטראקטיביים במערכת זמן מחזור סיבובי יחידת הזמן שבין הגשת התוכנית או התהליך לעיבוד לבין השלמת הביצוע מועד סופי ואחרון מפגש זמני מקסימום סופיים Operating Systems - 2010 Shayke Bilu

קריטריונים לביצוע, התייחסות מערכת קריטריון מטרה משגר מאפשר מספר מקסימלי של עבודות להשלים פעולתן במעבד ניצולת מעבד מאפשר הפקת תועלת מקסימלית של המעבד, באחוזים סה”כ השקעות מאפשר זמן מעבד מינימלי תפוס לצורך ביצוע פעולות מערכת הפעלה Operating Systems - 2010 Shayke Bilu

קריטריונים נוספים , התייחסות מערכת קריטריון מטרה פייריות מתייחס לכל התהליכים באותה רמה (הוגנות) ללא העדפה כלשהי אכיפת עדיפויות מתן העדפה בביצוע לתהליכים בעלי עדיפות וזכות קדימה מוכרת ע”י המערכת איזון משאבים שמירה על מערכת המשאבים מאוזנת ומועסקת Operating Systems - 2010 Shayke Bilu

גורמים החשובים לתזמון גבול השימוש של התהליך ביחידות קלט/פלט גבול השימוש של התהליך ביחידת העיבוד המרכזית האם התהליך אינטראקטיבי או מנוהל לפי אצוות? מהי העדיפות שניתנה לתהליך ע”י המשתמש ו/או המערכת? ברירת המחדל של רמת הטעות השכיחה בדפדוף? מהי השכיחות שהוגדרה עבור זכות הקדימה ? מהו זמן הביצוע שהתקבל ? מהו זמן הביצוע הנדרש להשלמת ריצת התהליך? Operating Systems - 2010 Shayke Bilu

סוגים של תזמון אלגוריתם התזמון אינו מפעיל ריצה עד סיום תהליך, כאשר הוא אינו בטוח שיחידת העיבוד המרכזית נמצאת בידי מערכת ההפעלה באותה עת. אלגוריתם התזמון מפעיל ריצה עד סיום תהליך כאשר הוא בטוח כי יחידת העיבוד המרכזית נמצאת בידי מערכת ההפעלה. Operating Systems - 2010 Shayke Bilu

שעון הפסיקות מערכת ההפעלה מכוונת את שעון הפסיקות לכך שתבוצע פסיקה בזמן עתידי שיועד עבור כך. פסיקה זמן זו היא מנת התהליך. מספק זמן תגובה סביר ובכך מונע מהמערכת להיות נעולה במקרים בהם התהליך נכנס ללולאה אין סופית. Operating Systems - 2010 Shayke Bilu

אלגוריתם מתוזמן ראשון נכנס ראשון מקבל שרות FCFS חלוקת זמנים- Round Robin חלוקת זמנים וירטואלית- Virtual Round Robin מנגנון העדיפויות- Priority רמת עדיפות- Priority Classes העבודה הקטנה קודמת- Shortest Job First זמן שארית קצר- Shortest Remaining Time זמן החזר- Highest Response Ratio Next תור המשובים- Feedback Queues Operating Systems - 2010 Shayke Bilu

ראשון נכנס ראשון מקבל שרות FCFS יישומים: כאשר כל תהליך הופך ל”מוכן” הוא מצטרף לתור הממתינים לריצה. כאשר התהליך העכשווי מסיים התהליך הוותיק ביותר שהפך למוכן נבחר ונקרא לריצה. אפיונים: יישום פשוט, מהיר ולא מורכב תהליך זול, קצר מתחום תהליכי קלט/פלט אינו מאפשר מתן זכות קדימה לתהליך Operating Systems - 2010 Shayke Bilu

חלוקת זמנים Round Robin יישום: התהליכים מתופעלים בשיטת FIFO אבל ניתן להם משך זמן קבוע (פיסת זמן - Time slice) לריצה בתוך יחידת העיבוד המרכזית CPU אפיונים: בעל יכולת מתן זכות קדימה אפקטיבי בסביבה בה מתקיימת חלוקת זמנים תהליך זול, קצר מתחום תהליכי קלט/פלט Operating Systems - 2010 Shayke Bilu

(Quantum Size) גודל תור פיסת הזמן אפשרויות: תור בעל פיסת זמן גדולה או קטנה תור קבוע או משתנה שווה לכולם או שונה לכל אחד בהתאמה במידה ותור פיסת הזמן גדול קיימת השהייה במעבר לתהליך: ראשון נכנס ראשון מקבל שרות FCFS במידה ותור פיסת הזמן קטן מידי בהקשר ההחלפה העבודה הראשונית (היסודית) מתבצעת במידי מדריך טוב הוא תור חלוקת זמנים בו הזמן שהוגדר לתהליך הוא קצת יותר ארוך ממה שצריך התהליך כדי לעבור הידברות(עיבוד) מוצלחת. Operating Systems - 2010 Shayke Bilu

חלוקת זמנים וירטואלית (Virtual Round Robin (VRR יישומים: שני תורים עבור מצב מוכן (ready), הראשון מכונה תור עזר לאחסון תהליכי קלט/פלט שהסתיימו. תור עזר (AUX) הוא בעל עדיפות גבוהה מזה של תור מצב מוכן תהליכי קלט/פלט ירוצו אך ורק במשך הזמן שנותר אפיונים: ביצוע מכוון מראה קיום פייריות יותר מתהלך ה- RR Operating Systems - 2010 Shayke Bilu

מנגנון עדיפויות יישום: כל תהליך מקבל עדיפות ומתזמן התהליכים תמיד בוחר את התהליך בעל העדיפות הגבוהה ביותר ראשון לריצה. אפיונים: תהליך בעל עדיפות גבוהה יכול לרוץ עד אין סוף, לכן יש להקטין את העדיפות במרווחים קבועים. הקצאת עדיפות גבוהה לתהליך של מערכת תוך כדי ידיעת האפיונים שלו, לדוגמה הקישוריות של התהליך לציוד הקלט/פלט. Operating Systems - 2010 Shayke Bilu

(Priority Classes) סוגי עדיפויות Highest Priority Class 4 Priority Class 3 Priority Class 2 Lowest Priority Class 1 Operating Systems - 2010 Shayke Bilu

(Priority Classes) סוגי עדיפויות יישומים: תהליכים מקובצים לרמות עדיפות תהליך חלוקת זמן בה לידי שימוש בכל רמת עדיפות כאשר בחירת התהליכים נעשית מהרמה הגבוהה, אם אין ברמה זו תהליך משתמשים ברמה נמוכה יותר. אפיון: אם עדיפויות אינן מתואמות מזמן לזמן (סנכרון) רמות נמוכות יכולות להמתין לתורן עד מותן. Operating Systems - 2010 Shayke Bilu

עבודה קצרה קודמת (Shortest-Job-First (SJF ידוע גם כתהליך הבא הקצר ביותר Shortest Process Next (SPN) אפיונים: התהליך עם זמן הביצוע הקצר ביותר קיבל את העדיפות הגבוהה ביותר במעבד ללא יכולת מתן זכות קדימה מקטין את זמן ההמתנה הממוצע ב- FIFO Operating Systems - 2010 Shayke Bilu

עבודה קצרה קודמת (Shortest-Job-First (SJF אפיונים (המשך): תמיד מייצר את הזמן הסיבובי (הלוך וחזור) הממוצע הנמוך ביותר חייב לדעת מה אורך זמן הריצה של התהליך במעבד ניתן לשימוש לרעה ע”י המשתמש מתאים ביותר לסביבות עבודה באצווה. לא מתאים למערכות בסביבת עבודה בחלוקת זמן (Time Sharing) Operating Systems - 2010 Shayke Bilu

זמן השארית הקצר ביותר (Shortest Remaining Time (SRT מתקיים בשל זכות קדימה מקבילה של התהליך הבא הקצר ביותר יישומים: תהליך עם זמן הקצר ביותר המוקצה (במשוער) עבורו לביצוע ריצה יהא תמיד התהליך הבא שירוץ במעבד. יתכן כי תהליך בזמן ריצה יאבד את זכות הקדימה שלו בשל קיומו של תהליך בעל זמן ריצה קצר יותר בתור. Operating Systems - 2010 Shayke Bilu

זמן השארית הקצר ביותר (Shortest Remaining Time (SRT אפיונים: מצריך, בכל מקרה הערכה מקדמית של פעולה עתידית מבוסס סטטיסטיקה בעל סה”כ הוצאות ותקורה גבוהה מ- SJF אין צורך, בשום מקרה, בביצוע פסיקות מוספות כמו בתהליך ה- RR זמן טיפול שחלף חייב להיות משולב ברשומה Operating Systems - 2010 Shayke Bilu

זמן התגובה הבא הקצר ביותר (Highest Response Ratio Next (HRRN כיצד לעקוף את הבעיה של דחייה לא ברורה? יישומים: כאשר עבודה (JOB) נכנסת ליע”מ היא מבצעת ריצה עד סיומה עדיפות העבודה היא פונקציה של זמן השרות הנדרש לעבודה וזמן ההמתנה שעבר עד לקבלת השרות הדרוש זמן השרות/ [(זמן המתנה)+(זמן שרות)] = עדיפות Operating Systems - 2010 Shayke Bilu

זמן התגובה הבא הקצר ביותר Highest Response Ratio Next (HRRN) אפיונים: ללא מנגנון מתן זכות קדימה עבודות קצרות מקבלות עדיפות על פני עבודות ארוכות יותר בכל אופן ישנו תהליך המבטיח כי עבודות ארוכות תגענה לבסוף לידי ביצוע במעבד הערכה עדיין מורכבת Operating Systems - 2010 Shayke Bilu

Feedback Queues תור משובים לעיתים נקרא גם תור משוב רב שכבתי Multi-Level Feedback Queues היישומים המתאפשרים: קיום רשת של תורי עבודות המוכנים לריצה תהליך חדש נכנס בראש התור (כמו במחסנית) התהליכים נעים באמצעות תור FIFO Operating Systems - 2010 Shayke Bilu

Feedback Queues תור משובים תהליכי קלט/פלט: אם העבודה דורשת אמצעי קלט/פלט לפני תום זמן התור, היא עוזבת את הרשת וחוזרת לאותה רמת תור שהוקצתה עבורה מלכתחילה קישוריות בין המעבד לתהליכים: אם התור שהוקצה לתהליך תם קודם התהליך יורד רמה אחת בתור ועדיפות הביצוע שלו תרד בהתאמה התופעה מתמשכת עד הגעה למקום האחרון בתור לביצוע Operating Systems - 2010 Shayke Bilu

Feedback Queues תור משובים הרצה: תהליך מגיע לתוך יחידות העיבוד רק אם ברמות התור הקודמות לו אין תהליכים כל התהליכים הרצים במערכת מונעים ע”י תהליכים בעלי זכות קדימה המגיעים מרמת תור גבוהה יותר תהליכים מרמות תור נמוכות יותר מקבלים מיקום גבוה יותר לצורך ריצה במעבד הסתגלות (התאמה): בכמה מערכות תהליכים תהליך יכול לחזור אחורנית ברשת ע”י קישוריות לרכיבי קלט/פלט Operating Systems - 2010 Shayke Bilu

מנגנון הפסיקות מחייב לתת עדיפות לעבודות קצרות לתת עדיפות לקלט/פלט המקושר לעבודות להשגת ניצול מקסימלי של רכיבי קלט/פלט לקבוע את האופי של העבודה ואת התזמון שלה על פי אופייה Operating Systems - 2010 Shayke Bilu