Raspberry Pi: έχει BIOS;

Raspberry Pi BIOS

Μερικοί χρήστες αναρωτιέμαι αν το Raspberry Pi έχει BIOS ή UEFI, όπως και άλλοι υπολογιστές, αφού το UEFI, όπως γνωρίζετε, υποστηρίζεται και σε υπολογιστές βασισμένους σε Arm, όπως συμβαίνει με αυτό το SBC τόσο δημοφιλές και φθηνό. Αλλά η αλήθεια είναι ότι οι τύποι του βατόμουρου επέλεξαν μια άλλη εναλλακτική λύση.

Εδώ θα μάθετε ποια είναι αυτή η λύση και τους λόγους δεν χρησιμοποιεί αυτό το υλικολογισμικό, εκτός από το να σας δείχνει πώς γίνονται ορισμένες διαμορφώσεις στο Raspberry Pi όταν δεν υπάρχει μενού Setup όπως σε υπολογιστές...

Γιατί το Raspberry Pi δεν χρησιμοποιεί BIOS/UEFI;

Raspberry Pi 4

Όπως γνωρίζετε, το Το BIOS ή το UEFI είναι ένα υλικολογισμικό που υπάρχει σε ένα πλήθος υπολογιστών, τόσο επιτραπέζιους, φορητούς υπολογιστές, AIO, διακομιστές, σταθμούς εργασίας κ.λπ. Ωστόσο, δεν είναι στο Raspberry Pi, παρόλο που είναι SBC (Single Board Computer), σε αντίθεση με άλλα x86 SBC που χρησιμοποιούν αυτό το υλικολογισμικό για τη διαδικασία εκκίνησης και τον έλεγχο συστήματος. Και δεν είναι επειδή το Raspberry Pi βασίζεται σε ARM, καθώς πολλοί υπολογιστές ARM διαθέτουν επίσης BIOS/UEFI.

Από την άλλη πλευρά, πρέπει να πούμε ότι αυτό το υλικολογισμικό έχει σχεδιαστεί έτσι ώστε την εκκίνηση ευκολότερο από το μέσο αποθήκευσης όπου βρίσκεται το λειτουργικό σύστημα, εκτός από τη δυνατότητα ελέγχου πολλών άλλων ρυθμίσεων. Εδώ μας δίνει ενδείξεις για το γιατί το Raspberry Pi δεν χρησιμοποιεί το BIOS. Αφενός γιατί μπορεί να εκκινήσει συσκευές μόνο από το ίδιο μέσο, ​​όπως κάρτες SD, και όχι με άλλους τρόπους. Και από την άλλη επειδή ο αριθμός των περιφερειακών και των λειτουργιών σε ένα Raspberry Pi είναι πιο περιορισμένος.

Ωστόσο, αυτός δεν είναι εντελώς λόγος για να μην χρησιμοποιήσετε το BIOS ή το UEFI. Μάλιστα, αν αναλύσουμε προσεκτικά, το Το ARM SoC του Raspberry Pi χρησιμοποιεί το δικό του εσωτερικό υλικολογισμικό για να εκκινήσετε τη CPU σε σωστή κατάσταση και το υπόλοιπο σύστημα χωρίς να χρειάζεται ξεχωριστό τσιπ BIOS. Αλλά... τότε γιατί δεν μπορείτε να αποκτήσετε πρόσβαση στο μενού BIOS Setup ή BIOS; Αφενός, επειδή αυτό το υλικολογισμικό είναι πολύ περιορισμένο και όχι τόσο περίπλοκο όσο το BIOS/UEFI, έτσι ένα μενού για τη ρύθμιση παραμέτρων θα ήταν άνευ σημασίας και, αφετέρου, λόγω όσων αναφέρθηκαν προηγουμένως, ότι μπορεί να εκκινήσει μόνο από ένα προεπιλεγμένο μέσο αποθήκευσης. , όπως είναι η κάρτα SD.

Οι προγραμματιστές του Raspberry Pi προτίμησαν για αυτόν τον λόγο να χρησιμοποιήσουν αυτό το βασικό υλικολογισμικό για προετοιμασία και εκκίνηση από μια κάρτα SD αντί να χρησιμοποιούν ένα τσιπ rom με πιο περίπλοκο υλικολογισμικό εγκατεστημένο στο PCB. Και είναι ότι, αν κοιτάξετε, οι φορητές συσκευές δεν έχουν ούτε BIOS / UEFI, αφού μπορούν να εκκινήσουν μόνο το Android (ή άλλο λειτουργικό σύστημα), από εσωτερική μνήμη.

