info@panadisplay.com
מערכת הפעלה בזמן אמת להפסיק את המטפלים ואת המתזמן

מערכת הפעלה בזמן אמת להפסיק את המטפלים ואת המתזמן

Mar 08, 2019

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


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


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