הקצאת זיכרון דינמית

מתוך ויקיפדיה, האנציקלופדיה החופשית
קפיצה אל: ניווט, חיפוש

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

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

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

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

[עריכה] ראו גם

Crystal Clear app ktalkd.png ערך זה הוא קצרמר בנושא מחשבים. אתם מוזמנים לתרום לוויקיפדיה ולהרחיב אותו.
כלים אישיים

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