Besturingssysteem en hardware
Wat gebeurt er in het algemeen wanneer een programma een adres benadert dat het besturingssysteem niet heeft toegewezen?
- ADe CPU voegt automatisch nieuw fysiek geheugen toe voor dat adres
- BDe toegang wordt genegeerd en het programma gaat zonder problemen met de volgende instructie verder
- CEr treedt een paginafout op en het besturingssysteem beoordeelt dit als ongeldige toegang en stopt het programma
Antwoord en toelichting tonen
Antwoord: C. Er treedt een paginafout op en het besturingssysteem beoordeelt dit als ongeldige toegang en stopt het programma
Bij toegang tot een niet-toegewezen adres treedt een paginafout op omdat de paginatabel geen geldige ingang heeft. Het besturingssysteem onderzoekt of het adres tot het voor het proces toegestane bereik behoort, en als het een ongeldige toegang tot een nergens toegewezen adres is, meldt het een fout aan het programma en stopt het (de zogeheten segmentation fault). Zo wordt voorkomen dat een onjuiste pointer het geheugen van andere processen of van het besturingssysteem beschadigt. Fysiek geheugen groeit niet automatisch en de toegang wordt ook niet stilzwijgend genegeerd.