मैं रास्पबेरी पाई बूट अप टाइम कैसे सुधारूं?


15

मैं एक घरेलू उपकरण बना रहा हूं जो यूजर इंटरफेस और आवश्यक वाईफाई कनेक्शन को संभालने के लिए आंतरिक रूप से रास्पबेरी पाई के रूप में उपयोग करता है। R-Pi से कनेक्टेड मेरे पास एक AdaFruit LCD स्क्रीन है:

Adafruit LCD

और एक USB वाईफ़ाई डोंगल:

यूएसबी वाईफाई डोंगल

और एक कीबोर्ड भी। और कुछ नहीं। ऑपरेटिंग सिस्टम OpenElec है , जो ऑपरेटिंग सिस्टम को काफी पतला करता है।

हालांकि, जब उपयोगकर्ता डिवाइस को चालू करता है, तो उपयोगकर्ता इनपुट को स्वीकार करने से पहले R-Pi को कई सेकंड लगते हैं ।

अगर फ्लैश से बूट हो रहा है तो इसमें इतना समय क्यों लगता है? दसियों सेकंड का समय बहुत अच्छा लगता है।

क्या ऐसा कुछ है जो 5 सेकंड से कम समय में रास्पबेरी पाई बूट बनाने के लिए किया जा सकता है? क्या वे किसी तरह के हाइबरनेट मोड में जा सकते हैं, जहाँ वह अपनी RAM को FLASH में लिखता है, फिर उसे पावर अप पर फिर से पढ़ता है?

अन्यथा, क्या समान क्षमताओं (छोटी एलसीडी स्क्रीन, वाईफाई डोंगल के लिए यूएसबी) के साथ रास्पबेरी-पाई का विकल्प है, जो 5 सेकंड के अंदर बूट कर सकता है?


बहुत अच्छा सवाल, क्या आप बूट लॉग को पेस्ट करने और इसे लिंक करने में सक्षम होंगे? ज्यादा w / बाहर नहीं कर सकते यह जानते हुए कि बूट के दौरान यह क्या कर रहा है?)
एमडीमोइर 313

2
यह क्या बूट कर रहा है? क्या आप एक न्यूनतम ओएस चला रहे हैं और इसे नंगे हड्डियों के लिए अलग कर रहे हैं - कोई डेस्कटॉप, आदि ??
स्कॉट सीडमैन

2
@ScottSeidman - मेरे प्रश्न में OpenElec जोड़ा गया।

1
मैं @BigHomie से सहमत हूं। बूट-अप के दौरान क्या हो रहा है, यह देखे बिना किसी भी सुधार का सुझाव देना काफी संभव नहीं है।

1
@NickAlexeev - आह, पुरानी अतिव्यापी Stackexchanges समस्या। मुझे लगता है कि सभी आर-पी सवाल वहाँ पर विषय होंगे।

जवाबों:


13

मैंने रास्पबेरी पाई के साथ काम नहीं किया है, लेकिन मैंने एम्बेडेड लिनक्स सिस्टम के साथ बूट समय कम कर दिया है, इसलिए मेरे पास कुछ सामान्य उत्तर हैं।

1) OpenElec पूरी तरह से काम करने योग्य एम्बेडेड डिस्ट्रो हो सकता है, लेकिन शुरुआती / डेमो डिस्ट्रोस आपको एक विस्तृत चौड़ाई की क्षमता देने के लिए किचन सिंक में फेंक देते हैं, लेकिन अक्सर इसका मतलब है कि ऐसी सेवाएं शुरू हो रही हैं जिनकी आपको आवश्यकता नहीं है। इसलिए init निर्देशिकाओं को देखें और अपने उद्देश्यों के लिए गैर-जरूरी कुछ भी बंद या स्थगित करें। यदि आपको किसी भी चीज़ की ज़रूरत नहीं है, तो धीमी प्रणालियों पर, एक्स विंडोज़ या ग्राफिक्स प्रक्रियाएँ वास्तविक समय हॉग हो सकती हैं। जरूरी नहीं है कि यह पर्याप्त रूप से ग्राफिक्स उत्पन्न नहीं कर सकता है, लेकिन मेमोरी में लोड किए गए सभी पुस्तकालयों को प्राप्त करने में समय लगता है। और लोडिंग से समय लगता है जब आप चाहते हैं कि सब कुछ लोड हो रहा है या लोड होने की प्रतीक्षा कर रहा है।

