क्या किसी ने NuttX RTOS का मूल्यांकन किया है?


15

आज लिनक्स यूजर जर्नल पढ़ते हुए, मैं NuttX RTOS के बारे में थोड़ा धुंधला हो गया । मैंने उनकी वेबसाइट देखी और फीचर सेट से काफी प्रभावित हुआ और इसे 8052 में डालने की क्षमता है! मुझे यह दिलचस्प लगा कि यह POSIX का समर्थन करता है, जो कि मैंने अपने एक ग्राहक के इन-हाउस RTOS के लिए काम करने में मदद की है। यह इन-हाउस आरटीओएस की तुलना में थोड़ा अधिक समृद्ध है।

क्या किसी और ने NuttX के बारे में सुना है और इसे आजमाया है? यदि हां, तो यह अन्य RTOS जैसे FreeRTOS की तुलना कैसे करता है ?


1
मैं अभी आरटीओएस के साथ खेलना शुरू कर रहा हूं, और जब मैंने यहां पूछा तो मुझे बहुत सलाह मिली, लेकिन मुझे इस बात का अहसास था कि यहां के ज्यादातर यूजर्स को पता नहीं है कि आरटीओएस क्या है। मेरा यह मतलब खराब नहीं है, मुझे लगता है कि अन्य मंचों में भी यह पूछने का मूल्य हो सकता है कि एक अच्छा उत्तर प्राप्त करने की संभावना बढ़े।
कोरटुक

मुझे किसी भी तरह से कोशिश करनी है :-) आप कभी नहीं जानते कि कौन यहाँ लोटता है :-)
जे एटकिंसन

हाँ, मैंने यहाँ भी एक सवाल पूछा। कभी भी काटने की उम्मीद नहीं करता।
कोरटुक

इनाम शुरू! RTOS के बीच तुलना में दिलचस्पी है।
टाइबलू

7
इस प्रश्न पर मतदान क्यों बंद है? RTOS का उपयोग हर समय इलेक्ट्रॉनिक्स और रोबोटिक्स में किया जाता है।
कालेनजब

जवाबों:


17

इस प्रश्न से संबंधित चर्चा यहाँ की गई है: लिंक

अर्क: लिनक्स जर्नल लेख जिसे संदर्भित किया जाता है वह यहां है: लिंक

मुझे लगता है कि 8052 और M68HC12 पोर्ट्स विशेष रूप से NuttX की विशेषता के लिए खराब विकल्प हैं, क्योंकि इन दोनों में कुछ मुद्दे हैं, और NuttX अब 63 रिलीज के साथ 5.16 संस्करण में है।

मैंने यहां "प्रकाशक" टैब में साक्षात्कार भरा: लिंक ; वहाँ भी एक समीक्षा है: लिंक

व्यापक NuttX प्रलेखन यहाँ उपलब्ध है: लिंक

Hcs12 और 8051 भागों के मुद्दे इस प्रकार हैं:

8051 / 80c52: यह वास्तुकला वास्तव में RTOS शत्रुतापूर्ण है। यह एक समर्पित स्मृति स्थान (पता 0) पर एक छोटे हार्डवेयर स्टैक (8051, 80c52 पर 256 बाइट्स पर 128 बाइट्स) है। कार्यों को स्विच करने के लिए, आपको कार्य के पूरे स्टैक को उसके समर्पित पते से कुछ सहेजने के स्थान पर अवरोधित करना होगा, और फिर कार्य के पूरे स्टैक को उसके सहेजे गए स्थान से समर्पित स्टैक स्थान पर प्रारंभ करने के लिए कॉपी करना होगा। YECH!

और चूंकि, स्टैक इतना छोटा है। स्टैक से आगे निकलना बहुत आसान है, खासकर इंटरप्ट हैंडलिंग के दौरान।

NuttX 8051 पोर्ट पूर्ण और कार्यात्मक है (कम से कम पिछली बार मैंने इसका इस्तेमाल किया था)। लेकिन इसे उपयोगी बनाने के लिए, आपको संभवतः प्रत्येक रुकावट पर पूरे स्टैक को कॉपी करना होगा और साथ ही इसे ओवरफ्लो होने से बचाना होगा। मूल रूप से, मैंने उस बिंदु पर रुचि खो दी थी लेकिन अगर कुछ लोग वास्तव में 8051 का उपयोग करने के लिए प्रेरित थे, तो यह संभव है (यदि शायद अच्छी तरह से सलाह नहीं दी गई है)।

8051 के बंदरगाह के बारे में जो अच्छा था वह यह है कि यह NuttX को बहुत छोटे मेमोरी लोकेशन में लाने के लिए एक बहुत अच्छा अभ्यास था। 8051 पोर्ट 32Kb RAM में चलता है - जिसमें RTOS, libc, कंपाइलर लाइब्रेरी, एक पर्याप्त टेस्ट प्रोग्राम, .data / .bs, और ढेर शामिल हैं। और थोड़ी याददाश्त के साथ!

