מערכות בקרה ואוטומציה
כיצד לחשב את הזיכרון של אוזבת אלגוריתמים מוצפים עבור מערכות Embedded
Table of Contents
אלגוריתמים חוזרים משמשים בדרך כלל במערכות משובצות לפתרון בעיות מורכבות.הבנת השימוש בזיכרון שלהם חיוני לביצועים אופטימיזציה ולהבטיח יציבות מערכת. מאמר זה מסביר כיצד לחשב צריכת זיכרון בפונקציות חוזרות בתוך סביבות משובצות.
הבנה של תפקוד זיכרון מחדש
השימוש בזיכרון באלגוריתמים חוזרים כולל בעיקר שני מרכיבים: זיכרון ערימה וזיכרון נתונים.הערימה מאחסנת מידע על כל שיחה פעילה, כולל משתנים מקומיים וכתובות החזרה.זיכרון נתונים מחזיק במשתנה סטטי וגלובאלי המשמש את התוכנית.
המונחים: memory usage
זיכרון הערימה הכולל המשמש פונקציה חוזרת תלוי בעומק מקסימלי של סיור ואת גודל של כל מסגרת ערימה של כל פונקציה call.הנוסה היא:
(ב) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
כדי לקבוע את גודל כל מסגרת ערימה, לשקול משתנים מקומיים, רישומים נשמרים, וכתובות החזרה.מערכות Embedded לעתים קרובות יש שטח ערימה מוגבל, כך estimating זה מדויק הוא קריטי.
הערכת השימוש ב-Data Memory Usage
צריכת זיכרון נתונים תלויה במשתנים סטטיים וגלובאליים המשמשים לאורך התהליך הרציני.המשתנים האלה מוקצים פעם ונמשכים למשך התוכנית.זיכרון הנתונים הכולל המשמש הוא סכום כל המשתנים הללו.
דוגמא מעשית
נניח שלפונקציה חוזרת יש עומק מקסימלי של 10 שיחות, וכל מסגרת ערימה של שיחה היא 64 עוויתות.זיכרון הערימה הכולל המשמש:
(ב) × 64 ע"י 640 ⁇
אם הפונקציה משתמשת 200 ע"י משתנים גלובליים, השימוש הכולל בזיכרון משלב ערימה וזיכרון נתונים, ומספק נוף מקיף של צריכת משאבים.