Με αυτόν τον τρόπο, αφενός αποθηκεύεται εκείνο το πρόσθετο τσιπ στην πλακέτα και, αφετέρου, εξαλείφεται η ανάγκη συμπερίληψης μνήμης flash για αποθήκευση. θα έκανε το Raspberry Pi πιο ακριβό. Πρέπει να αγοράσετε την κάρτα SD ξεχωριστά.

Ωστόσο, πρέπει να πούμε ότι στο Raspberry Pi 3 προστέθηκε πειραματική υποστήριξη για εκκίνηση από μέσα USB το οποίο πρέπει να είναι ρητά ενεργοποιημένο και δεν μπορεί να απενεργοποιηθεί. Αυτό περιλαμβάνεται στο ενσωματωμένο υλικολογισμικό του SoC της νέας έκδοσης, αλλά αυτό ήταν λίγο πιο περίπλοκο, γι' αυτό πιθανώς αποφάσισαν αρχικά να ξεκινήσουν με τα εύκολα πράγματα και να χρησιμοποιούν την εκκίνηση μόνο από κάρτες μνήμης SD.

Τι χρησιμοποιούσε το Raspberry Pi;

Rasbperry Pi 4 Ισχύς

Το Raspberry Pi δεν έχει BIOS ή UEFI όπως γίνεται κατανοητό στον κόσμο των υπολογιστών, για παράδειγμα, αλλά έχει υλικολογισμικό κλειστού κώδικα στο SoC όπως προανέφερα. Αυτό το τσιπ έχει σχεδιαστεί από την εταιρεία Broadcom, η οποία προμηθεύει τα BCM σε αυτές τις πλακέτες του Raspberry Pi Foundation.

Στην SoC (Σύστημα σε τσιπ) Ενσωματώνει CPU ARM Cortex-A Series, GPU VideoCore, DSP για επεξεργασία ψηφιακού σήματος, μνήμη SDRAM που μοιράζεται η CPU και η GPU και ελεγκτές όπως USB κ.λπ. Επιπλέον, περιλαμβάνει και μια μνήμη ROM στην οποία είναι ενσωματωμένο το firmware για το οποίο μιλάμε και αυτό είναι απαραίτητο για την εκκίνηση.

διαδικασία έναρξης

Ο βήματα που ακολουθεί αυτό το υλικολογισμικό είναι:

  1. Αυτό το υλικολογισμικό φροντίζει εκκίνηση του bootloader του λειτουργικού συστήματος που βρίσκεται στην κάρτα SD. Όπως γνωρίζετε, ο bootloader τοποθετεί το διαμέρισμα FAT32 της κάρτας μνήμης SD και πηγαίνει στο δεύτερο στάδιο εκκίνησης, το οποίο είναι προγραμματισμένο στο SoC και δεν μπορεί να τροποποιηθεί.
  2. Στο δεύτερο στάδιο, ένα αρχείο γνωστό ως bootcode.bin, στο οποίο προετοιμάζεται και ξεκινά το υλικολογισμικό της GPU. Αυτό το αρχείο μπορεί να αποθηκευτεί μόνο στην κάρτα SD, επομένως η προτεραιότητα εκκίνησης δεν μπορεί να αλλάξει όπως σε ένα συμβατικό BIOS/UEFI ενός υπολογιστή και θα εκκινήσει μόνο από εκεί. Ωστόσο, όπως είπα, στο Pi 3 προστέθηκε πειραματικά και η δυνατότητα εκκίνησης από USB.
  3. Στη συνέχεια ακολουθεί ένα τρίτο στάδιο στο οποίο γίνεται χρήση του αρχείου start.elf, το οποίο εκκινεί την CPU, και ένα αρχείο που ονομάζεται fixup.dat, το οποίο χρησιμοποιείται για τη δημιουργία του απαραίτητου διαμερίσματος στο SDRAM, ώστε να μπορεί να αρχίσει να χρησιμοποιείται από την CPU και την GPU.
  4. Τέλος, εκτελείται ο κωδικός χρήστη, που είναι συνήθως τα εκτελέσιμα δυαδικά αρχεία ή εικόνες του Πυρήνας Linux, όπως το kernel.img, ή από άλλα λειτουργικά συστήματα που υποστηρίζονται από το Raspberry Pi, και έτσι εκκινείται το λειτουργικό σύστημα, ώστε να μπορείτε να το χρησιμοποιήσετε...

