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

תפקידה של מערכת ההפעלה באנרגיה

מערכת הפעלה מתזמרת משאבי חומרה, והחלטותיה משפיעות ישירות על השימוש בכוח.בניגוד לאופטימיזציה ברמת היישום, למערכת ההפעלה יש חשיפה גלובלית: היא שולטת בתדרי CPU, במדינות idle, הקצאת זיכרון ופעילות היקפית.מערכת אנרגיה מעוצבת היטב מערכת אנרגיה-מודעת יכולה להפחית את כוח המערכת הכולל ב -30–50% בהשוואה ליישום תמים, במיוחד במכשירים עם עומסי עבודה.

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

טכניקות ליבה לעיצוב אנרגיה-אנרגיה-אנרגיה

דינמי וולט ותדירות Scaling (DVFS)

[ד] נותרה אבן הפינה של ניהול כוח ברמת מערכת ההפעלה.על ידי התאמת תדירות המתח והשעון של המעבד בתגובה לביקוש עומס עבודה, ביצועי ה- OS עולים לשיא של חיסכון באנרגיה.מודרני DVFS - כגון ה-Linux:0onביקוש FLT:0onביקוש FLT 1, FLT:2conservativeratedalph3, ו-DLT4Floweric, למשל, לצמצום אנרגיה קל יותר מ-Certextextive, אפילו ב-CERIFlowertivestive 36%.

עם זאת, יעילות DVFS תלויה בעומס העבודה של החידושים קצרים של חישוב לא יכול ליהנות משינויים בתדירות עקב מעבר מעל הראש.המערכת חייבת לחזות דרישה עתידית או להגיב בתוך microthers. לאחרונה עבודה בשימוש בדלפק ביצועים חומרה והיסטוריות ספציפיות משימה שיפרה את דיוק DVFS. לפרטים נוספים על יישום offs, ראה FLT:0.

מצבי שינה מתקדמים וניהול אידל

כאשר למעבד אין משימות מוכנות, מערכת ההפעלה צריכה לעבור למצב של כוח נמוך כוח idle. מודרני CPUs מציעים מספר מצבי שינה (C-states) עם שפעות ערות שונות וחיסכון כוח. המושל של מערכת ההפעלה בוחר את המדינה המתאימה ביותר המבוססת על משך זמן חיזוי idle. עבור מכשירים הנדסיים כי לבלות את רוב הזמן ההמתנה לחיישנים או רשתות, ניהול יעיל של אנרגיה אחראית חיסכון.

מעבר ל- CPU, מערכת ההפעלה חייבת לנהל רכיבים מערכתיים-על-צ'יפ (SoC): בקרים זיכרון, חיבורים בין-הקשרים, ופריפריה יכולים להיכנס לכל המדינות המופצות על-ידי מערכת-עצמית או על-ידי מערכת-העצמית (SoCLT:0runtime Power ManagementFLT:1) מאפשר ל-Kel להשעות בודדות כאשר הן אינן בשימוש, אפילו בעוד שה-CPU הראשי נשאר פעיל עם חיישנים אלה, כמו אלה, כמו גם עם חיישנים חיוניים, כמו בקר, כמו גם עם חיישנים חיוניים, כמו גם עם חיישנים חיוניים, כמו בקר, כמו גם עם חיישנים חיוניים, כמו בקר, כמו גם עם חיישנים רבים, כמו גם חיישנים חיוניים, כמו גם עם חיישנים רבים, כמו גם עם חיישנים חיוניים, כמו בקר, כמו גם חיישנים חיוניים, כמו בקר, כמו גם חיישנים חיוניים, כמו בקר, כמו גם חיישנים רבים.

