پاسخ کوتاه: ایمنی حافظه ویژگی زبانها و برنامههایی است که خطاهای دسترسی به حافظه — سرریز بافر، استفاده پس از آزادسازی، اشارهگر معلق — در آنها ساختاراً ناممکن است. این خطاها که مختص زبانهایی مانند C و C++ هستند، ریشه حدود ۷۰ درصد آسیبپذیریهای امنیتی جدی در نرمافزارهای بزرگ بودهاند. زبان Rust ایمنی حافظه را بدون قربانیکردن کارایی فراهم میکند و نهادهای امنیتی دولتی رسماً مهاجرت به زبانهای ایمن را توصیه کردهاند.
معادل انگلیسی: Memory Safety
پرسشهای پرتکرار درباره ایمنی حافظه
چرا خطاهای حافظه اینقدر خطرناکاند؟
چون اغلب مستقیم به اجرای کد دلخواه مهاجم میرسند: نوشتن خارج از محدوده بافر میتواند مسیر اجرای برنامه را برباید — جدیترین نوع آسیبپذیری ممکن.
Rust چگونه ایمنی حافظه را تضمین میکند؟
با سیستم مالکیت و وامگیری در زمان کامپایل: هر داده مالک مشخصی دارد و کامپایلر هر دسترسی ناسازگار را قبل از اجرا رد میکند — بدون نیاز به زبالهروب و بدون هزینه زمان اجرا.
آیا باید همه کدها به Rust بازنویسی شوند؟
واقعبینانه نه؛ توصیه رایج «ایمن برای کد جدید» است: اجزای تازه و بحرانی با زبان ایمن نوشته شوند و کد قدیمی C/C++ بهتدریج و بر اساس ریسک مهاجرت کند.
تحلیلهای مرتبط در تکناو
- اجبار Rust در Ladybird: بلوغ صنعتی به سمت ایمنی حافظه
- سیستمهای Rust: ردیابی نفوذ رستم به قلب زیرساختهای جهان