उस पर ओएस के बिना रास्पबेरी पीआई?


9

मैं हाल ही में Arduino के साथ बहुत कुछ कर रहा हूं। यह बहुत सरल है क्योंकि आप ऑपरेटिंग सिस्टम या ड्राइवरों की आवश्यकता के बिना सीधे उस पर C ++ कोड निष्पादित कर सकते हैं।

मैंने कुछ शोध और AFAIK किया है, आप आमतौर पर रास्पबेरी PI पर लिनक्स स्थापित करते हैं और उस पर अजगर स्क्रिप्ट या C ++ बायनेरिज़ बनाते हैं।

प्रश्न: क्या किसी भी ऑपरेटिंग सिस्टम के बिना उस पर कोड चलाना संभव है, लेकिन फिर भी एचडीएमआई और एसडी कार्ड का उपयोग करने में सक्षम है?


2
आपको छोटे और कम सक्षम, लेकिन अधिक पूरी तरह से प्रलेखित एआरएम प्रोसेसर पर नंगे-धातु परियोजनाओं को करना आसान हो सकता है। हालांकि सस्ते देव बोर्डों पर बुरी तरह से लागू, मालिकाना डिबग एडेप्टर के लिए बाहर देखो - कभी-कभी ये रिवर्स इंजीनियर ओपन ड्राइवर प्राप्त करते हैं, या आप एक असली जेटीग खरीद सकते हैं या सीरियल बूटलोडर का उपयोग कर सकते हैं। कम से कम पाई के साथ आपको अच्छे टूलचिन समर्थन की उम्मीद करने में सक्षम होना चाहिए।
क्रिस स्ट्रैटन

जवाबों:


16

ओएस के बिना RaPi पर कोड चलाएँ: कोई समस्या नहीं। डेविड वेल्च ने ग्रंट का काम किया है, उनके गिटब को देखें । मूल रूप से, आप मानक स्टार्टअप फ़ाइलों को ले सकते हैं और जिस फ़ाइल को आप चलाना चाहते हैं, उसके साथ कर्नेल की जगह ले सकते हैं। 'एसडी कार्ड डांस' से बचने के लिए, आप एक बूटलोडर चला सकते हैं जो एक सीरियल लाइन पर छवि-टू-रन प्राप्त करता है। मैंने एक ऑटो-रिबूट जोड़ा है, जिससे आप एक नई छवि 'हैंड्स-ऑफ' चला सकते हैं। यदि आप इस मार्ग पर जाना चाहते हैं तो मेरे पास कुछ और जानकारी है।

अपने स्वयं के नंगे-धातु एप्लिकेशन को चलाएं और स्क्रीन और एसडी कार्ड का उपयोग करें : यह एक समस्या है। लिनक्स स्रोतों में सभी जानकारी गहरी उपलब्ध है, और इस पर काम करने वाले व्यक्ति (चेक डेक्सो ?) हैं, इसलिए मैं एक आधे साल में मान लेता हूं या इसलिए यह जानकारी सामान्य ज्ञान होगी। लेकिन अभी के लिए मैं कहूंगा कि यह बहुत ज्यादा काम है।


मुझे आश्चर्य है कि सीपीयू एसडी कार्ड और फ़ाइल सिस्टम के लिए उपयुक्त ड्राइवरों के बिना एसडी कार्ड से कर्नेल को कैसे लोड कर सकता है?
bytecode77

1
जिन मूलभूत फ़ाइलों की आपको आवश्यकता होती है (और रापी साइट से, अकेले या लिनक्स वितरण के हिस्से के रूप में डाउनलोड किया जा सकता है) में GPU के लिए एक स्टार्टअप फ़ाइल शामिल है। संभवतः GPU में कुछ अंतर्निहित बूटमॉम हैं जो इसे एसडी पढ़ने, अपना कोड लोड करने, कर्नेल लोड करने और एआरएम सीपीयू को सक्रिय करने की अनुमति देता है।
राउटर वैन ऊइजेन

@DevilsChild - कई सीपीयू में बेसिक बूटलोडर्स का निर्माण किया गया है, मैं जिस TI Davinci हिस्से के साथ काम कर रहा हूं उसमें "ROM बूटलोडर" है जो सीरियल या SD कार्ड से काम कर सकता है। एसडी कार्ड एक बुनियादी एसपीआई इंटरफ़ेस का उपयोग करते हैं।
जॉन यू

5

