Blog
کامپیوتر آپولو ۱۱ هنگام فرود روی ماه هشدار داد؛ چرا مأموریت متوقف نشد؟




در یکی از حساسترین لحظات تاریخ فضانوردی، وقتی «ایگل» در حال نزدیکشدن به سطح ماه بود، کامپیوتر هدایت ماژول ماهنشین آپولو ۱۱ چند بار آلارمهای ۱۲۰۱ و ۱۲۰۲ را نمایش داد. نیل آرمسترانگ و باز آلدرین نمیدانستند این کدها دقیقاً چه معنایی دارند و موضوع را به مرکز کنترل گزارش کردند. بااینحال، مأموریت متوقف نشد و چند دقیقه بعد نخستین انسانها روی ماه فرود آمدند.
ماجرا در ظاهر شبیه یک خطای جدی کامپیوتری بود، اما این ذهنیت با واقعیت تفاوت زیادی داشت.
آلارمهای ۱۲۰۱ و ۱۲۰۲ چه بودند؟
کامپیوتر راهنمای آپولو یا AGC برای مدیریت محدودیتهای سختافزاری خود به یک سیستم زمانبندی مبتنی بر اولویت مجهز بود. اگر تعداد کارهای در حال اجرا بیش از ظرفیت پردازشی میشد، همهی وظایف به یک اندازه مهم تلقی نمیشدند؛ کامپیوتر ابتدا کارهای با اولویت بالا را انجام میداد و وظایف کماهمیتتر ممکن بود کنار گذاشته شوند.
آلارم ۱۲۰۲ نشاندهندهی پرشدن ظرفیت حافظههای موقت یا بهعبارت سادهتر، انباشتهشدن بیش از حد کارهای در صف بود. آلارم ۱۲۰۱ نیز زمانی ظاهر میشد که درخواست جدید به فضای حافظهی موقت دیگری نیاز داشت و فضای کافی در دسترس نبود.
مشکل اصلی از «رادار ملاقات» نشئت میگرفت. این سامانه در وضعیتی قرار گرفته بود که کامپیوتر مرتباً در انتظار دادههای راداری میماند؛ درحالیکه چنین دادههایی در آن لحظه برای هدایت فرود ضروری نبودند. در نتیجه، بخشی از توان محدود کامپیوتر صرف کارهایی میشد که اولویت پایینی داشتند.
چرا کامپیوتر از کار نیفتاد؟
نکتهی نجاتبخش همینجا بود. نرمافزار AGC طوری طراحی شده بود که در صورت اضافهبار، سیستم را راهاندازی مجدد کند و سپس مهمترین وظایف را دوباره اجرا کند. کارهای غیرضروری که باعث ایجاد فشار شده بودند، در اولویت پایینتری قرار میگرفتند و دوباره وارد صف نمیشدند. در نتیجه، کامپیوتر میتوانست وظایف حیاتی هدایت و کنترل ماهنشین را ادامه دهد.
نرمافزار آپولو ۱۱ با سیمهای مسی بافته شده بود
به بیان امروزی، مشکل این نبود که کامپیوتر دیگر هیچ کاری نمیتوانست انجام دهد؛ مشکل این بود که باید از میان کارهای زیاد، انتخاب میکرد کدام کارها واقعاً برای ادامهی مأموریت ضروری هستند.
مهندسان از قبل عملکرد سیستم راهاندازی مجدد و اولویتبندی آن را آزمایش کرده بودند. استیو بیلز، افسر هدایت در مرکز کنترل، و جک گارمن که با آلارمهای کامپیوتر آشنایی داشت، خیلی سریع تشخیص دادند که ۱۲۰۲ در این شرایط بهمعنای از دست رفتن کنترل فرود نیست. بنابراین مرکز کنترل به خدمه اعلام کرد که ادامه دهند.
در گزارش رسمی مأموریت نیز ناسا نوشته است که پنج آلارم کامپیوتری طی چند دقیقهی فرود رخ دادند، اما چون عملکردهای اصلی ناوبری همچنان درست انجام میشدند، تصمیم بر ادامهی فرود گرفته شد.
کامپیوتر آپولو واقعاً چقدر محدود بود؟
رایانهای که چنین تصمیمهای مهمی را مدیریت میکرد، با استانداردهای امروز فوقالعاده ضعیف به نظر میرسد. AGC حدود ۰٫۰۳ متر مکعب حجم داشت، تنها ۲ کیلوبایت حافظهی قابلنوشتن و حدود ۳۶ کیلوبایت حافظهی سیمی ثابت در اختیارش بود و برنامهها با معماری بسیار متفاوتی نسبت به کامپیوترهای امروزی اجرا میشدند.
همین سیستم محدود بهجای آنکه در مواجهه با اضافهبار کاملاً متوقف شود، برای چنین شرایطی سازوکار بازیابی داشت. بنابراین عبارتهایی مثل «کامپیوتر آپولو خراب شد و فضانوردان هشدارش را نادیده گرفتند» تصویر دقیقی از ماجرا ارائه نمیکنند.
یکی از دلایل مهمی که فرود تاریخی آپولو ۱۱ امکانپذیر شد، این بود که نرمافزار رایانه میدانست کدام کارها را باید حفظ کند و کدام کارها را میتوان کنار گذاشت. آلارمها واقعی بودند، فشار پردازشی هم واقعی بود، اما سیستم دقیقاً برای زندهماندن در چنین شرایطی طراحی شده بود.
لینک خبر در وبسایت zoomit