Raspberry Pi: هل يحتوي على BIOS؟

راسبيري باي بيوس

بعض المستخدمين أتساءل عما إذا كان Raspberry Pi يحتوي على BIOS أو UEFI، مثل أجهزة الكمبيوتر الأخرى ، نظرًا لأن UEFI ، كما تعلم ، مدعوم أيضًا على أجهزة الكمبيوتر القائمة على Arm ، كما هو الحال مع هذا SBC شعبية جدا ورخيصة. لكن الحقيقة هي أن شباب التوت اختاروا حلاً بديلاً آخر.

هنا سوف تتعلم ماهية هذا الحل وأسباب ذلك لا تستخدم هذه البرامج الثابتة، بالإضافة إلى توضيح كيفية إجراء بعض التكوينات على Raspberry Pi عند عدم وجود قائمة الإعداد كما هو الحال في أجهزة الكمبيوتر ...

لماذا لا يستخدم Raspberry Pi BIOS / UEFI؟

التوت بي 4

كما تعلم ، فإن BIOS أو UEFI هو برنامج ثابت موجود في العديد من أجهزة الكمبيوتر ، سواء أجهزة كمبيوتر سطح المكتب أو أجهزة الكمبيوتر المحمولة أو AIO أو الخوادم ومحطات العمل وما إلى ذلك. ومع ذلك ، فهو ليس موجودًا على Raspberry Pi ، على الرغم من كونه SBC (كمبيوتر لوحة واحدة) ، على عكس وحدات SBC الأخرى x86 التي تستخدم هذه البرامج الثابتة لعملية التمهيد وفحص النظام. وهذا ليس لأن Raspberry Pi قائم على ARM ، حيث أن العديد من أجهزة كمبيوتر ARM تحتوي أيضًا على BIOS / UEFI.

من ناحية أخرى ، يجب القول أن هذه البرامج الثابتة مصممة بحيث الحذاء أسهل من وسيط التخزين حيث يوجد نظام التشغيل ، بالإضافة إلى القدرة على التحكم في العديد من الإعدادات الأخرى. هذا هو المكان الذي يقدم لنا أدلة حول سبب عدم استخدام Raspberry Pi لـ BIOS. من ناحية أخرى ، لأنه يمكنه فقط تشغيل الأجهزة من نفس الوسيط ، مثل بطاقات SD ، وليس بطرق أخرى. ومن ناحية أخرى ، لأن عدد الأجهزة الطرفية والوظائف في Raspberry Pi محدودة للغاية.

ومع ذلك ، هذا ليس سببًا تمامًا لعدم استخدام BIOS أو UEFI. في الواقع ، إذا قمنا بالتحليل بعناية ، فإن يستخدم ARM SoC الخاص بـ Raspberry Pi البرامج الثابتة الداخلية الخاصة به لتشغيل وحدة المعالجة المركزية في الحالة المناسبة وباقي النظام دون الحاجة إلى شريحة BIOS منفصلة. ولكن ... إذن لماذا لا يمكنك الوصول إلى إعداد BIOS أو قائمة BIOS؟ من ناحية أخرى ، نظرًا لأن هذه البرامج الثابتة محدودة جدًا وليست معقدة مثل BIOS / UEFI ، لذا فإن قائمة تكوين المعلمات ستكون بلا معنى ، ومن ناحية أخرى ، بسبب ما تم ذكره سابقًا ، يمكنها التمهيد فقط من وسيط تخزين افتراضي ، وكذلك بطاقة SD.

لهذا السبب فضل مطورو Raspberry Pi استخدام هذا البرنامج الثابت الأساسي للتهيئة والتمهيد من بطاقة SD بدلاً من الاستخدام شريحة rom مع البرامج الثابتة الأكثر تعقيدًا المثبتة على PCB. وهذا يعني ، إذا نظرت ، أن الأجهزة المحمولة لا تحتوي على BIOS / UEFI أيضًا ، حيث يمكنها فقط تشغيل Android (أو نظام تشغيل آخر) ، من الذاكرة الداخلية.

بهذه الطريقة ، من ناحية ، يتم حفظ تلك الشريحة الإضافية على اللوحة ، ومن ناحية أخرى ، يتم أيضًا التخلص من الحاجة إلى تضمين ذاكرة فلاش للتخزين. سيجعل Raspberry Pi أغلى ثمناً. يجب عليك شراء بطاقة SD بشكل منفصل.

ومع ذلك ، يجب أن يقال أنه في Raspberry Pi 3 تمت إضافة الدعم التجريبي لـ التمهيد من وسائط USB التي يجب تمكينها بشكل صريح ولا يمكن تعطيلها. تم تضمين هذا في البرامج الثابتة المضمنة في الإصدار الجديد من SoC ، ولكن هذا كان أكثر تعقيدًا بعض الشيء ، وربما كان هذا هو السبب في أنهم قرروا في البداية البدء بالأشياء السهلة واستخدام التمهيد من بطاقات ذاكرة SD فقط.

ماذا كان Raspberry Pi يستخدم بدلاً من ذلك؟

رازبيري باي 4 باور

