הקצאה דינמית
מתוך ויקיפדיה, האנציקלופדיה החופשית
במדעי המחשב, הקצאה דינמית היא הקצאתו של זיכרון אחסון עבור תוכנת מחשב, במהלך זמן הריצה של התוכנית. זוהי דרך לפזר בעלות על משאבי זכרון מוגבלים בין חלקים רבים של מידע וקוד.
זכרון שהוקצה דינמית, נשאר מוקצה עד שישוחרר במפורש, על ידי התוכניתן או על ידי מנגנון אחר המטפל בכך (ראו: Garbage Collector), דבר השונה בתכלית מדרך הטיפול בהקצאתו של זכרון אוטומטי או סטטי. נאמר כי לאובייקט כזה, אשר הוקצה דינמית, יש אורך חיים דינמי.
הבעיה הראשית של אלגוריתמים המסתמכים על הקצאה דינמית היא להמנע מקיטוע (פרגמנטציה) פנימי וחיצוני, יחד עם שמירה על יעילות ההקצאה ושחרור המשאבים. כמו כן, לרוב האלגוריתמים אשר בשימוש קיימת הבעיה שמספר רב של הקצאות קטנות עלול לגרום לבזבוז משאבים עקב המטאדאטה (Metadata, המידע המתלווה להקצאה, הנתונים אודותיה).
[עריכה] ראו גם
- הקצאה סטטית
- דליפת זיכרון
- מאגר זכרון (Memory Pool)