|
|
بررسی و مقایسه رویکردها و ابزارهای تشخیص نشت حافظه در زبانهای برنامه نویسی c، c++و java
|
|
|
|
|
نویسنده
|
زیوری مراد اسماعیل ,سخایی نیا مهدی ,نصیری محمد
|
منبع
|
اولين كنفرانس ملي سيستمهاي هوشمند، محاسبات نرم و رياضيات كاربردي - 1401 - دوره : 1 - اولین کنفرانس ملی سیستمهای هوشمند، محاسبات نرم و ریاضیات کاربردی - کد همایش: 01220-13374 - صفحه:0 -0
|
چکیده
|
نشت حافظه، قسمتی از حافظه است که آزاد نشده است، حتی اگر دیگر هرگز مورد دسترسی قرار نگیرد. عمر بالای نرمافزار یکی از عوامل اصلی نشت حافظه است. علیرغم اقدامات صورت گرفته در زبان هایی مانند c و c++ مانند اشارهگرهای هوشمند، نقصهای مربوط به نشت همچنان در کدهای c و c++ مشکلساز است، به ویژه در برنامههای قدیمی که در این زبان ها نوشته شدهاند. برای زبان هایی مانند java جمع آوری زباله گرچه بخشی از مشکلات را حل نموده، اما مشکلات کارآیی در خصوص این قابلیت وجود دارد. ابزارهای مختلفی برای تشخیص مشکلات مربوط به حافظه اصلی در نرمافزار موجود است که میتواند زمان تست برنامه را کاهش دهد. این ابزارها به عنوان ابزارهای تحلیل پویا و ایستا دستهبندی میشوند. این ابزارها به برنامهنویسان کمک میکند تا کد ایمن و عاری از ایراد حافظه را بدون وارد شدن به نشت حافظه و مسائل مرتبط بنویسند. این مقاله رویکردها و ابزارهای مختلف تشخیص نشت حافظه را، در دو دسته پویا و ایستا، مورد بررسی قرار میدهد. ضمن بیان قابلیت و متد ارائه شده در هر رویکرد، بر اساس شاخص های مختلف مانند میزان هزینه سربار و نرخ مثبت کاذب رویکردها مقایسه و ارزیابی گردیده اند.نتایج این بررسی ها نشان داد که مسئله کارایی به عنوان یک عامل اثرگذار هنوز در شناسایی نشت حافظه مطرح بوده و می توان برای پژوهش های آتی مورد توجه قرار گیرد.
|
کلیدواژه
|
نشت حافظه، جمع آوری زباله،سربار زمانی، سربار حافظه.
|
آدرس
|
, iran, , iran, , iran
|
پست الکترونیکی
|
sakhaei@basu.ac.ir
|
|
|
|
|
|
|
|
|
|
|
|
Authors
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|