משימות לאופטימיזציה של אנרגיה

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

  • (ב) [15] ,0 ,Race-to-idle: FIRLT:1) עבודה מלאה מהר ככל האפשר, ואז להיכנס לשינה עמוקה.זה עובד טוב עבור עומסי עבודה מפורצים שבהם כוח השינה נמוך מאוד.
  • (FLT:0) בחירת תדירות יעילה: FIRLT:1) לוח הזמנים בוחר את התדירות הנמוכה ביותר העומדת במגבלות המועדפות למשימות בזמן אמת.
  • (ב) הגירה:0 (Cluster Migration: 1FLT:1 על אדריכלות heterogeneous (למשל, ARM גדול.LITTLE), מערכת ההפעלה מעבירה חוטים לליבות יעילות גבוהה עבור עבודת אור ליבות גדולות עבור עומסים כבדים.

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

זיכרון ו-I/O Power Management

זיכרון (DRAM) צור עוצמה משמעותית, במיוחד במהלך גישה פעילה.המערכת יכולה להפחית את אנרגיית הזיכרון באמצעות:

  • (FLT:0) הקצאת מודעות בנקאית: FLT:1, הפצת גישה על פני בנקים זיכרון כדי למנוע התנגשות בנקאית ולאפשר לבנקים להישאר במצבי חשמל נמוכים יותר.
  • (ב) קומפקטיות בעמודה:0) ושילוב: FLT:1 , שתף דפים פעילים לאזורים פחות זיכרון כך שניתן להציב אזורים לא מנוצלים בסודות עצמיים.
  • (FLT:0)NUMA-awareתזמון:FIRLT:1 על מערכות מרובות-הוקאט, שמירה על חוטים ונתונים על אותה צומת כדי למזער את תנועת הזיכרון מרחוק.

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

אתגרים ב- Real-Time ו- Embedded Systems

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

גישה אחת היא להשתמש בזמן slack: לאחר משימה להשלים מוקדם, הlack הנותרים משמש כדי להפחית את תדירות או להיכנס לישון.זה דורש ניתוח תזמון מדויק ולמעלה מעל פני השטח התחתון הוא כי מצבי שינה עמוקים יש הרבה כי ערות ערות.אם משימה חייבת להגיב בתוך 100 מיקרו, מערכת ההפעלה לא יכולה להיכנס C-מדינה עם 500 מיקרו-מטר s s s s s s s s עצלות מערכת ההפעלה חייב לבחור אז למטה על בסיס זמן קצר לפני זמן קצר לפני זמן קצר יותר.

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

טכנולוגיות מתפתחות וכיוונים עתידיים

Machine Learning for Predictive Power Management

ניהול כוח מערכתי מסורתי מסתמך על היסטרים קבועים (למשל, שימוש בסף) Machine Learning מציע את הפוטנציאל להתאים מדיניות לתבניות עומס עבודה שמשנות לאורך זמן.לדוגמה, רשת עצבית יכולה לחזות הביקוש העתידי CPU בהתבסס על כניסות העבר וחיישנים, המאפשרת למערכת ההפעלה לקבוע תדרים או מצבים של idlely להגדיר באופן יזום.

עם זאת, הפעלת מודלים של ML על מכשירים מאומנים אנרגיה עצמה צורכת כוח.המערכת חייבת או להסתער על ההקצאה של מאיץ כוח נמוך ייעודי או להשתמש במודלים קלים (למשל, עצי החלטות) שמתאימים לגרעין.ה-FLT:0research "ניהול כוח מבוסס למידה עבור מעבדים Multi-Core"RLTFrea מספק 1:1 הערכה יסודית כמו מנהלי חומרה סטנדרטיים, כמו ניהול כוח.

המונחים: low-Power Hardware Synergies

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

טכנולוגיות כמו מחשוב ליד-הרסס (NTC) מאפשרות למעבדים לרוץ במתחים נמוכים מאוד, אבל הם רגישים לטמפרטורה ולתהליך וריאציות.המערכת חייבת לפקח על חיישני מתח ולתאים שולי מתח - משימה הדורשת לולאות בקרה בזמן אמת.בנוסף, ארכיטקטורות heterogeneous (למשל, ARM גדול.LITT, x86 ליבות היברידיות) מאפשרות ל-Aware עבור משימות יעילות ביותר עבור כל אחת: קיבולת של אנרגיה: 1FLER.

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

מסקנה

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