لا يحتوي Raspberry Pi على BIOS أو UEFI كما هو مفهوم في عالم الكمبيوتر ، على سبيل المثال ، ولكنه يحتوي على البرامج الثابتة ذات المصدر المغلق في SoC كما ذكرت أعلاه. تم تصميم هذه الشريحة من قبل شركة Broadcom ، التي تزود لوحات مؤسسة Raspberry Pi Foundation بوحدات BCMs.

في SoC (نظام على شريحة) إنه يدمج وحدة المعالجة المركزية ARM Cortex-A Series ، و VideoCore GPU ، و DSP لمعالجة الإشارات الرقمية ، وذاكرة SDRAM المشتركة بين وحدة المعالجة المركزية ووحدة معالجة الرسومات ، ووحدات التحكم مثل USB ، إلخ. بالإضافة إلى ذلك ، يتضمن أيضًا ذاكرة ROM يتم فيها دمج البرامج الثابتة التي نتحدث عنها وهذا ضروري للتمهيد.

بدء الإجراء

الكثير خطوات التي تتبع هذه البرامج الثابتة هي:

  1. هذا البرنامج الثابت يعتني بدء محمل الإقلاع لنظام التشغيل الموجود على بطاقة SD. كما تعلم ، يقوم برنامج bootloader بتثبيت قسم FAT32 لبطاقة ذاكرة SD وينتقل إلى مرحلة التمهيد الثانية ، والتي تمت برمجتها في SoC ولا يمكن تعديلها.
  2. في المرحلة الثانية ، ملف يعرف باسم bootcode.bin، حيث يتم إعداد وتشغيل برنامج GPU الثابت. لا يمكن تخزين هذا الملف إلا على بطاقة SD ، لذلك لا يمكن تغيير أولوية التمهيد كما هو الحال في BIOS / UEFI التقليدي لجهاز الكمبيوتر ، وسيتم التمهيد من هناك فقط. ومع ذلك ، كما قلت ، تمت إضافة القدرة على التمهيد من USB بشكل تجريبي إلى Pi 3.
  3. ثم تأتي المرحلة الثالثة التي يتم فيها استخدام ملف start.elf ، والذي يبدأ تشغيل وحدة المعالجة المركزية ، وملف يسمى fixup.dat ، والذي يستخدم لإنشاء القسم الضروري في SDRAM بحيث يمكن البدء في استخدامه بواسطة وحدة المعالجة المركزية ووحدة معالجة الرسومات.
  4. أخيرًا ، يتم تنفيذ كود المستخدم ، والذي عادة ما يكون عبارة عن ثنائيات قابلة للتنفيذ أو صور لملف نواة لينكس، مثل kernel.img ، أو من أنظمة التشغيل الأخرى التي يدعمها Raspberry Pi ، وهذه هي الطريقة التي يتم بها تشغيل نظام التشغيل حتى تتمكن من استخدامه ...

كما رأيت ، إنها عملية بسيطة ، لكنها غريبة إلى حد ما إذا قارناها بجهاز كمبيوتر أو أجهزة كمبيوتر أخرى. وفي حالة Raspberry Pi ، بدلاً من بدء تشغيل وحدة المعالجة المركزية ، كما هو الحال في حالات أخرى ، يقوم GPU بالتمهيد أولاً. في الواقع ، ستكون وحدة معالجة الرسومات Broadcomo هذه مسؤولة عن تنفيذ نوع من أنظمة التشغيل المضمنة في SoC بسيطة للغاية ولكنها ضرورية للعمل. يُعرف باسم VCOS (نظام تشغيل الفيديو الأساسي) ، وسيتواصل مع Linux. هذا نادر جدًا ، لكن الحقيقة هي أن وحدة معالجة الرسومات لـ Pi ليست مسؤولة فقط عن الرسومات والبدء ، بل هي أيضًا مسؤولة عن نظام التحكم على مدار الساعة والصوت.

من حيث المبدأ ، بعد قولي هذا ، يبدو أنه لا يوجد الكثير مما يمكننا القيام به تعديل تكوين التمهيدلكن الحقيقة هي أن الأمر ليس كذلك تمامًا. وهو أن هناك ملفًا يسمى config.txt موجودًا في الدليل / boot / للنظام وإذا تم فتحه باستخدام محرر نصوص ، فيمكن تعديل محتواه بسهولة لتغيير التمهيد وتكوينه بمعلمات معينة .

هذا config.txt ستقرأه وحدة معالجة الرسومات بعد بدء نواة ARM ، وتحتوي على تعليمات لشركة نفط الجنوب لمعرفة ما يجب القيام به أثناء تمهيد النظام. على سبيل المثال ، يمكننا تعديل الذاكرة المخصصة فيها ، وتحديث الذاكرة ، وتعطيل الوصول إلى ذاكرة التخزين المؤقت L2 ، وتغيير تكوين CMA ، وتمكين أو تعطيل مؤشر LED للكاميرا ، وتغيير خيارات وضع الفيديو ، وبرامج الترميز ، وبعض خيارات التمهيد ، ورفع تردد التشغيل ، وما إلى ذلك.

