بسیاری از سیستم‌های نظامی با وجود قدیمی بودن، به دلیل اثبات عملکردشان در طی سال‌ها، همچنان مورد توجه دولت‌ها بوده و از ارکان ارتش محسوب می‌شوند. در واقع حفظ این سیستم‌ها برای نیروهای نظامی یک ضرورت است. سخت‌افزار برخی از این سیستم‌ها به حدی قدیمی هستند که ممکن است دیگر به راحتی قابل دسترس نباشند. از سوی دیگر فناوری‌ها یا قطعات استفاده شده در آن‌ها مختص شرکت‌هایی خاص است که شاید دیگر وجود نداشته باشند یا به دلیل روابط سیاسی امکان ارتباط مستقیم نباشد. چنین سیستم‌هایی هزینه‌های نگهداری سنگینی را به بخش‌های نظامی و وزارت دفاع تحمیل می‌کند. این موضوع سبب می‌شود که دولت‌ها در خرید‌های جدید روی سیستم‌ها و معماری‌های باز تمرکز داشته باشند. اما باید تاکید کرد با وجود اینکه در دنیای امروز حرکت به سمت سیستم‌های باز یک ضرورت محسوب می‌شود، مدرن‌سازی همه این سیستم‌ها وقت و هزینه زیادی می‌طلبد.

راهی برای نجات سیستم‌های قدیمی

همانطور که گفته شد اثبات عملکرد سیستم‌های قدیمی نظامی و زمان‌بر بودن انتقال از معماری آن‌ها به معماری‌های جدید، دو دلیل بزرگ برای سازمان‌های نظامی در استفاده از تجهیزات قدیمی است. اما این مسئله مشکلاتی به همراه دارد. مهندسان برای حل مشکلات عنوان شده، به یک راهکار مشترک رسیده‌اند: مجازی‌سازی.

وزارت دفاع ایالت متحده آمریکا دارای سیستم‌های تعبیه شده قدیمی بی‌شماری است که به لطف شگفتی‌های مجازی‌سازی فرصتی برای زندگی جدید پیدا کرده‌اند. آقای پتی (رئیس بخش هوافضا و دفاع در شرکت ویندریور) در این‌باره می‌گوید: «مجازی‌سازی یک قابلیت ضروری در نسل بعدی سیستم‌های نظامی مبتنی بر نرم‌افزار است. این فناوری امکان استفاده از برنامه‌های کاربردی (اپلیکیشن‌ها) گوناگون و محیط‌های سیستم‌عامل را روی یک پلتفرم محاسباتی مشترک با جداکردن دقیق معماری کامپیوتری از برنامه‌های کاربردی فراهم می‌کند. در واقع این فناوری وابستگی‌های نرم‌افزاری و سخت‌افزاری را روی برنامه‌های کاربردی قدیمی و جدید از بین می‌برد. همچنین مجازی‌سازی امکان استفاده از یک پلتفرم محاسباتی واحد را فراهم می‌کند که برنامه‌های کاربردی آن می‌تواند توسط بسیاری از تولیدکنندگان تامین شود.»

شاید برای شما سوال باشد که پلتفرم مجازی‌سازی دقیقا چه‌کاری انجام می‌دهد؟ برای پاسخ به این سوال کاربرد یک پلتفرم مجازی‌سازی ارائه شده توسط شرکت ویندریور تحت عنوان «پلتفرم مجازی‌سازی Helix» را توضیح می‌دهیم. پلتفرم Helix یک محیط نرم‌افزاری تطبیقی است که چند سیستم‌عامل و برنامه‌های کاربردی با سطوح بحرانی متفاوت را روی یک پلتفرم محاسباتی واحد با هدف ایجاد سادگی، ایمنی و سازگاری با طراحی‌های آینده‌ی بازارهای دفاعی و هوافضا ادغام می‌کند. برنامه‌های کاربردی قابل اجرا روی این پلتفرم می‌توانند بر اساس استانداردهای صنعتی مانند ARINC 653، POSIX و FACE قدیمی باشند یا از قابلیت‌های جدید برخوردار بوده و روی سیستم‌عامل‌هایی مانند Linux، VxWorks و سایر موارد، اجرا شوند. این پلتفرم به صورت کامل در نسخه 36 مجله اویونیک شرح داده شده است.

بنابراین در یک توضیح ساده می‌توان گفت مجازی‌سازی استفاده از سخت افزار و منابع سخت‌افزاری شامل حافظه، پردازنده، دیسک، رابط‌های ورودی/خروجی، پورت‌های سریال، شبکه و غیره در یک سیستم برای راه اندازی و استفاده (میزبانی) بیش از یک سیستم‌عامل به صورت همزمان است. در چنین شرایطی اپلیکیشن‌ها می‌توانند از طریق سیستم‌عامل‌های مختلف به منابع سخت‌افزاری مشترک دسترسی داشته باشند.

در حال حاضر مجازی‌سازی سیستم‌های نظامی یکی از مباحث روز دنیاست، زیرا بسیاری از نگرانی‌های مربوط به توسعه نرم‌افزار نظامی، تست و امنیت را در بر می‌گیرد.

فواید مجازی‌سازی سیستم‌های تعبیه شده

مجازی‌سازی مزایای بسیاری برای سیستم‌های تعبیه شده به ویژه سیستم‌های نظامی قدیمی ارائه می‌کند. این فناوری اگرچه مفهوم جدیدی نیست اما در طی 5 تا 10 سال گذشته به لطف پیشرفت‌های زیادی که در حوزه پردازنده‌ها و سیستم‌عامل‌ها صورت گرفته، بیش‌ از پیش مورد توجه مهندسان الکترونیک و کامپیوتر (به خصوص در بخش نظامی) قرار گرفته است. منابع سخت‌افزاری زیاد در پردازنده‌ها به گونه‌ای است که در کنار مجازی‌سازی، هنوز توانایی پردازش کافی برای انجام کارهای دیگر باقی می‌ماند. می‌توان گفت مجازی‌سازی یک فناوری شگفت‌انگیز است.

مجازی‌سازی وابستگی نرم‌افزاری و سخت‌افزاری قدیمی را از بین می‌برد و اجازه می‌دهد پلتفرم‌های ماموریتی به سرعت تغییر کنند. از سوی دیگر سیستم‌های مبتنی بر مجازی‌سازی امکان بهره‌گیری پویا از فناوری اطلاعات (IT) و فناوری عملیات (OT) در پرواز را فراهم می‌کند. بنابراین این پلتفرم برای محیط‌های نبردی که به سرعت تغییر می‌کنند یا محیط‌هایی که ممکن است قابلیت‌ها در آن با نرخ زیاد با شکست مواجه شوند، ایده‌آل است.

برای افزایش کارایی، پلتفرم مجازی‌سازی باید اپلیکیشن‌ها را در طیف وسیعی از سیستم‌عامل‌های میهمان اختصاصی یا تجاری بدون هیچ بده و ‌بستان اضافه‌ای، اجرا کند. همچنین سیستم‌های مجازی باید امکان استفاده مداوم از برنامه‌های نرم‌افزاری قدیمی را در حالیکه آن‌ها را با قابلیت‌های جدید و در محیط‌های عملیاتی جدید ادغام می‌کند، فراهم کند.

یک طرح‌ساده از مجازی‌سازی

یک طرح‌ساده از مجازی‌سازی

طبق گفته آقای چیپ داونینگ مدیر ارشد شرکت RTI، بزرگترین مزیت مجازی‌سازی، این است که ادغام‌کننده سیستم (یکپارچه‌ساز) اکنون می‌تواند یک سیستم قدیمی که معمولا روی سیستم‌عامل مستقل یا وابسته اجرا می‌شود را انتخاب و آن را روی یک پلتفرم محاسباتی مشترک با قابلیت‌های مدرن‌تر قرار دهد. در این شرایط بروزرسانی سخت‌افزار و حتی نرم‌افزار به آسانی انجام خواهد شد.

