मुझे लगता है कि एक एम्बेडेड सिस्टम में लिनक्स का उपयोग करना अधिक संदिग्ध है कि सी ++ का उपयोग करना। इस अर्थ में कि यह एक बुरा विचार के बजाय एक और महत्वपूर्ण निर्णय है।
एम्बेडेड सिस्टम में सी ++ से संबंधित अधिकांश चिंताओं को कोड आकार और प्रदर्शन के साथ करना है; कई चिंताओं मिथक पर आधारित हैं या बहुत कम महत्वपूर्ण हैं जो आप सोच सकते हैं, लेकिन यहां तक कि जहां उनके पास कुछ औचित्य है, वे लिनक्स चलाने के ऊपरी हिस्से और हार्ड रीयल-टाइम के लिए लिनक्स कर्नेल की अनुपस्थिति की तुलना में महत्वहीनता में पीले हैं और कम विलंबता अनुप्रयोगों।
मैं नियमित रूप से ओएस-कम और आरटीओएस आधारित सिस्टम पर एम्बेडेड सिस्टम में सी ++ का उपयोग करता हूं।लिनक्स का उपयोग उचित है जहां रीयल-टाइम निर्धारिती व्यवहार आवश्यक नहीं है, लेकिन डिवाइस, फाइल सिस्टम और नेटवर्किंग समर्थन प्रदान किया गया है (हालांकि इसमें से अधिकतर अन्य तरीकों से प्राप्त किया जा सकता है), और आपका सिस्टम महत्वपूर्ण संसाधनों के साथ संपन्न है ; लेकिन अगर कोई अनिवार्य आवश्यकता नहीं थी तो यह एम्बेडेड सिस्टम ओएस के लिए मेरी पसंद की सूची में हमेशा रहेगा।
यदि आप किसी एमएमयू (उदाहरण के लिए एआरएम 7 या कॉर्टेक्स-एम 3) के साथ एआरएम पर यूक्लिनक्स का उपयोग करना चुनते हैं, तो आप पहले उदाहरण में एमएमयू संरक्षित प्रक्रियाओं/कर्नेल में लिनक्स का उपयोग करने के लिए एक महत्वपूर्ण अनिवार्य कारण खो देते हैं।
यदि आप लिनक्स का उपयोग कर रहे हैं तो मुझे कोई समस्या नहीं दिखाई दे रही है। एक संभावित दोष वर्चुअल फ़ंक्शन हो सकता है, जो एक और स्तर रीडायरेक्टिंग का उपयोग करता है, आपके प्रोग्राम को थोड़ा धीमा कर सकता है। – tristan
-1 यह सवाल काफी अस्पष्ट है। कृपया आगे व्याख्या कीजिये। –
@ ट्रिस्टन, मुझे नहीं लगता कि वर्चुअल फ़ंक्शंस का ओवरहेड इतना बड़ा चिंता है ... अधिक संभावना है कि आरटीटीआई, अपवाद, और बड़ी संख्या में टेम्पलेट इंस्टीटेशंस हत्यारे होंगे। –