يحتوي هذا الملف على ملف بناء الجملة غريبة تمامًا ، لذلك يجب احترامها لتجنب حدوث مشاكل عند بدء التشغيل. وإذا كنت تريد المزيد من المعلومات حول هذا الموضوع ، فيمكنك ذلك اقرأ الويكي الذي أتركه لكم في هذا الرابط.

قم بتغيير أولوية التمهيد على Raspberry Pi

نوبس التكوين.txt

عندما تقوم بتغيير ترتيب التمهيد أو الأولوية على جهاز كمبيوتر ، يكون الأمر بسيطًا للغاية ، ما عليك سوى إدخال BIOS / UEFI ، وفي علامة التبويب Boot ، يمكنك العثور على المعلمات التي يمكنك تغييرها للتمهيد من القرص الثابت ، وهو وسيط بصري ، USB ، شبكة ، إلخ. بدلاً من، على Raspberry Pi ليس الأمر بهذه السهولة. بشكل افتراضي ، سيقوم دائمًا بتمهيد نظام التشغيل من بطاقة ذاكرة SD المُدرجة في SBC. في الواقع ، حتى بعد الإصدار 3 ، إذا تم إدخال كل من بطاقة SD و USB ، فسيستمر النظام في التمهيد من SD أولاً. إذا تمت إزالة SD وبقي USB فقط ، فسيتم ذلك من خلال USB.

لكن هذا الترتيب يمكن تغييره. لذلك يجب عليك ابدأ raspbian، على سبيل المثال ، وقم بما يلي:

  • افتح إعداد Raspberry Pi باستخدام الأمر:
سودو raspi-config
  • انتقل إلى قسم "الخيارات المتقدمة". (ملاحظة ، القائمة باللغة الإنجليزية)
  • ثم ، في هذا القسم ، اضغط على ENTER في خيار "Boot Order" (ترتيب التمهيد).
  • يجب أن تشاهد الآن ثلاثة خيارات مختلفة للاختيار من بينها:
    • التمهيد بطاقة SD- افتراضيًا ، يتم تمكين هذا الخيار بالفعل على جهاز Raspberry Pi الخاص بك وإذا قمت بإدخال بطاقة SD و USB في نفس الوقت ، فسيستخدم النظام بطاقة SD كخيار تمهيد افتراضي ما لم تقم بإزالتها.
    • التمهيد USB: إذا كنت تريد استخدام USB كجهاز أساسي للتمهيد ، فيمكنك تحديد هذا الخيار ، والذي يعمل عندما يكون لديك جهاز USB مُدرج في Raspberry Pi. خلاف ذلك ، يجب ألا تدخل بطاقة SD لتشغيل النظام.
    • التمهيد الشبكة: يعد خيار التمهيد هذا مفيدًا إذا كانت بطاقة Raspberry Pi SD الخاصة بك لا تعمل لسبب ما أو إذا كانت هناك مشكلة في نظام التشغيل الخاص بك. في هذه الحالة ، ستستفيد من أداة التصوير لإعادة تثبيت النظام على بطاقة SD.

بمجرد الانتهاء ، يمكنك ذلك أعد تشغيل raspberry pi لتطبيق التغييرات ...

تشخيص مشاكل Raspberry Pi (POST)

أخيرًا ، ستعرف أنه في BIOS / UEFI هناك خطوة تسمى POST يتم تنفيذها قبل بدء تشغيل نظام التشغيل والتي ستتحقق من حالة المكونات المختلفة. إذا كان كل شيء على ما يرام ، فسيبدأ نظام التشغيل. ولكن إذا اكتشف أي مشكلة ، فإنه يتوقف ويعرض رسالة خطأ على الشاشة أو يصدر بعض رموز الطنين المسموعة لتحديد المشكلة.

هذا على Raspberry Pi غير موجود أيضًا. ومع ذلك ، فإن البرنامج الثابت SoC لديه طريقة لمحاولة الإبلاغ عن المشكلات التي قد تحدث لتسهيل التشخيص. وذلك من خلال مصباح LED للطاقة. على سبيل المثال ، بالنسبة إلى Raspberry Pi 4 ، فإن رموز الضوء التي يصدرها مؤشر LED للإشارة إلى المشكلات هي:

ومضات طويلة ومضات قصيرة الحالة
0 3 فشل عام أثناء بدء التشغيل
0 4 بدء * .elf غير موجود
0 7 لم يتم العثور على صورة Kernel
0 8 فشل SDRAM
0 9 SDRAM غير كافية
0 10 في حالة HALT
2 1 القسم ليس FAT (غير مدعوم)
2 2 فشل في قراءة القسم
2 3 قسم موسع غير FAT
2 4 الهاش أو التوقيع لا يتطابقان
3 1 خطأ SPI-EEPROM
3 2 حماية ضد الكتابة SPI EEPROM
3 3 خطأ I2C
4 4 نوع اللوحة غير مدعوم
4 5 خطأ فادح في البرامج الثابتة
4 6 اكتب A Misfire
4 7 اكتب ب خطأ

كن أول من يعلق

اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.