Manejo de fallas de página en el sistema operativo

Una falla de página ocurre cuando un programa intenta acceder a datos o códigos que están en su espacio de direcciones, pero que actualmente no están ubicados en la RAM del sistema. Entonces, cuando ocurre una falla de página, ocurre la siguiente secuencia de eventos:

  • El hardware de la computadora se conecta al núcleo y el contador del programa (PC) se guarda en la pila. La información del estado de la instrucción actual se guarda en los registros de la CPU.
  • Se inicia un programa ensamblador para guardar los registros generales y otra información volátil para evitar que el sistema operativo la destruya.
  • El sistema operativo detecta que se ha producido un error de página e intenta averiguar qué página virtual se necesita. Algunas veces el registro de hardware contiene esta información requerida. De lo contrario, el sistema operativo debe recuperar la PC, obtener instrucciones y averiguar qué estaba haciendo cuando ocurrió la falla.
  • Una vez que se conoce la falla de la página causada por la dirección virtual, el sistema verifica si la dirección es válida y verifica si no hay ningún problema de acceso a la protección.
  • Si la dirección virtual es válida, el sistema comprueba si hay un marco de página libre. Si no hay marcos libres, se ejecuta el algoritmo de reemplazo de página para eliminar una página.
  • Si el marco seleccionado está sucio, la página está programada para transferirse al disco, se produce un cambio de contexto, se suspende el proceso de error y se ejecuta otro proceso hasta que se complete la transferencia del disco.
  • Tan pronto como el marco de la página está limpio, el sistema operativo busca la dirección del disco donde está la página necesaria, programa la operación del disco para traerla.
  • Cuando la interrupción del disco indica que ha llegado una página, las tablas de páginas se actualizan para reflejar su posición y el marco se marca como si estuviera en estado normal.
  • Se realiza una copia de seguridad de la instrucción que falla para que tenga el estado que tenía cuando comenzó y se reinicia la PC. La falla está programada, el sistema operativo vuelve a la rutina que lo llamó.
  • La rutina de ensamblaje recarga el registro y otra información de estado, regresa al espacio del usuario para continuar con la ejecución.

Referencias –
cs.uttyler.edu
professormerwyn.wordpress.com

Este artículo es una contribución de Swasthik . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *