Κεφάλαιο 4 | Ενότητα 4 | Ερωτήσεις επισκόπησης | Προηγούμενο | Επόμενο| Λεξικό όρων

Η προστασία των διεργασιών

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

Βάση διεύθυνση Όριο

Σε μερικά συστήματα η διεύθυνση θεωρείται ως ένας μη προσημασμένος αριθμός, ο οποίος προστίθεται πάντα στη βάση, οπότε:

(Βάση + διεύθυνση) Όριο

Οι διεργασίες χρήστη δεν είναι ελεύθερες να αλλάζουν τη βάση και το όριο. Το λειτουργικό σύστημα, ωστόσο, έχει αυτή τη δυνατότητα να μπορεί να εναλλάσσει τις διεργασίες. Επομένως ο σχεδιαστής του υπολογιστή για να προστατέψει τις διεργασίες, πρέπει να παρέχει ορισμένες προϋποθέσεις στο σχεδιαστή του λειτουργικού συστήματος:

  1. Να παρέχει δύο καταστάσεις, οι οποίες υποδεικνύουν αν η τρέχουσα διεργασία είναι μια διεργασία χρήστη ή μια διεργασία του λειτουργικού συστήματος (κελύφους ή επόπτη).
  2. Να παρέχει ένα τμήμα της κατάστασης της KME, το οποίο μια διεργασία να μπορεί να χρησιμοποιήσει αλλά όχι να γράψει. Αυτό συμπεριλαμβάνει τους καταχωρητές βάσης-ορίου, το δυαδικό ψηφίο κατάστασης χρήστη-επόπτη και το ψηφίο ενεργοποίησης-απενεργοποίησης εξαιρέσεων.
  3. Να παρέχουν μηχανισμούς, σύμφωνα με τους οποίους η KME να μπορεί να μεταβαίνει από την κατάσταση χρήστη στην κατάσταση επόπτη και αντίστροφα.

Eνώ η βάση και το όριο συνιστούν το ελάχιστο σύστημα προστασίας, η ιδεατή μνήμη προσφέρει μια καλύτερη λύση. Όπως έχουμε αναφέρει, οι διευθύνσεις περνούν μέσω μιας απεικόνισης από την ιδεατή στη φυσική μορφή τους. Σύμφωνα με αυτή την τεχνική, κάθε διεργασία διαθέτει ένα πίνακα σελίδων, ο οποίος απεικονίζει τις διακριτές σελίδες στη μνήμη που μπορεί να προσπελάσει . Αυτή η προσέγγιση μπορεί να παρέχει προστασία χρήστη-επόπτη και ανάγνωσης-εγγραφής, απλά χρησιμοποιώντας σημαίες επίτρεψης σε κάθε σελίδα στη μνήμη. Σε περίπτωση που το υλικό ανιχνεύσει μη εξουσιοδοτημένες προσβάσεις στη μνήμη διακόπτει τη λειτουργία της ΚΜΕ και καλεί το λειτουργικό σύστημα πριν προκαλέσουν δυσλειτουργία. Προφανώς τα προγράμματα χρήστη δεν μπορούν να τροποποιήσουν τους πίνακες σελίδων τους.

Η προστασία χρήστη-επόπτη μπορεί να κλιμακωθεί σε περισσότερα επίπεδα, ανάλογα με την ανησυχία του σχεδιαστή. Παράδειγμα αποτελεί η δομή προστασίας με δακτυλίους, που ακολουθείται από τον Intel Pentium. Στους εσωτερικούς δακτυλίους έχουν πρόσβαση μόνο εξουσιοδοτημένα άτομα, και όσο πιο εσωτερικός είναι ένας δακτύλιος τόσο πιο μεγάλη εξουσιοδότηση απαιτείται.

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

ΔΡΑΣΤΗΡΙΟΤΗΤΑ 5

Να εξηγήσετε με ποιον τρόπο παρέχεται προστασία των διεργασιών με τη χρήση της ιδεατής μνήμης.

ΑΠΑΝΤΗΣΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑΣ 5