यह हमेशा संभव है, लेकिन आपको अपने स्वयं के ड्राइवरों को एचडीएमआई और एसडी-इंटरफ़ेस के लिए लिखना होगा, और संभवतः बाद के लिए एक फ़ाइल सिस्टम भी।


1
वास्तव में यह बेहद जटिल होगा क्योंकि यह जीपीयू है जो पहले शुरू होता है और फिर सीपीयू शुरू करने के लिए कुछ ब्रॉडकॉम के बाइनरी ब्लब्स को लोड करने की आवश्यकता होती है। इसके अलावा, अगर मुझे सही याद है, तो GPU ड्राइवर और फर्मवेयर भी बंद स्रोत हैं।
आंद्रेजाको

क्या ऐसे ड्राइवर उपलब्ध हैं जिन्हें शामिल किया जा सकता है इसलिए यह काम करेगा? कोई उपाय?
bytecode77

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

@DevilsChild - जो ड्राइवर मौजूद हैं, वे संभवतः एक विशिष्ट OS के लिए लिखे जाएंगे, और यदि आप उन्हें अपने स्वयं के सॉफ़्टवेयर में एकीकृत करना चाहते हैं, तो इसके कुछ कार्यक्षमता की आवश्यकता होगी। अंत में आप OS की (सीमित) प्रति लिखेंगे। इसके अलावा, आंद्रेजाको इंगित करता है कि यह बहुत मुश्किल होगा, और बंद स्रोत फर्मवेयर चीजों को आसान नहीं बनाता है। आपको OS क्यों नहीं चाहिए?
स्टीवन्वह

1
@DevilsChild एक बोर्ड कंप्यूटर और वीएम के बीच महत्वपूर्ण अंतर यह है कि आप बोर्ड को वीएम की मेजबानी करने वाले मशीन के भौतिक स्थान के अलावा कहीं और रख सकते हैं; यह भी बेहतर वास्तविक दुनिया मैं / हे करने के लिए जाता है। लेकिन VMs, और अधिक विशिष्ट एमुलेटर या सिमुलेटर में अक्सर एक महत्वपूर्ण भूमिका होती है, जैसे कि हार्डवेयर के अस्तित्व में आने से पहले सॉफ़्टवेयर टीम को काम करने देना, या उन्हें केवल प्रोटोटाइप बोर्ड पर लड़ने से बचने से रोक दिया गया है जो कार्यात्मक होने, या चलने के लिए हाथ से काम किया गया है। भौतिक उपकरणों के संग्रह को बांधने के बिना प्रतिगमन परीक्षण ...
क्रिस स्ट्रैटन

3

उन सभी ने जो कहा, लेकिन, EASIEST पथ लिनक्स डिस्ट्रो को चलाने के लिए है जो कि आप चाहते हैं और जितना संभव हो उतना कम से कम है, और फिर किसी भी चीज़ को बंद करें जो आप नहीं चाहते हैं।

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

जब तक यह अपने आप को पूरी तरह से करना महत्वपूर्ण है यह एक बहुत ही तार्किक दृष्टिकोण की तरह लगता है।



0

यदि आप "रास्पबेरी पाई को अरुडिनो" के रूप में प्रोग्राम करना चाहते हैं, तो वायरिंगपीआई देखें। Http://www.jating.in/efyarticle/EFYArticle.pdf पर मेरे लेख को देखें

1) मैंने USB-से-सीरियल रूपांतरण करने के लिए एकल केबल का उपयोग करके और बोर्ड को शक्ति प्रदान करने के लिए, Arduino की तरह इसे देखा और काम किया। इसलिए केवल एक यूएसबी केबल ही आर्डिनो की तरह पर्याप्त है।

2) मैंने छोटी उपयोगिता बनाई जो जब चलती है, तो वायर लाइन पर सीरियल कोड (वास्तव में किसी भी पाठ फ़ाइल :-)) पर वायरिंग कोड लोड होगा, इसे संकलित करें और निष्पादित करें।

यदि आप चाहें तो आप इसे प्रत्येक बूट पर .bashrc फ़ाइल को संशोधित करके चला सकते हैं, इसलिए हर बार जब यह बूट होता है, तो यह नई फ़ाइल की प्रतीक्षा कर रहा होगा। मैंने यूटिलिटी कोड का कोई लिंक नहीं दिया, लेकिन आप इसे http://www.jating.in/efyarticle/ पर पा सकते हैं

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.