Υλικό υπολογιστών

Γνώση Υπολογιστών >> Υλικό υπολογιστών >  >> BIOS

Ποια είναι τα διαφορετικά βήματα για να καλέσετε τη λειτουργία ROM BIOS;

Η επικάλυψη μιας συνάρτησης BIOS ROM περιλαμβάνει διάφορα βήματα και οι ακριβείς λεπτομέρειες εξαρτώνται από τη συγκεκριμένη λειτουργία και την αρχιτεκτονική του επεξεργαστή (κυρίως x86/x64 συζητείται εδώ, καθώς εκεί είναι οι πιο συνηθισμένες κλήσεις BIOS). Γενικά, η διαδικασία περιλαμβάνει:

1. Προσδιορισμός της συνάρτησης: Κάθε συνάρτηση BIOS έχει έναν μοναδικό αριθμό (δεκαεξαδική τιμή). Πρέπει να γνωρίζετε αυτόν τον αριθμό για να καλέσετε τη σωστή λειτουργία. Ο πίνακας διανυσματικών διανυσμάτων BIOS (συνήθως στη διεύθυνση 0x400 σε πραγματική λειτουργία) περιέχει διευθύνσεις για διαφορετικές υπηρεσίες BIOS, αλλά συνήθως χρησιμοποιείτε άμεσα τον αριθμό διακοπής.

2. Προετοιμασία των παραμέτρων (επιχειρήματα): Πολλές λειτουργίες BIOS απαιτούν παραμέτρους εισόδου. Αυτές οι παράμετροι περνούν μέσω καταχωρητών (όπως `ax`,` bx`, `cx`,` dx`, κλπ.) Ή σε θέσεις μνήμης. Οι ακριβείς καταχωρητές και οι θέσεις μνήμης που χρησιμοποιούνται εξαρτώνται από τη συγκεκριμένη λειτουργία. Θα χρειαστεί να συμβουλευτείτε την προδιαγραφή ή την τεκμηρίωση του BIOS για να κατανοήσετε ποιες παράμετροι απαιτούνται και πώς να τις περάσετε.

3. Ρύθμιση της διακοπής: Ο πρωταρχικός μηχανισμός για την επίκληση των λειτουργιών του BIOS είναι μέσω διακοπών λογισμικού (INT). Ο ειδικός αριθμός διακοπής που χρησιμοποιείται είναι συνήθως `0x10` (για υπηρεσίες βίντεο),` 0x13` (για υπηρεσίες δίσκου), `0x16` (για σειριακές υπηρεσίες λιμένων) κλπ. Κάθε διακόπτης σημείων σε έναν χειριστή διακοπής BIOS. Ο αριθμός λειτουργίας περνά συνήθως στο μητρώο `ah`.

4. Εκτέλεση της εντολής διακοπής: Η εντολή `int ` χρησιμοποιείται για την ενεργοποίηση της διακοπής. Αυτό αναγκάζει τον επεξεργαστή να μεταβεί στον κώδικα του BIOS διακόπτη.

5. Χειρισμός των τιμών επιστροφής: Μετά την επιτυχή εκτέλεση, η λειτουργία BIOS επιστρέφει συνήθως αποτελέσματα σε καταχωρητές ή θέσεις μνήμης που καθορίζονται στην τεκμηρίωση. Πρέπει να εξετάσετε αυτές τις τοποθεσίες για να λάβετε την έξοδο από τη λειτουργία. Οι συνθήκες σφάλματος συχνά υποδεικνύονται από συγκεκριμένους κωδικούς επιστροφής ή σημαίες.

Παράδειγμα (συναρμολόγηση x86 - Ρύθμιση της λειτουργίας βίντεο):

Ας υποθέσουμε ότι θέλουμε να ορίσουμε τη λειτουργία βίντεο σε λειτουργία κειμένου 80x25 (λειτουργία 3). Αυτή είναι μια συνηθισμένη συνάρτηση βιντεοπαιχνιδιών.

`` `Συνέλευση

; Ορίστε τη λειτουργία βίντεο σε λειτουργία 80x25 κειμένου (λειτουργία 3)

mov ah, 0x00; Αριθμός λειτουργίας για τη ρύθμιση της λειτουργίας βίντεο

MOV AL, 0x03; Λειτουργία βίντεο 3 (κείμενο 80x25)

int 0x10; Καλέστε τη διακοπή του βίντεο BIOS

`` `

Σημαντικές εκτιμήσεις:

* Πραγματική λειτουργία έναντι προστατευμένης λειτουργίας: Οι κλήσεις BIOS λειτουργούν γενικά σε πραγματικό τρόπο (διευθύνσεις 16-bit). Σε προστατευμένη λειτουργία (που χρησιμοποιείται από τα σύγχρονα λειτουργικά συστήματα), η πρόσβαση στο BIOS άμεσα γίνεται μέσω μιας διασύνδεσης προστατευμένης λειτουργίας που παρέχεται από το λειτουργικό σύστημα ή μέσω ειδικής διασύνδεσης κλήσης BIOS. Η άμεση πρόσβαση από την προστατευόμενη λειτουργία συχνά αποθαρρύνεται λόγω ανησυχιών για την ασφάλεια και τη σταθερότητα.

* Παραλλαγές BIOS: Οι υλοποιήσεις του BIOS ποικίλλουν ελαφρώς σε διαφορετικούς κατασκευαστές. Οι αριθμοί λειτουργιών και οι συμβάσεις που περνούν παραμέτρους ενδέχεται να έχουν μικρές διαφορές. Αναφέρετε πάντα την τεκμηρίωση του BIOS του συστήματός σας.

* Τεχνολογία κληρονομιάς: Οι άμεσες κλήσεις BIOS γίνονται όλο και πιο σπάνιες στο σύγχρονο προγραμματισμό, καθώς τα λειτουργικά συστήματα διαχειρίζονται τώρα τους πόρους υλικού πιο αποτελεσματικά. Ωστόσο, η κατανόηση του τρόπου λειτουργίας των κλήσεων BIOS μπορεί να εξακολουθεί να είναι σχετική για τον προγραμματισμό χαμηλού επιπέδου, την αντίστροφη μηχανική ή τη συνεργασία με πολύ παλιά συστήματα.

Συνοπτικά, η επίκληση μιας συνάρτησης BIOS ROM απαιτεί τη γνώση του αριθμού της λειτουργίας, την προετοιμασία των απαραίτητων παραμέτρων, την εκτέλεση της κατάλληλης εντολής διακοπής και την σωστή ερμηνεία των αποτελεσμάτων. Οι λεπτομέρειες είναι ιδιαίτερα συγκεκριμένες για την εν λόγω λειτουργία. Η διαβούλευση της προδιαγραφής του BIOS για το σύστημά σας είναι απαραίτητη.

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα