हवाई जहाज में कौन से ऑपरेटिंग सिस्टम का उपयोग किया जाता है, और वे किस प्रोग्रामिंग भाषा में विकसित होते हैं? [बन्द है]


113

मैं सोच रहा था कि क्या किसी को पता है कि वाणिज्यिक हवाई जहाज (बोइंग या एयरबस) में इस्तेमाल होने वाला ऑपरेटिंग सिस्टम क्या है।

इसके अलावा, क्या (पसंदीदा) वास्तविक समय प्रोग्रामिंग भाषा है? मैंने सुना है कि बोइंग में एडा का उपयोग किया जाता है, इसलिए मेरा सवाल है - एडा क्यों? बोइंग-लोगों को इस भाषा को चुनने के लिए क्या मापदंड हैं? (मुझे लगता है कि अगर कूड़ा उठाने वाला कलेक्टर उठता है तो जावा बेहतर विकल्प नहीं होगा)।


11
जब मैंने पहली बार यह प्रश्न देखा तो मुझे लगा कि यह उन प्रणालियों के बारे में पूछ रहा है जो इन-फ़्लाइट फ़िल्में चलाती हैं और ऐसी सीटों के पीछे। मैं एक बार डेल्टा उड़ान पर था, जहां उन्होंने उस प्रणाली को रिबूट किया और आप बता सकते हैं कि यह लिनक्स चला रहा था, एक डेबियन संस्करण।
क्रिश हार्पर

1
@ root45: आह ... मैं मानता हूँ कि यह मेरे दिमाग को पार नहीं करता था। हो सकता था। मैंने देखा है कि कुछ QNX जो मुझे लगता है कि कुछ रन करते हैं, और अन्य विंडोज एंबेडेड चलाते हैं।
जाइलम

17
"यह किस तरह के ऑपरेटिंग सिस्टम का उपयोग करता है?" "मुझे लगता है कि यह विस्टा है।" "हम मरने जा रहे हैं!"
स्टुपरयूजर

1
@StuperUser: मेरे पसंदीदा आईटी क्राउड एपिसोड में से एक। ( youtube.com/watch?v=8y4akOH8v8Q - 2:34 मिनट)। इसके अलावा, न केवल वाणिज्यिक एयरलाइंस, बल्कि यह जानना दिलचस्प होगा कि सैन्य विमान क्या उपयोग करते हैं, अगर यह समान नहीं है। विस्टा, लोल।
बैच

1
@ मूल्य: जावा के लिए वास्तविक समय के वीएम हैं (भाषा में, मंच नहीं)। मुझे नहीं पता कि JavaRT वेरिएंट का इस्तेमाल गंभीर (और आबाद) फ़्लाइट सिस्टम के लिए किया गया है, लेकिन मैंने इसे मॉडल या ड्रोन के लिए इस्तेमाल किया है।
जाइलम

जवाबों:


157

वैमानिकी

एयरक्राफ्ट कंट्रोल सिस्टम के लिए, हम ऑपरेटिंग सिस्टम की बात नहीं करते हैं, लेकिन एविओनिक्स , इंटीग्रेटेड एवियोनिक्स या कंप्यूटर एयरबोर्न सिस्टम की। और वे वास्तव में विभिन्न कार्यों ( उड़ान नियंत्रण , टक्कर से बचाव , मौसम, संचार, ब्लैकबॉक्स ...) के लिए स्वतंत्र या अंतर-निर्भर प्रणालियों की भीड़ का संयोजन हैं ।

प्रत्येक नियंत्रक आमतौर पर स्पष्ट सुरक्षा और सुरक्षा कारणों से एक स्वतंत्र मॉड्यूल (हार्डवेयर और सॉफ्टवेयर) है: वे महत्वपूर्ण नियंत्रण और निगरानी प्रणाली हैं और यदि उनमें से एक को विफल किया गया या क्षतिग्रस्त हो गया, तो यह उन लोगों के लिए एक बड़ी "असुविधा" है जो हैं विमान के आधार पर। जब आप फ्लाइंग मशीन में होते हैं , तो निर्भरता इसका सारा अर्थ लेती है । तो आमतौर पर यह है

  • उनके मिशन के उद्देश्य के लिए बनाया गया रिवाज,
  • स्वतंत्र रूप से और अन्य प्रणालियों के साथ काम करने के लिए बनाया गया,
  • होना करने के लिए बनाया गलती सहिष्णु अपनी ही विफलताओं को और अन्य प्रणालियों यह करने के लिए interfaced है (क्योंकि आप पायलट की ध्वनि प्रणाली इंजन नियंत्रण नीचे ले, उदाहरण के लिए नहीं करना चाहते हैं) की विफलताओं के लिए।

यह सब कुछ चलाने वाला एक बड़ा कंप्यूटर नहीं है। यदि आप इसे एक वाणिज्यिक के बजाय एक सैन्य विमान के दृष्टिकोण से सोचते हैं (हालांकि यह इस संबंध में समान है, तो छवि मदद कर सकती है): यदि कोई भाग गोली मारता है, तो आप कम से कम कुछ अन्य भागों में सक्षम होंगे जारी रखने के लिए (संचार और सुरक्षा प्रणालियों को नियंत्रित करने वाला हिस्सा जीवित रखने के लिए दिलचस्प हो सकता है ...)। इसलिए विभिन्न प्रणालियों की स्थिति पर नज़र रखने के लिए आप जेटलाइनरों में लगे बटनों का बड़ा समूह भी देखते हैं।

वे आमतौर पर या तो अपने स्वयं के सिस्टम को संचालित करने वाले कस्टम घटकों के रूप में निर्मित होते हैं, या उन्हें माइक्रो-कर्नेल द्वारा चलाया जाता है और शेड्यूल किया जाता है (ज्यादातर मामलों में, वास्तविक समय क्षमताओं के लिए समर्थन के साथ )।

यह विक्रेताओं और देशों पर निर्भर करता है, जाहिर है, लेकिन उन्हें आमतौर पर नियमों, डिजाइन आवश्यकताओं और प्रोटोकॉल विशिष्टताओं के सख्त सेटों का पालन करने की आवश्यकता होती है, जो इसके लिए अनुमति देते हैं:

  • सुरक्षा और सुरक्षा मानकों के उनके सख्त अनुपालन का नियंत्रण,
  • अन्य प्रणालियों के साथ अंतर-संचार (यदि आप उस हवाई जहाज के साथ रिक्जेविक में उड़ान भर चुके हैं तो बेहतर होगा कि टोक्यो में उस जमीन-नियंत्रण उपकरण से "बात कर सकें" ...)

मानकीकरण के प्रयास

डीओ-178B (1992 में संशोधित) और उसके उत्तराधिकारी डीओ-178C (2012 में संशोधित) (और संबंधित दस्तावेजों का एक समूह) इस तरह के अनुपालन के स्तर के लिए संदर्भ प्रमाणपत्र का एक उदाहरण है, और एफएए (अमेरिका) द्वारा मान्यता प्राप्त हैं, ईएएसए (ईयू), और परिवहन कनाडा, दूसरों के बीच में। कई अन्य संगठन ऐसे दस्तावेजों के निर्माण में शामिल हैं, जैसे कि यूरोपा

इस तरह के एयरबोर्न सिस्टम आमतौर पर bespoke सॉफ्टवेयर होते हैं, लेकिन निम्नलिखित सिस्टम को कुछ हवाई जहाजों में उपयोग करने के लिए जाना जाता है:

आपको एविओनिक्स सिस्टम में निर्मित तत्वों का एक अस्पष्ट विचार देने के लिए, एविओनिक्स की यह सूची उनमें से कुछ (कुछ ओवरलैप के साथ) की ओर इशारा करती है।

वाणिज्यिक और सैन्य Avionics में प्रयुक्त उल्लेखनीय भाषाएँ

सामान्य "मेनस्ट्रीम" प्रोग्रामिंग दुनिया में हम जानते हैं कि सामान्य संदिग्धों के अलावा, आप कुछ अक्सर संदर्भित नाम जैसे आद्या , और 2010 के बाद से कुछ कम ज्ञात भाषाएँ जैसे (दिनांकित और अब "सेवानिवृत्त") आएंगे JOVIAL


संबंधित StackExchange प्रश्न:


2
@ मट्टनज़: धन्यवाद। लेकिन यह ईमानदारी से ओपी से जो पूछ रहा है उससे थोड़ा दूर है। मैंने प्रलेखन उद्देश्यों के लिए उपयोगी अंतर्दृष्टि और संकेत प्रदान करने की कोशिश की, लेकिन जब वास्तविक कार्यान्वयन विवरण की बात आती है तो कठिन डेटा खोजना मुश्किल होता है।
जाइलम ha

"और वे वास्तव में स्वतंत्र या अंतर-निर्भर प्रणालियों की भीड़ का एक संयोजन हैं" क्या आपका मतलब है कि इन के लिए अलग हार्डवेयर है?
9

2
हां, वे उद्देश्य से निर्मित हार्डवेयर होते हैं। आपके विमान को चलाने में x86 पीसी का रैक नहीं है।
रिग

3
@stijn: ठीक है, हाँ। इस पर इस तरीके से विचार करें। वे महत्वपूर्ण नियंत्रण और निगरानी प्रणाली हैं। यदि उनमें से एक विफल हो जाता है, तो इसका मतलब है कि बड़ी फ्रीकिन की समस्या, सुपर बिग एफ के साथ और उससे कम विनम्र। इसलिए आमतौर पर यह) उनके मिशन बी के उद्देश्य के लिए बनाया गया कस्टम है) स्वतंत्र रूप से काम करने के लिए बनाया गया है और अन्य प्रणालियों के साथ इंटरफेस सी) अपनी स्वयं की विफलताओं के लिए सहिष्णु और अन्य प्रणालियों की असफलता के लिए बनाया गया है (क्योंकि आप डॉन नहीं हैं उदाहरण के लिए, पायलट का साउंड सिस्टम इंजन नियंत्रण को कम करना चाहता है)। यह सब कुछ चलाने वाला एक बड़ा कंप्यूटर नहीं है।
जाइलम १m