بنابراین شما می‌توانید از طریق یک پلتفرم محاسباتی مجازی برنامه‌های کاربردی قدیم یا جدید را که هر کدام از آن‌ها سیستم‌عامل و کتابخانه‌های مختص به خود را دارند، به‌طور همزمان و در کنار هم اجرا کنید. در چنین شرایطی شما یک لایه مجازی‌سازی در زیر این برنامه‌ها و سیستم‌عامل‌های مختلف دارید که امکان ارتقاء آن بسیار جذاب و ساده است. از این‌رو شما می‌توانید سخت‌افزار جدید را همراه با لایه مجازی‌سازی نصب کرده و اپلیکیشن‌های قبلی خود را روی آن اجرا کنید. در این روش ممکن است به دلیل تغییر در سرعت پردازنده‌ها یا مواردی مشابه، نیاز به تغییراتی جزئی در سطوح بالای اپلیکیشن باشد. این کار ارتقاء را بسیار ساده‌تر می‌کند و اجازه می‌دهد با مجازی‌سازی و استفاده از سخت‌افزار‌های مدرن، به سیستم‌های بسیار قدیمی زندگی جدیدی ببخشید.

این به معنای پیشرفت عظیم در کارایی سیستم‌های نظامی است. بسیاری از پلتفرم‌های نظامی مثل جنگنده‌ها، پهپادها، بالگردها یا ایستگاه‌های زمینی سیار دارای محدودیت‌‌هایی از لحاظ اندازه، وزن و توان مصرفی  (SWaP)هستند که با مجازی‌سازی و تلفیق چند سیستم، می‌توان تا حدودی بر آن‌ها غلبه کرد.

سیستم‌های اویونیک سنتی به‌طور معمول با معماری وابسته (Federated) طراحی می‌شدند. از مهم‌ترین معایب این معماری می‌توان به پیچیدگی طراحی در سطح هواپیما اشاره کرد. جایی که هر سیستم به‌طور مستقل داده‌ها را تولید و از طریق لینک‌های اختصاصی برای سایر سیستم‌ها ارسال می‌کند. اما با مجازی‌سازی برنامه‌های تعبیه شده وابسته روی یک پلتفرم محاسباتی جدید، شما می‌توانید به شدت SWaP را کاهش دهید. همچنین با استفاده از فناوری مجازی‌سازی می‌توان اپلیکیشن‌هایی با سطوح بحرانی مختلف (چه امنیتی یا ایمنی) را روی یک پلتفرم محاسباتی مشترک ترکیب کرد. این قابلیت ارزش بسیار بالایی دارد و می‌تواند ده‌ها میلیون دلار در طول عمر سیستم‌های هوایی صرفه‌جویی کند.

مجازی‌سازی نه تنها باعث کاهش SWaP در هواپیماهای بدون سرنشین یا سرنشین‌دار نظامی می‌شود، بلکه ویژگی‌های عملیاتی و مصرف انرژی را بهبود می‌بخشد. داونینگ در این‌باره می‌گوید: «در روش سنتی برای افزایش قابلیت هواپیما، لازم ‌بود یک سیستم مستقل و جدید اضافه شود که در نتیجه وزن پلتفرم و مصرف توان آن را افزایش می‌داد. در حال حاضر ادغام‌کننده‌های سیستم‌های نظامی می‌توانند نرم‌افزارهای جدید و قدیمی را روی یک پلتفرم محاسباتی مشترک مجازی‌سازی کنند و قابلیت‌های جدید را با افزودن پارتیشن نرم‌افزاری جدید ارتقا دهند و نیازی به اضافه کردن یک سخت‌افزار با قابلیت‌های خاص نیست. این امر هزینه استقرار را کاهش و کارایی پلتفرم نظامی را در طول مدت خدمت آن افزایش می‌دهد. همچنین مجازی‌سازی با ایجاد امکان افزودن قابلیت‌های جدید در بازه‌های زمانی فشرده، می‌تواند پاسخی سریع به تهدیدات جدید را فراهم کند.»

جذابیت کلی مجازی‌سازی سیستم‌های قدیمی در این است که شما می‌توانید همان سیستم قدیمی را داشته باشید، به طوریکه به نظر می‌رسد هنوز روی سیستم، پردازنده و محیط قدیمی اجرا می‌شود، در حالیکه روی یک پردازنده و سیستم جدید که دارای قابلیت‌های دیگری است، اجرا می‌شوند. این بدان معناست که سیستم‌های قدیمی می‌توانند برای مدت طولانی بدون تغییر باقی بمانند و از این‌رو در هزینه‌های تصدیق و اطمینان از عملکرد یک سیستم صرفه‌جویی شود. این یک مزیت بزرگ برای صنعت دفاعی است، زیرا معمولا بیشتر هزینه‌ها برای اعتبارسنجی مجدد یک سیستم نسبت به طراحی مجدد آن صرف می‌شود.

