ما را دنبال کنید:

مایکروسافت، Rust و آینده کدهای سیستمی

  • خانه
  • بلاگ
  • مایکروسافت، Rust و آینده کدهای سیستمی
29 بازدید

واقعیت جایگزینی C و ++C با Rust در مایکروسافت تا ۲۰۳۰ و نقش AI

در هفته‌های اخیر، خبری با تیتر بحث‌برانگیز «One engineer, One month, One million lines of code» منتشر شد که توجه برنامه‌نویسان و مهندسان نرم‌افزار را به خود جلب کرد. این خبر به تلاش مایکروسافت برای جایگزینی C و C++ با Rust تا سال ۲۰۳۰ اشاره داشت و نقش هوش مصنوعی در این مسیر را نیز مطرح کرد، هرچند برداشت‌های نادرست و بزرگ‌نمایی‌هایی نیز درباره بازنویسی کامل ویندوز وجود داشت.

ریشه خبر از کجا شروع شد؟

ماجرا از یک پست شغلی و اظهار نظر فنی توسط یکی از مهندسان ارشد مایکروسافت آغاز شد؛ جایی که به یک هدف بلندپروازانه اشاره شد:

«هدف ما حذف تدریجی C و ++C از کدهای جدید و حرکت به سمت Rust تا سال ۲۰۳۰ است.»

در همان متن، جمله‌ای نمادین نیز مطرح شد:

«One engineer, One month, One million lines of code»

این عبارت به‌عنوان یک شاخص عملکرد (North Star Metric) برای تیم‌های تحقیقاتی مطرح شد؛ شاخصی که نشان می‌دهد ابزارها و فرایندهای مدنظر باید آن‌قدر بالغ شوند که یک مهندس بتواند در بازه‌ای کوتاه، حجم بسیار بزرگی از کد را تحلیل، بازبینی یا refactor کند.

سوء برداشت رسانه‌ای؛ مایکروسافت چه چیزی را نگفت؟

پس از انتشار این خبر، برخی رسانه‌ها چنین برداشت کردند که:

  • مایکروسافت قصد دارد کل ویندوز را با Rust بازنویسی کند

  • این بازنویسی با استفاده از هوش مصنوعی و به‌صورت خودکار انجام می‌شود

  • C و++C تا سال ۲۰۳۰ به‌طور کامل از محصولات مایکروسافت حذف خواهند شد

این برداشت‌ها رسماً توسط خود مایکروسافت و مهندس مربوطه رد شد.

شفاف‌سازی رسمی مایکروسافت:

  • این اظهارات نقشه راه رسمی محصولات (Product Roadmap) نیست

  • هیچ برنامه‌ای برای بازنویسی کامل Windows با Rust یا AI وجود ندارد

  • پروژه مورد بحث، یک فعالیت تحقیقاتی و ابزارسازی (R&D) است

بنابراین، باید میان هدف تحقیقاتی بلندمدت و تصمیم عملیاتی الزام‌آور تفاوت قائل شد.

چرا Rust برای مایکروسافت مهم شده است؟

مشکل تاریخی C و ++C

زبان‌های C و ++C ستون فقرات بسیاری از سیستم‌عامل‌ها و نرم‌افزارهای سیستمی هستند، اما یک ضعف ساختاری جدی دارند:
مدیریت دستی حافظه

بر اساس آمارهای امنیتی:

  • بیش از نیمی از آسیب‌پذیری‌های بحرانی سیستم‌عامل‌ها

  • و بخش بزرگی از CVE های ثبت‌شده
    ریشه در خطاهای حافظه (Memory Safety Issues) دارند.

Rust چه تفاوتی ایجاد می‌کند؟

Rust با مفاهیمی مانند:

  • Ownership

  • Borrowing

  • Lifetime Checking

این خطاها را در زمان کامپایل حذف می‌کند، بدون آن‌که نیاز به Garbage Collector داشته باشد. نتیجه:

  • امنیت بالاتر

  • Performance نزدیک به ++C/C

  • کاهش شدید کلاس‌های رایج باگ‌های امنیتی

به همین دلیل، نهادهایی مانند NSA و شرکت‌هایی مثل Google و Amazon نیز استفاده از زبان‌های Memory-Safe مانند Rust را توصیه کرده‌اند.

نقش واقعی هوش مصنوعی در این پروژه چیست؟

برخلاف تیترهای جنجالی، AI قرار نیست به‌تنهایی کد ویندوز را بازنویسی کند.

نقش واقعی AI در این مسیر:

  • تحلیل استاتیک کدهای بزرگ ++C/C

  • شناسایی الگوهای تکراری و ناامن

  • کمک به refactor و پیشنهاد معادل‌های Rust

  • افزایش بهره‌وری مهندسان، نه جایگزینی آن‌ها

به بیان دقیق‌تر، AI در این پروژه یک ابزار کمکی مهندسی است، نه یک «موتور بازنویسی خودکار سیستم‌عامل».

آیا C و ++C حذف خواهند شد؟

پاسخ کوتاه: خیر، نه در آینده نزدیک

واقعیت فنی این است که:

  • بخش‌های بزرگی از Windows، درایورها و APIها وابسته به ++C/C هستند

  • بازنویسی کامل آن‌ها ریسک فنی و اقتصادی بسیار بالایی دارد

  • حتی خود مایکروسافت تأکید کرده که این زبان‌ها همچنان نقش کلیدی خواهند داشت

استراتژی فعلی:

  • کدهای جدید حساس به امنیت → ترجیحاً با Rust

  • کدهای قدیمی پایدار → نگه‌داری، نه بازنویسی عجولانه

تأثیر این خبر بر آینده برنامه‌نویسی

این خبر بیش از آن‌که یک اعلامیه فوری باشد، یک سیگنال راهبردی است:

  • حرکت صنعت از «حداکثر Performance» به سمت Security-by-Design

  • افزایش تقاضا برای مهندسان آشنا با Rust

  • رشد ابزارهای AI-assisted Development

  • تغییر نقش برنامه‌نویس از «کدنویس صرف» به «هدایت‌کننده سیستم‌های هوشمند توسعه»

 

لینک داخلی:

لینک‌های خارجی:

مرتبط پست

دیدگاه ها بسته هستند