2) एसडी कार्ड में अलग-अलग रीड गति होती है, सबसे तेज़ खरीदें जो डिवाइस संभाल सकता है। या शायद देखें कि क्या एक यूएसबी स्टिक तेजी से लोड होगी। आपको संभवतः 40Mb / s कार्ड की आवश्यकता नहीं होगी, लेकिन एक सस्ते SD कार्ड से एक पर जा कर 10Mb / s स्थानान्तरण को संभाल सकते हैं, इससे फ़र्क पड़ सकता है - फिर से निर्भर करता है कि SD कार्ड Pi क्या संभाल सकता है)। एक स्पर्शरेखा के रूप में: फाइल सिस्टम के योग्य होने पर एक एसडी कार्ड को चलाना दीर्घकालिक स्थिरता के लिए महान नहीं है। यदि आपको इसकी आवश्यकता है, तो आपको कार्ड को रीड-ओनली मानने के लिए अपनी बूट सेटिंग्स को कॉन्फ़िगर करने पर विचार करने की आवश्यकता हो सकती है या, पूरी तरह से अन्य सिस्टम की व्यवस्था करें।

3) यदि आपको वास्तव में ग्राफिक्स की आवश्यकता है, तो बूट होने का भ्रम कभी-कभी किसी इनपुट के लिए वास्तव में 100% तैयार होने की तुलना में आसान होता है। कंसोल बूट स्प्लैश स्क्रीन प्रोग्राम हैं जो एक ग्राफिक को वास्तव में जल्दी से फेंक सकते हैं जबकि अन्य सभी सेवाओं को आपको शुरू करने की आवश्यकता होती है। मैंने ऐसे उदाहरण देखे हैं जहां एक प्रारंभिक नियंत्रण कक्ष ग्राफिक का उपयोग स्थिर बूट स्क्रीन के रूप में किया जाता है जो सिस्टम के तैयार होने पर एक लाइव वर्किंग के लिए स्वैप हो जाता है - उपयोगकर्ता स्क्रीन के 2-3 सेकंड के भीतर डेटा को वास्तव में दर्ज करना चाहता है। यूपी।

यदि आप अभी भी तेजी से बूट समय की तलाश कर रहे हैं, तो यहां देखने के लिए क्षेत्रों की सूची देखें।


2
विशेष रूप से बिंदु पर ध्यान केंद्रित करें 2. कर्नेल बूटिंग और इनिट स्क्रिप्ट क्रमशः 30: 70% बूट समय लेते हैं। कस्टम कर्नेल लगभग 40% तेजी से शुरू होगा, कस्टम स्टार्टअप स्क्रिप्ट 90% मूल में सुधार कर सकते हैं, जिसका अर्थ है कि आप आसानी से स्टार्टअप समय को आधा कर सकते हैं।
एसएफ।

आप बिलकुल सही हैं, मैंने # 1 और # 2 की अदला-बदली की क्योंकि मैं कुछ भी करने से पहले init स्क्रिप्ट के साथ समय बिताता था।

8

अगर फ्लैश से बूट हो रहा है तो इसमें इतना समय क्यों लगता है?

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

एक आधुनिक SATA III या SATA II हार्ड ड्राइव की तुलना में SD कार्ड की अंतरण दर वास्तव में काफी कम है। SATA पोर्ट का छोटा, USB 3.0 एक अन्य विकल्प है जिसमें अपेक्षाकृत कम लागत के लिए उच्च अंतरण दर है।

अधिक जानकारी यहां , यहां और यहां देखी जा सकती है

क्या ऐसा कुछ है जो 5 सेकंड से कम समय में रास्पबेरी पाई बूट बनाने के लिए किया जा सकता है?

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

क्या वे किसी तरह के हाइबरनेट मोड में जा सकते हैं, जहाँ वह अपनी RAM को FLASH में लिखता है, फिर उसे पावर अप पर फिर से पढ़ता है?

OpenElec के अनुसार, पाई हाइबरनेशन का समर्थन नहीं करता है , लेकिन यदि आप थोड़ा और नीचे पढ़ते हैं, तो आपके पीआई को कैसे तेज किया जाए, इस बारे में उनकी कुछ सलाह है ।


3

सामान्यतया, SD से पढ़ना बहुत धीमा है, इसलिए यह काफी प्रभावित होता है।

इसे बूट करने का प्रयास करें और यह पता लगाएं कि क्या बूट समय को बेहतर बनाने के लिए कोई बिंदु है।

या, आप अपना कर्नेल कॉन्फ़िगर कर सकते हैं, इसलिए इसका आकार बहुत कम है। या, कुछ अनावश्यक इनिशियलाइज़ेशन को छोड़ देना (विषम या कुछ और देखना) मदद कर सकता है।


2

आपको PiCore की तरह एक न्यूनतर Linux Linux डिस्ट्रो की आवश्यकता है । यह सिर्फ 7 सेकंड के बाद शीघ्र कमांड करने के लिए बूट करता है , और इसे एक्स के लिए 25 सेकंड की आवश्यकता होती है । आप चाहें तो QEMU में इसके साथ खेल सकते हैं।

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