ایمنی حافظه: تفاوت میان نسخهها
محتوای حذفشده محتوای افزودهشده
خط ۱۳:
==انواع خطاهای حافظه==
انواع مختلفی از خطاهای حافظه میتواند رخ دهد، بسته به نوع زبان برنامه نویسی استفاده میشود.
*'''سرریز بافر
*'''خطاهای حافظه
*'''درجه دو آزاد
*'''درجه نامعتبر
* متغیرهای
اشاره گر وحشی درجه بوجود میآیند که یک
▲درجه دو آزاد - تماسهای مکرر برای آزاد جسم در حال حاضر آزاد شدهاست میتواند باعث freelist مبتنی بر allocators به شکست است.
*خارج از خطاهای حافظه
▲درجه نامعتبر - پس از گذشت یک آدرس نامعتبر به رایگان میتوانید توده را فاسدکنید. و یا گاهی اوقات منجر به رفتار تعریف نشدهاست. {{سرخط}} میتواند دسترسی به اشاره گر نول درجه یک استثنا یا خاتمه برنامه در بسیاری از محیطها را ایجاد کند، اما همچنین میتواند باعث فساد در مغز سیستم عامل و یا سیستم بدون حفاظت از حافظه، و یا زمانی که استفاده از اشاره گر تهی شامل افستهای بزرگ و یا منفی است.
▲* متغیرهای مقدار دهی نکردن یک متغیر است که تعیین یک مقدار استفاده شدهاست. ممکن است ناخواسته و یا در بعضی زبانها، ارزشهای فاسد داشته باشد.
▲اشاره گر وحشی درجه بوجود میآیند که یک اشاره گر قبل از مقدار دهی اولیه به برخی از دولت شناخته شده استفاده میشود. آنها نشان میدهد رفتار غیر قابل پیشبینی به عنوان اشاره گر آویزان، هر چند آنها هستند، کمتر احتمال دارد برای ماندن غیر قابل تشخیص است. *خارج از خطاهای حافظه
درجه سرریز پشته - هنگامی رخ میدهد که یک برنامه خارج از فضای پشته اجرا میشود، به طور معمول به دلیل از بازگشت بیش از حد عمیق است.
|