Δικτύωση

Γνώση Υπολογιστών >> Δικτύωση >  >> Η διεύθυνση IP

Πώς υπολογίζετε τη διεύθυνση τηλεειδοποίησης;

Ο υπολογισμός μιας διεύθυνσης τηλεειδοποίησης περιλαμβάνει τη μετάφραση μιας λογικής διεύθυνσης (τη διεύθυνση που χρησιμοποιείται από το πρόγραμμα) σε μια φυσική διεύθυνση (η διεύθυνση στην κύρια μνήμη). Αυτή η μετάφραση αντιμετωπίζεται από τη μονάδα διαχείρισης μνήμης (MMU). Η διαδικασία εξαρτάται από τις λεπτομέρειες του συστήματος τηλεειδοποίησης, αλλά τα γενικά βήματα είναι:

1. Διαχωρίστε τη λογική διεύθυνση σε μέρη:

Η λογική διεύθυνση χωρίζεται σε δύο μέρη:

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

* Offset Page (PO): Αυτό υποδεικνύει την μετατόπιση της σελίδας που αναφέρεται. Ο αριθμός των δυαδικών ψηφίων που χρησιμοποιούνται για την μετατόπιση της σελίδας καθορίζεται από το μέγεθος της σελίδας (π.χ. ένα μέγεθος σελίδας 4KB χρησιμοποιεί 12 bits για την μετατόπιση επειδή 2 12 =4096).

Παράδειγμα: Ας υποθέσουμε ότι έχουμε μια λογική διεύθυνση 32-bit και ένα μέγεθος σελίδας 4KB (2 12 bytes).

* Offset Page (PO): 12 bits (2 12 =4096 bytes)

* Αριθμός σελίδας (PN): 20 bits (32 - 12 =20 bits)

2. Συμβουλευτείτε τον πίνακα σελίδας:

Ο αριθμός σελίδας (PN) χρησιμοποιείται ως δείκτης στον πίνακα σελίδας. Ο πίνακας σελίδων είναι μια δομή δεδομένων που διατηρείται από το λειτουργικό σύστημα που χαρτογραφεί λογικές σελίδες σε φυσικά πλαίσια. Κάθε καταχώρηση στον πίνακα σελίδας περιέχει:

* Αριθμός πλαισίου (FN): Ο αριθμός του φυσικού πλαισίου στην κύρια μνήμη όπου βρίσκεται η αντίστοιχη σελίδα.

* έγκυρο/μη έγκυρο bit: Υποδεικνύει εάν η σελίδα είναι επί του παρόντος στην κύρια μνήμη (έγκυρη) ή όχι (μη έγκυρη - πιθανώς σε δευτερεύουσα αποθήκευση). Άλλες σημαίες μπορεί επίσης να υπάρχουν (π.χ. βρώμικο κομμάτι, bits προστασίας).

3. Κατασκευάστε τη φυσική διεύθυνση:

Εάν η καταχώρηση πίνακα σελίδων για το δεδομένο PN είναι έγκυρη, η φυσική διεύθυνση κατασκευάζεται με τη συγκόλληση του αριθμού πλαισίου (FN) και της μετατόπισης σελίδας (PO).

* Φυσική διεύθυνση =αριθμός πλαισίου (FN) || Μετατόπιση σελίδας (PO)

Παράδειγμα (συνέχεια):

Ας πούμε ότι η λογική διεύθυνση είναι `0x0000ffff`.

* PO: `0xffff` (12 bits)

* pn: `0x0000` (20 bits)

Το MMU χρησιμοποιεί PN (`0x0000`) για να αναζητήσει την αντίστοιχη καταχώρηση στον πίνακα σελίδας. Ας υποθέσουμε ότι η καταχώρηση πίνακα σελίδας για PN `0x0000` περιέχει:

* fn: `0x1000` (αυτός είναι ο αριθμός πλαισίου στη φυσική μνήμη)

* έγκυρο bit: 1 (έγκυρη)

Επομένως, η φυσική διεύθυνση είναι:

* Φυσική διεύθυνση =`0x1000ffff`

Πολλαπλασιαστική σελίδα:

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

κατάτμηση:

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

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

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

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