فناوری‌هایی که در فضا و فضاپیماها استفاده می‌شوند همواره بسیار خاص هستند ولی این خاص بودن به معنای بسیار قدرتمند و رده بالا بودن نیست. موشک فالکون 9 کمپانی SpaceX که هفته‌ی گذشته، باب بنکن و داگ هارتلی را به ایستگاه فضایی بین‌المللی رساند، از سیستم عامل لینوکس و پردازنده‌های قدیمی استفاده می‌کند. پیشنهاد می‌کنیم مطالعه این مطلب را از دست ندهید.

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

اما اگر فکر کنید که برای فضاپیمایی که همین چند روز پیش به فضا پرتاب شده داستان عوض شده باید بگوییم که در اشتباهید!

Dragon_Carousel.jpg

در سی‌ام مِی (10 خرداد)، فضاپیمای Crew Dragon کمپانی SpaceX توانست فضانوردان ناسا را به سلامت به ایستگاه فضایی بین‌المللی برساند. در این پروژه از موشک جذاب فالکون 9 استفاده شد که مقرون‌ به صرفه‌ترین موشکی بوده که تا به امروز بشر توانسته برای سفرهای فضایی خود ساخته و چندین بار از آن استفاده کند.

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

سیستم عامل مورد استفاده در فالکون 9 یک ورژن بسیار سبک شده از لینوکس است که روی سه پردازنده‌ی دو هسته‌ای «معمولی» x86 اجرا می‌شود.

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

یک نمونه جالب در این خصوص پردازنده اصلی است که در بخش ارتباطات ایستگاه فضایی بین‌المللی (ISS) استفاده می‌شود. در بخش ارتباطات این ایستگاه از یک پردازنده‌ی 20 مگاهرتزی 80386SX اینتل استفاده می‌شود که در سال 1988 ساخته شده و هم‌اکنون 32 سال از عرضه اولیه آن می‌گذرد.

intel-80386sx.jpg

و اما به موضوع اصلی بحث خود بازگردیم؛ متأسفانه مشخصات دقیق پردازنده‌ای که در فالکون 9 استفاده شده توسط SpaceX یا NASA اعلام نشده؛ اما با توجه به اینکه از طراحی اولیه آن زمانی نزدیک به 10 سال می‌گذرد نباید انتظار یک پردازنده قدرتمند مانند یکی از نسل‌های Core ix اینتل و امثالهم را داشته باشیم.

با وجود اینکه از این چیپ‌های قدیمی در بخش‌های قسمت‌های کنترل و اجرای (Command and Control) ایستگاه استفاده شده تکنیک خاصی نیز برای جلوگیری از خطای محاسباتی ارائه شده است که در ادامه به آن خواهیم پرداخت نکته دیگر این است که برای کارهای روزمره، فضانوردان از لپ‌تاپ‌های HP ZBook 15 به‌ همراه سیستم‌‌عامل‌های Debian Linux، Scientific Linux و ویندوز10 استفاده می‌کنند. از سیستم‌های شامل لینوکس به‌عنوان ترمینال‌های قسمت‌های کنترل و اجرا و از ویندوز برای ایمیل و وب‌گردی و غیره استفاده می‌شود.

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

اما چرا سه پردازنده به جای یکی؟
حالا نوبت شرح ساده تکنیکی است که در بخش قبل به آن اشاره کردیم. طبق اعلام شرکت SpaceX، در تصمیم‌گیری‌های سیستمی از یک الگوریتم عملگر-منتقد (Actor-Critic) برای امنیت تصمیم‌گیری‌های این مجموعه تراشه کمک گرفته می‌شود.

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

cre.jpg

نکته دیگر در مورد فضاپیمای Dragon این است که کد‌های پرواز کنترل‌کننده فضاپیما با زبان C++ نوشته شده است. تاچ‌اسکرین فضاپیما هم از رابط کاربری که با Chromuim و JavaScript نوشته شده است، بهره می‌برد و اگر مشکلی برای این صفحه‌ی لمسی پیش آید نیز فضانوردان با دکمه‌های فیزیکی می‌توانند فضاپیما را کنترل کنند.

نظر خود را اضافه کنید.

ارسال نظر بدون عضویت در سایت

0

نظرات (1)

  • مهمان - جاوید

    قبلا در مطالبی که در مورد فضاپیما خوندم متوجه شدم قابلیت اطمینان و اجرا درست دستورات و عدم نویز پذیری در ارسال دریافت و پردازش اطلاعت (مثلا در برابر تشعشعات فضای یا درست کارنکردن مدارات بعلت وجود اتصلات کوتاه الکتریکی در مدارات به علت نشستن غبارات بسیار کوچک کیهانی روی مدارات و ....) بسیار بسیار مهمتر از سرعت اجرا هست

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

ورود به شهرسخت‌افزار

ثبت نام در شهر سخت افزار
ورود به شهر سخت افزار

ثبت نام در شهر سخت افزار

نام و نام خانوادگی(*)
لطفا نام خود را وارد کنید

ایمیل(*)
لطفا ایمیل خود را به درستی وارد کنید

رمز عبور(*)
لطفا رمز عبور خود را وارد کنید

شماره موبایل
Invalid Input

جزو کدام دسته از اشخاص هستید؟(*)

لطفا یکی از موارد را انتخاب کنید