بروزرسانی کابین بالگرد UH-60 شرکت نورثروپ گرومنبروزرسانی کابین بالگرد UH-60 شرکت نورثروپ گرومن

بروزرسانی کابین بالگرد UH-60 شرکت نورثروپ گرومن؛ یک مثال خوب از مجازی‌سازی سیستم‌های اویونیک نظامی که علاوه بر بهبود آگاهی وضعیتی خلبان، ایمنی عملیاتی را نیز افزایش داده است.

سخت‌افزارهای چند هسته‌ای تغییر عمده‌ای در سیستم‌های تعبیه شده ایجاد کرده‌اند. تا پیش از ورود آن‌ها با دنیای اویونیک، سیستم‌های تعبیه شده تنها دارای یک پردازنده، یک برنامه زمان‌بندی یا RTOS و یک مجموعه‌ از اپلیکیشن‌ها بودند. اما در حال حاضر ما می‌توانیم پلتفرم‌های مختلف را روی یک سخت‌افزار محاسباتی مشترک مجازی‌سازی و تلفیق کنیم. در همین راستا یک مجموعه بزرگ از تولیدکنندگان مانند DDC-I, Green Hills Software, Lynx Software, Sysgo, Star Lab و Wind River وجود دارند که پلتفرم‌های مجازی‌سازی تعبیه شده را با گواهینامه صحت‌سنجی ایمنی هوایی از جمله RTCA DO-178C و EUROCAE ED-12C ارائه می‌دهند.

امنیت در مجازی‌سازی سیستم‌های تعبیه شده

یکی از چالش‌های تلفیق چند سیستم با سطوح بحرانی مختلف، ایجاد امنیت و ایزوله‌سازی آن‌هاست. مجازی‌سازی سیستم‌های تعبیه‌شده در درجه اول به عنوان راهی برای ایمن ساختن اجرای برنامه‌ها است. با این حال ارتباط سیستم‌ها با یکدیگر و استفاده اشتراکی از منابع سخت‌افزار، می‌تواند به‌طور بالقوه سطح حملات یا اختلال بین برنامه‌ها را گسترش دهد.

در معماری‌های قدیم شما فقط یک سیستم‌ داشتید که دارای سیستم‌عامل و پردازنده اختصاصی بود. این مدل از معماری تا حد زیادی خیال شما را از اختلال برنامه‌ها یا حفره‌های نفوذ سایبری راحت می‌کند. اما در مورد پلتفرم‌های مجازی‌سازی چطور؟

آقای داونینگ در این رابطه می‌گوید: «پیاده‌سازی سیستم‌های تعبیه‌شده با فناوری مجازی‌سازی می‌تواند امن‌تر نیز باشد. زیرا پلتفرم‌ مجازی‌سازی دارای لایه انتزاعی است که مکان جابجایی مطمئن نرم‌افزار یا سیستم‌عامل را از یک پلتفرم‌ به پلتفرم دیگر فراهم می‌کند. بنابراین حتی اگر سخت‌افزار به خطر بیفتد، یک لایه مجازی‌سازی وجود دارد که محیط برنامه را از دسترس دشمن دور نگه می‌دارد.»

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

کرنل مجزا یک معماری مطمئن برای مقابله با اینگونه تهدیدها است. در این معماری‌ هایپروایزر تضمین می‌کند که هر سیستم‌عامل و اپلیکیشن‌هایش از دیگر سیستم‌عامل‌ و اپلیکیشن‌ها مجزا است. علاوه‌ بر این، کرنل مجزا می‌تواند دستگاه‌های فیزیکی سیستم را نیز از یک دیگر جدا کند تا جریان اطلاعات بین اپلیکیشن‌ها کاملا ایزوله شوند.

اطمینان از ایزوله بودن کامل سیستم‌عامل‌ها با معماری کرنل مجزا ایزوله بودن کامل سیستم‌ها در معماری قدیمی اویونیک
ایزوله بودن کامل سیستم‌ها در معماری قدیمی اویونیک (شکل الف)، اطمینان از ایزوله بودن کامل سیستم‌عامل‌ها با معماری کرنل مجزا (شکل ب)