0

مدیریت حافظه

 
golami1223
golami1223
کاربر برنزی
تاریخ عضویت : آبان 1389 
تعداد پست ها : 683
محل سکونت : بوشهر

مدیریت حافظه
چهارشنبه 17 آذر 1389  8:12 AM

مدیریت حافظه

یکی از مهمترین توابع زبان‌های برنامه نویسی فراهم آوردن ابزاری جهت ادارهٔ حافظه و اشیا ذخیره شده در حافظه می‌باشد. سی دو راه اصلی برای تخصیص حافظه به اشیا را فراهم می‌کند.

  • تخصیص حافظه به صورت اتوماتیک: اشیا موقتی می‌توانند بر روی پشته ذخیره شوند، این فضای اختصاص داده شده به اشیا به صورت اتوماتیک پس از خارج شدن از بلاکی که اشیا در آنها تعریف شده‌اند، آزاد و مجددا قابل استفاده خواهد بود.
  • تخصیص حافظه به صورت دینامیک : اندازه‌های اختیاری از بلاک‌های حافظه می‌توانند توسط توابع کتابخانه‌ای همانند تابع malloc از ناحیه‌ای از رم موسوم به هیپ در هنگام اجرای برنامه درخواست بشود. این بلاک‌های حافظه تا زمانیکه متعاقبا توسط تابع free به سیستم باز گردانده نشوند در حافظه باقی می‌مانند. برای تخصیص حافظه به صورت پویا(دینامیک) باید آدرس بلوک حافظه‌ای که توسط تابع malloc گرفته می‌شود را در یک اشاره گر ذخیره کنیم.
تشکرات از این پست
دسترسی سریع به انجمن ها