¿Cuál es la diferencia entre la partición y las técnicas de intercambio?


Respuesta 1:

Son cosas completamente diferentes.

Una partición es un área del disco que se reserva como un bloque independiente y se define en la tabla de particiones. Se le puede asignar un tipo y formatear con un sistema de archivos en blanco de ese tipo. Luego se puede usar, por ejemplo, como E: o F: en Windows si está formateado FAT o NTFS, o / o / home o / usr, etc. si se usa en Linux o Unix y formateado con cualquiera de los muchos formatos disponibles para esos sistemas operativos

El intercambio consiste en expulsar todo o parte de un programa y sus datos de la RAM al almacenamiento de respaldo, generalmente en el disco duro, para permitir que otros programas se ejecuten, cuando un sistema operativo multitarea necesita más RAM para contener su "conjunto de trabajo" de programas y datos que están físicamente disponibles. Esto requiere un archivo de intercambio o una partición de intercambio. Se prefiere la partición ya que se necesitan menos cálculos en el proceso de intercambio, que por lo tanto es más rápido.

Los primeros sistemas Unix eran sistemas de intercambio. Todo el proceso que actualmente tenía la prioridad más baja se copió al disco y, por supuesto, se volvió a copiar cuando llegó el momento de ejecutar. Dado que el kernel de Unix V7 tenía aproximadamente 62k (¡sí k, no M!) Y la memoria podría ser de 256k, 4 usuarios en terminales seriales podrían generar una carga computacional que haría que el kernel de Unix pasara la mayor parte de su tiempo intercambiando programas dentro y fuera , dejando poco tiempo para que ninguno de ellos logre mucho. Esta situación se conoce como paliza, y cuando sucede no es buena.

La memoria paginada por demanda llegó con el VAX, el chip NS32032 desaparecido hace mucho tiempo y el 386. Esto requiere que las instrucciones de la CPU sean reiniciables, de modo que si la ejecución de una instrucción en particular desencadena la necesidad de un cambio de página, es posible continuar después. Solo se intercambian páginas (normalmente 4k), y la Unidad de administración de memoria (MMU) realiza un seguimiento de lo que está dónde, y genera una interrupción a la CPU cada vez que se accede a una página que actualmente no está en la RAM para que se pueda intercambiar. es mucho más eficiente, porque un programa que está haciendo un trabajo pesado podría estar accediendo solo a unas pocas páginas por un tiempo, y todo lo demás puede intercambiarse sin afectar su rendimiento. De hecho, cuando se inicia un programa, las páginas no se intercambiarán hasta que sean necesarias. Si el programa detecta una condición que hace que termine su trabajo y salga en la primera página de código, el resto nunca tendrá que cargarse.

Eso es algo simplificado para que sea simple, pero el intercambio, y la versión mucho más refinada, la paginación de demanda, se ocupa de la gestión de la memoria y la ejecución del programa, mientras que la partición se trata de asignar (generalmente) bloques fijos de almacenamiento de respaldo. Pero puede usar una partición, o menos eficientemente, un archivo dentro de una partición, como el lugar donde el sistema operativo mantiene sus programas o páginas intercambiados, en un sistema de intercambio o paginación a demanda.