@stijn: एक वाणिज्यिक विमान के बजाय एक सैन्य विमान के दृष्टिकोण से इसके बारे में सोचो, अगर वह मदद करता है: यदि एक भाग पर गोली मार दी जाती है, तो आप कम से कम कुछ अन्य भागों को चालू रखने में सक्षम होंगे (मैं कहूंगा संचार और सुरक्षा प्रणालियों को नियंत्रित करने वाला हिस्सा जीवित रखने के लिए दिलचस्प हो सकता है ...)। इसलिए विभिन्न प्रणालियों की स्थिति पर नज़र रखने के लिए आप जेटलाइनरों में लगे बटनों का बड़ा समूह भी देखते हैं।
ज्येष्ठ

22

अधिकांश आधुनिक विमान एक सामान्य उद्देश्य आरटीओएस (रियलटाइम ऑपरेटिंग सिस्टम) का उपयोग करते हैं, जो कारखाने स्वचालन, बिजली स्टेशनों, घटकों आदि में उपयोग होने वाली एक ही चीज़ है।

एयरबस कुछ का उपयोग करता है, जिसमें नॉर्थ्रॉप-ग्रुम्न से इंटीग्रिटी शामिल है और इसे C / C ++ में प्रोग्राम करते हैं, बोइंग अन्य लोगों के बीच VxWorks का उपयोग करते हैं


2
बयान "... सामान्य उद्देश्य आरटीओएस ..." यह एक आरवियन सिस्टम में बनाने के लिए आरटीओएस के लिए क्या लेता है, इसे तुच्छ बनाता है, यह शायद ही आरटीओएस एसीएमई कॉर्प्स डिजिटल टीवी रेसीवर में उपयोग कर रहा है।
मटनज़

3
कोई नहीं बल्कि VxWorks को एक Mar रोवर से अपने ब्लैकबेरी फोन के लिए किसी भी चीज के लिए इस्तेमाल किया जा सकता है
मार्टिन बेकेट

क्षमा करें यह QNX है जिसका उपयोग ब्लैकबेरी में किया जाता है, न कि VxWorks में। लेकिन एक ही सिद्धांत लागू होता है - COTS rtos का उपयोग विमान में किया जा सकता है
मार्टिन बेकेट

12

इसके लायक क्या है: अंतरिक्ष यान (उपग्रहों और इंटरप्लेनेटरी वाले) के लिए सी और सी ++ अभी भी प्रमुख है (और आईएसओ मानकों के बहुत सख्त अनुपालन के साथ), आमतौर पर VxWorks चल रहे हैं। आम तौर पर डेवलपर डेवलपर, कम्पाइलर टूलकिन में विश्वास और आंतरिक कोडिंग मानकों के आधार पर C या C ++ के साथ लैब्स आमतौर पर चिपके रहेंगे। रीयल-टाइम फ़्लाइट सॉफ़्टवेयर के लिए दोनों भाषाओं के लिए आकर्षक कारण हैं, लेकिन प्रत्येक संगठन एक या दूसरे के साथ चिपक जाता है। दूसरी ओर, सहायक उपकरण, आमतौर पर फोर्थ, सी में प्रोग्राम किए जाते हैं, और लुआ जैसी आधुनिक स्क्रिप्टिंग भाषाओं में तेजी आती है।


3
आमतौर पर यह C या C ++ का सबसेट है, जैसे कि MISRA C या JSF C ++, जहां तक ​​मैंने पढ़ा है।
कोडर

10

यह भी ध्यान देने योग्य है कि सिमुलिंक का उपयोग करके मॉडल-आधारित-डिज़ाइन का उपयोग करके अक्सर नियंत्रण प्रणाली विकसित की जाती है। फिर डिज़ाइन को स्वचालित रूप से सी कोड में बदल दिया जाता है। मनुष्य अभी भी कोड को पढ़ता है और मान्य करता है।


सॉफ़्टवेयर इंजीनियरिंग में महत्वपूर्ण प्रणालियों के बारे में बात करने पर मेरे प्रोफेसर ने वास्तव में इसका उल्लेख किया।
डायल्सन सेल्स

मेरा मानना ​​है कि एयरबस अपनी उड़ान नियंत्रण प्रणालियों में हार्डवेयर और सॉफ्टवेयर के कार्यात्मक विनिर्देश के लिए SCADE का उपयोग करता है । उपकरण या तो C या Ada कोड जनरेट कर सकता है।
dodgy_coder
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.