Προστασία

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

Όρια πρόσβασης σε περιοχές της μνήμης

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

Πρόσβαση σε τύπους δεδομένων

Η συχνότερος διαχωρισμός είναι μεταξύ κώδικα και δεδομένων, αλλά έχουν υπάρξει αρχιτεκτονικές που υποστηρίζουν πλήρες σύστημα τύπων δεδομένων ανάλογο με αυτό των γλωσσών προγραμματισμού υψηλού επιπέδου. Στις αρχιτεκτονικές αυτές τα δεδομένα περιέχουν και ορισμένα bit που ορίζουν τον τύπο τους.

Επίπεδα προστασίας

Για την αποδοτική υλοποίηση λειτουργικών συστημάτων ορίζονται επίπεδα προστασίας. Τυπικά το επίπεδο προστασίας Ν έχει πρόσβαση στα δεδομένα και τον κώδικα των επιπέδων Μ όπου Μ > Ν αλλά όχι και το αντίστροφο. Ένα παράδειγμα χρήσης πολλαπλών επιπέδων προστασίας παρουσιάζεται στην παρακάτω εικόνα:

Η μετάβαση ανάμεσα σε επίπεδα προστασίας γίνεται μέσω παγίδων, διακοπών, ή ειδικών δομών δεδομένων (π.χ. call gates).

Έλεγχος εντολών

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