hcs12: यह एक ऐसी परियोजना है जो मैं अपने खाली समय में काम करता हूं जब मैं कुछ और नहीं कर रहा होता हूं। यह अभी समाप्त नहीं हुआ है और अभी तक प्राइम टाइम के लिए तैयार नहीं है।


अन्य RTOS की तुलना के संबंध में, मेरे पास वास्तव में कोई अच्छा, आधिकारिक जवाब नहीं है क्योंकि मैं अन्य RTOS का उपयोग नहीं करता हूं। लेकिन यहाँ मेरी भोली समझ है:

FreeRTOS में डाउनलोड के टन और 4Kb के बारे में एक बहुत छोटे पदचिह्न हैं। यह वास्तव में छोटे MCUs के लिए पसंद का RTOS है। FreeRTOS पोर्ट को सिलिकॉन वेंडर्स द्वारा हर MCU के साथ बंडल किया जाता है। तो यह डिफ़ॉल्ट RTOS विकल्प है।

वहाँ बाहर FreeRTOS के साथ दर्जनों प्रतियोगियों हैं। ChiBIOS तुरंत दिमाग में आता है। ये सभी अलग-अलग प्रकार के छोटे शेड्यूलर हैं।

वास्तविक तुलना करने के लिए, एक बात जो हमें सबसे पहले करने की आवश्यकता है वह यह है कि हम एक आरटीओएस से क्या मतलब रखते हैं: क्या यह सिर्फ एक अनुसूचक है? या यह मानक ओएस सुविधाओं का एक एकीकृत सेट है - जैसे अनुसूचक, फाइलसिस्टम, डिवाइस ड्राइवर, मेमोरी प्रबंधन, नेटवर्किंग, आदि। अधिकांश ऑपरेटिंग सिस्टम, उदाहरण के लिए लिनक्स, पूर्ण विकास वातावरण हैं, न कि केवल अनुसूचक। NuttX एक पूर्ण ऑपरेटिंग सिस्टम है जो लिनक्स के समान ही है। यहाँ दूसरों के एक जोड़े हैं:

आरटीईएमएस : मैंने इसके साथ काम किया है। यह हमेशा के लिए चारों ओर रहा है और बहुत स्थिर होना चाहिए। यह बड़ा है; सोचो> 100kb। मुझे लगता है कि यह एमसीयू बाजार से थोड़ा ऊपर है।

uCOS : कभी इसका इस्तेमाल नहीं किया, लेकिन यह कई लोकप्रिय बूटलोडर्स के तहत RTOS है, है ना? मेरी धारणा यह है कि यह आरटीईएमएस के समान है, लेकिन मैं वास्तव में नहीं जानता कि मैं किस बारे में बात कर रहा हूं।

मैं उन लोगों से NuttX की तुलना कैसे करूंगा: ठीक है, यह बहुत छोटा है। शुरुआती पायदान 20Kb के आसपास है। एक पूर्ण रूप से चित्रित विवरण कुछ 10-20Kb अधिक है। इन RTOS से एक और अंतर यह है कि NuttX बहुत मानक उन्मुख है। आप NuttX को एक छोटे, लिनक्स काम के समान समझ सकते हैं। अधिकांश कोड जो लिनक्स पर संकलित और चलते हैं, वे NuttX पर भी चलेंगे (कुछ सिस्टम कोड जैसे नेटवर्किंग कोड या डेमॉन को कुछ ट्वीक की आवश्यकता हो सकती है)।

मुझे लगता है कि RTEMS माइक्रो-प्रोसेसर पर अधिक केंद्रित है; NuttX माइक्रो-कंट्रोलर्स पर अधिक केंद्रित है।


4

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

NuttX (और शायद अन्य) में एक गैर-प्रतिबंधक, संशोधित बीएसडी लाइसेंस है। बीएसडी लाइसेंस के साथ, आप अनिवार्य रूप से कोड ले सकते हैं और इसका उपयोग कर सकते हैं जैसे कि यह फाइलों के भीतर लाइसेंसिंग और कॉपीराइट जानकारी को बनाए रखने के अलावा कोई दायित्व नहीं था।


नट, क्या आप मुझे इस जानकारी को अपने अन्य उत्तर में संपादित करना चाहेंगे, ऐसा लगता है कि वे एक साथ चलते हैं।
कोरटुक

ज़रूर, बेझिझक। 8051 और 80c52 और hc12 के बारे में भी यहाँ संदर्भ से बाहर लगता है।
पेटाकॉन्गो

मैं सिर्फ यह सुनिश्चित कर रहा था कि आप महसूस करें कि आप इसे और अधिक संपादित कर सकते हैं। चूंकि आप इसे जानते थे और यह जानबूझकर किया था इसलिए हम इसे यहां छोड़ सकते हैं। आम तौर पर आप किसी अन्य अनुभाग में संपादित कर सकते हैं और शीर्षक का उपयोग कर सकते हैं। मुझे पता है कि अगर आप अपना मन बदल सकते हैं तो मैं मदद कर सकता हूं।
कोर्तुक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.