logo

Paginación en OS (Sistema Operativo)

En los sistemas operativos, la paginación es un mecanismo de almacenamiento que se utiliza para recuperar procesos del almacenamiento secundario a la memoria principal en forma de páginas.

La idea principal detrás de la paginación es dividir cada proceso en forma de páginas. La memoria principal también estará dividida en forma de fotogramas.

prueba la estructura de datos

Una página del proceso se almacenará en uno de los marcos de la memoria. Las páginas se pueden almacenar en las diferentes ubicaciones de la memoria pero la prioridad siempre es encontrar los marcos o huecos contiguos.

Las páginas del proceso se llevan a la memoria principal sólo cuando son necesarias; de lo contrario, residen en el almacenamiento secundario.

Diferentes sistemas operativos definen diferentes tamaños de marco. Los tamaños de cada cuadro deben ser iguales. Teniendo en cuenta el hecho de que las páginas están asignadas a los marcos en Paging, el tamaño de la página debe ser igual al tamaño del marco.

teoría de árboles y grafos

Paginación del sistema operativo

Ejemplo

Consideremos que el tamaño de la memoria principal es de 16 Kb y el tamaño del cuadro es de 1 KB, por lo tanto, la memoria principal se dividirá en una colección de 16 cuadros de 1 KB cada uno.

Hay 4 procesos en el sistema que son P1, P2, P3 y P4 de 4 KB cada uno. Cada proceso se divide en páginas de 1 KB cada una para que se pueda almacenar una página en un marco.

Inicialmente, todos los marcos están vacíos, por lo que las páginas de los procesos se almacenarán de forma contigua.

Los marcos, las páginas y el mapeo entre los dos se muestran en la imagen a continuación.


Ejemplo de paginación del sistema operativo

Consideremos que P2 y P4 pasan al estado de espera después de un tiempo. Ahora, 8 cuadros quedan vacíos y por lo tanto se pueden cargar otras páginas en ese lugar vacío. El proceso P5 de tamaño 8 KB (8 páginas) está esperando dentro de la cola de listo.

Dado que tenemos 8 fotogramas no contiguos disponibles en la memoria y la paginación proporciona la flexibilidad de almacenar el proceso en diferentes lugares. Por lo tanto, podemos cargar las páginas del proceso P5 en lugar de P2 y P4.

creación de tabla de oráculo

Ejemplo 2 de paginación del sistema operativo

Unidad de gestión de memoria

El propósito de la Unidad de administración de memoria (MMU) es convertir la dirección lógica en dirección física. La dirección lógica es la dirección generada por la CPU para cada página, mientras que la dirección física es la dirección real del marco donde se almacenará cada página.

Cuando la CPU debe acceder a una página utilizando la dirección lógica, el sistema operativo necesita obtener la dirección física para acceder físicamente a esa página.

La dirección lógica tiene dos partes.

  1. Número de página
  2. Compensar

La unidad de administración de memoria del sistema operativo necesita convertir el número de página al número de fotograma.

Ejemplo

decodificación js base64

Teniendo en cuenta la imagen de arriba, digamos que la CPU exige la décima palabra de la cuarta página del proceso P3. Dado que la página número 4 del proceso P1 se almacena en el cuadro número 9, la décima palabra del noveno cuadro se devolverá como dirección física.