Όπως είδατε, είναι μια απλή διαδικασία, αλλά κάπως περίεργη αν τη συγκρίνουμε με έναν υπολογιστή ή άλλους υπολογιστές. Και είναι ότι, στην περίπτωση του Raspberry Pi, αντί να ξεκινήσει η CPU, όπως σε άλλες περιπτώσεις, Η GPU ξεκινά πρώτα. Στην πραγματικότητα, αυτή η GPU της Broadcomo θα είναι υπεύθυνη για την εκτέλεση ενός είδους ενσωματωμένου λειτουργικού συστήματος στο SoC που είναι πολύ απλό, αλλά απαραίτητο για να λειτουργήσει. Είναι γνωστό ως VCOS (Video Core Operating System) και θα επικοινωνεί με το Linux. Αυτό είναι πολύ σπάνιο, αλλά η αλήθεια είναι ότι η GPU του Pi δεν είναι μόνο υπεύθυνη για τα γραφικά και την εκκίνηση, αλλά και για σύστημα ελέγχου ρολογιού και ήχου.

Κατ' αρχήν, αφού το είπαμε αυτό, φαίνεται ότι λίγα μπορούμε να κάνουμε τροποποιήστε τη διαμόρφωση εκκίνησηςΑλλά η αλήθεια είναι ότι δεν είναι εντελώς έτσι. Και είναι ότι υπάρχει ένα αρχείο που ονομάζεται config.txt που βρίσκεται στον κατάλογο /boot/ του συστήματος και αν ανοίξει με ένα πρόγραμμα επεξεργασίας κειμένου, το περιεχόμενό του μπορεί εύκολα να τροποποιηθεί για να αλλάξει η εκκίνηση και να ρυθμιστεί με ορισμένες παραμέτρους .

αυτό αρχείο config.txt θα διαβαστεί από τη GPU μετά την εκκίνηση του πυρήνα ARM και περιέχει οδηγίες για το SoC για να γνωρίζει τι πρέπει να κάνει κατά την εκκίνηση του συστήματος. Για παράδειγμα, μπορούμε να τροποποιήσουμε την αποκλειστική μνήμη σε αυτήν, την ανανέωση της μνήμης, να απενεργοποιήσουμε την πρόσβαση στην κρυφή μνήμη L2, να αλλάξουμε τη διαμόρφωση CMA, να ενεργοποιήσουμε ή να απενεργοποιήσουμε το LED της κάμερας, να αλλάξουμε επιλογές λειτουργίας βίντεο, κωδικοποιητές, εκκίνηση ορισμένων επιλογών, overclocking κ.λπ.

Αυτό το αρχείο έχει ένα σύνταξη είναι αρκετά περίεργο, επομένως πρέπει να τηρηθεί για να αποφευχθούν προβλήματα κατά την εκκίνηση. Και αν θέλετε περισσότερες πληροφορίες σχετικά με αυτό, μπορείτε διαβάστε το wiki που σας αφήνω σε αυτόν τον σύνδεσμο.

Αλλάξτε την προτεραιότητα εκκίνησης στο Raspberry Pi

NOOBS config.txt

Όταν αλλάζετε τη σειρά εκκίνησης ή την προτεραιότητα σε έναν υπολογιστή, όλα είναι πολύ απλά, απλά πρέπει να εισαγάγετε το BIOS/UEFI και στην καρτέλα Εκκίνηση μπορείτε να βρείτε τις παραμέτρους που μπορείτε να αλλάξετε κατά την εκκίνηση από τον σκληρό δίσκο, ένα οπτικό μέσο , USB, δίκτυο κ.λπ. Αντι αυτου, στο Raspberry Pi δεν είναι τόσο εύκολο. Από προεπιλογή, θα εκκινεί πάντα το λειτουργικό σύστημα από την κάρτα μνήμης SD που έχει τοποθετηθεί στο SBC. Στην πραγματικότητα, ακόμη και μετά την έκδοση 3, αν τοποθετηθεί και μια κάρτα SD και ένα USB stick, το σύστημα θα συνεχίσει να εκκινεί πρώτα από SD. Αν αφαιρεθεί το SD και μείνει μόνο το USB, τότε θα γίνει μέσω του USB.

Αλλά αυτή η σειρά μπορεί να αλλάξει. για αυτό πρέπει ξεκινήστε το raspbian, για παράδειγμα, και κάντε τα εξής:

  • Ανοίξτε τη ρύθμιση Raspberry Pi με την εντολή:
sudo raspi-config
  • Μεταβείτε στην ενότητα "Σύνθετες επιλογές". (σημείωση, το μενού είναι στα αγγλικά)
  • Στη συνέχεια, σε αυτήν την ενότητα, πατήστε ENTER στην επιλογή "Σειρά εκκίνησης".
  • Θα πρέπει τώρα να δείτε τρεις διαφορετικές επιλογές για να διαλέξετε:
    • Εκκίνηση κάρτας SD- Από προεπιλογή, αυτή η επιλογή είναι ήδη ενεργοποιημένη στη συσκευή σας Raspberry Pi και εάν τοποθετήσετε μια κάρτα SD και μια USB ταυτόχρονα, το σύστημα θα χρησιμοποιήσει την κάρτα SD ως προεπιλεγμένη επιλογή εκκίνησης, εκτός και αν την αφαιρέσετε.
    • μπότα usb: Εάν θέλετε να χρησιμοποιήσετε το USB ως κύρια συσκευή για την εκκίνηση, μπορείτε να ορίσετε αυτήν την επιλογή, η οποία λειτουργεί όταν έχετε τοποθετήσει μια συσκευή USB στο Raspberry Pi. Διαφορετικά, δεν θα πρέπει να τοποθετήσετε κάρτα SD για την εκκίνηση του συστήματος.
    • εκκίνηση δικτύου: Αυτή η επιλογή εκκίνησης είναι χρήσιμη εάν η κάρτα SD Raspberry Pi δεν λειτουργεί για κάποιο λόγο ή εάν υπάρχει πρόβλημα με το λειτουργικό σας σύστημα. Σε αυτήν την περίπτωση, θα χρησιμοποιήσει το εργαλείο Imager για να επανεγκαταστήσει το σύστημα στην κάρτα SD.

Μόλις τελειώσεις, μπορείς επανεκκινήστε το raspberry pi για να εφαρμόσετε τις αλλαγές...

Διάγνωση προβλημάτων Raspberry Pi (POST)

Τέλος, θα γνωρίζετε ότι σε ένα BIOS/UEFI υπάρχει ένα βήμα που ονομάζεται POST που πραγματοποιείται πριν από την εκκίνηση του λειτουργικού συστήματος και το οποίο θα ελέγχει την κατάσταση των διαφορετικών στοιχείων. Εάν όλα είναι εντάξει, θα ξεκινήσει το λειτουργικό σύστημα. Αλλά αν εντοπίσει κάποιο πρόβλημα, σταματά και εμφανίζει ένα μήνυμα σφάλματος στην οθόνη ή εκπέμπει έναν ηχητικό κωδικό για να εντοπίσει ποιο είναι το πρόβλημα.

Αυτό στο Raspberry Pi δεν υπάρχει ούτε αυτό. Ωστόσο, το υλικολογισμικό SoC έχει μια μέθοδο για να προσπαθήσει να επισημάνει προβλήματα που μπορεί να προκύψουν για εύκολη διάγνωση. Και αυτό μέσω του LED ισχύος του. Για παράδειγμα, για το Raspberry Pi 4, οι κωδικοί φωτός που εκπέμπει το LED για να υποδείξει προβλήματα είναι:

μακριές λάμψεις σύντομες αναλαμπές Κατάσταση
0 3 Γενική αποτυχία κατά την εκκίνηση
0 4 έναρξη*.το ξωτικό δεν βρέθηκε
0 7 Η εικόνα πυρήνα δεν βρέθηκε
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 Αναφλεξη τύπου Β

Γίνε ο πρώτος που θα σχολιάσει

Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.