¿Por qué Linux necesita una partición de intercambio para RAM cuando Windows no? Si agrego RAM, ¿tendré que volver a particionar mi disco duro Linux para que coincida cada vez?

Linux no necesita una partición de intercambio para RAM.

Más específicamente, puede usar un archivo de intercambio al igual que Windows NT, o varios archivos, si lo prefiere (Linux le permitirá ponerlos en diferentes discos). Las particiones de intercambio simplemente ofrecen un mejor rendimiento que los archivos de intercambio, eso es todo. Una partición de intercambio accede al disco directamente, mientras que un archivo de intercambio interactúa con el sistema de archivos, que luego interactúa con el disco, por lo que la partición de intercambio corta el intermediario y la sobrecarga asociada con él. Para el caso, si tiene suficiente RAM, puede optar por no usar swap en absoluto; no es necesario que lo use.

El espacio de intercambio es simplemente una cobertura contra la falta de memoria. Al agregar espacio de intercambio, extiende la cantidad de memoria que el sistema puede usar antes de que los procesos comiencen a fallar por falta de ella. Si tiene más RAM de la que utiliza, el intercambio no tiene sentido.

Linux usa swap (memoria virtual) en su propia partición para hacer que IO sea más rápido. De esta forma, la memoria virtual no tiene la sobrecarga de un sistema de archivos completo como ext4 o NTFS. Windows usa un archivo de intercambio (pagefile.sys) en la unidad de arranque. Está en su unidad C: en el nivel raíz, pero necesita tener las opciones de carpeta configuradas para verla. La solución de Windows es más flexible: puede cambiar el tamaño de su archivo de página en cualquier momento, o incluso eliminarlo. La solución de Linux fue diseñada para ser más eficiente (a costa de la flexibilidad después de la asignación).

No necesita volver a particionar cada vez, aunque entiendo que el núcleo Linux actual funciona mejor cuando hay 2 veces la cantidad de memoria física asignada para el intercambio. Sin embargo, no sé por qué es esto, o qué ‘mejor’ vs ‘peor’ es para ‘obras’. Si cree que va a agregar más RAM a una máquina, haga que el intercambio sea el doble de la cantidad de memoria que cree que tendrá, equilibrado con el tamaño de su disco.

Tantas preguntas aquí. En orden:

  • Linux NO NECESITA una partición de intercambio para operar, ya que idealmente solo se usa cuando el sistema está bajo una carga excesiva. Sin embargo, debe proporcionar al menos uno pequeño siempre que sea posible.
  • Windows usa absolutamente el intercambio. Sin embargo, se llama un archivo de paginación (PAGEFILE.SYS) y es un “archivo” asignado estáticamente en uno o más volúmenes en el sistema, en lugar de una partición distinta. Existen numerosas ventajas y desventajas para ambos métodos que no voy a abordar aquí.
  • Generalmente, mientras más RAM tenga su sistema, menos intercambio necesitará (vea el primer punto arriba); así que probablemente no tenga que repartir su disco duro al agregar RAM.
  • ext4 es el sistema de archivos predeterminado (actual) en (muchas) distribuciones de Linux. Es un sistema de archivos POSIX adecuado para sistemas operativos Unix (-ish). NTFS es un sistema de archivos específico de Windows adecuado para sistemas Windows. Al igual que el debate de intercambio de archivos de página anterior, cada uno tiene sus ventajas, ninguna de las cuales abordaré hoy.

En última instancia, si tiene RAM para agregar, agréguelo. No repartir. Monitoree su uso de intercambio. Entonces toma una decisión.

Windows usa espacio en disco para el intercambio, pero usa un archivo en el sistema de archivos NTFS en lugar de espacio dedicado. Unix también puede usar archivos de intercambio, pero generalmente es mejor usar una partición dedicada ya que un archivo de intercambio puede fragmentarse a menos que se asigne todo de una vez.

Si es necesario, Unix también puede agregar espacio de intercambio adicional creando un archivo de intercambio.

Normalmente ya no creo archivos de intercambio grandes. La memoria es lo suficientemente barata donde dimensiono los servidores para que los procesos en ejecución permanezcan dentro de la RAM física y supervisen los procesos para garantizar que no lleguen al límite.

Muchos otros han cubierto los aspectos técnicos. Ahora, aquí están los puntos históricos sobre por qué alguien puede haberle dicho que necesita intercambiar en Linux, y que la cantidad que necesita aumenta si agrega más memoria.

Sistemas Unix (en los que incluyo Linux; una distribución de Linux ya está certificada por Unix; la razón principal por la que “Linux” en general no puede serlo es porque es un núcleo y, por lo tanto, no incluye todas las utilidades que requiere la especificación ) tradicionalmente se han utilizado principalmente como sistemas multiusuario, a menudo en entornos de producción que requieren un alto tiempo de actividad.

Debido a esto, los sistemas Unix tradicionales a menudo usaban “intercambio reservado”. Es decir, el sistema no iniciaría un proceso sin saber que el espacio de intercambio estaría disponible si fuera necesario cambiarlo.

Esto significaba que dichos sistemas no podían usar la memoria en exceso del espacio de intercambio del sistema: cuando intentaba asignar tanta memoria, recibía un error que decía que el sistema no podía reservar suficiente intercambio. Asi que:

tamaño de memoria virtual = menor (tamaño de memoria física, tamaño de intercambio)

para tales sistemas. Para estos sistemas, la recomendación habitual era que el intercambio debería ser al menos el doble del tamaño de la memoria.

Más tarde, se hizo más popular diseñar sistemas para que no reservaran el intercambio de esta manera. En cambio, no se reservaría espacio de intercambio; el intercambio solo se usó cuando realmente se necesitaba. En tal sistema:

tamaño de memoria virtual = tamaño de memoria física + tamaño de intercambio

Ahora, en este punto, técnicamente ya no necesitas intercambiar nada. Si no lo tiene, su máquina solo le permitirá ejecutar procesos hasta el límite de la memoria física, por supuesto, pero para algunos sistemas, eso puede estar bien.

Sin embargo, en la mayoría de los sistemas Unix, el intercambio tiene otro propósito: el espacio de volcado por caída. Si el sistema se bloquea, se escribe un volcado de bloqueo para intercambiar. Dependiendo del sistema, esto puede copiarse fuera del intercambio y en un sistema de archivos cuando el sistema se reinicia.

En este caso, si no tiene un intercambio al menos igual al tamaño de la memoria física (y posiblemente un poco más grande), no se puede escribir un volcado de bloqueo completo. Por lo tanto, si su sistema falla, es posible que no pueda capturar los datos para descubrir por qué se bloqueó. Por lo tanto, la recomendación era que debería tener un espacio de intercambio al menos igual al tamaño de la memoria … y, por supuesto, muchas personas repetían la recomendación anterior, que el intercambio debería tener al menos el doble del tamaño de la memoria.

Pero la mayoría de las personas que ejecutan Linux en casa no van a ver un volcado de memoria de todos modos: no tienen las habilidades para hacerlo, y no están pagando por el apoyo de una compañía a la que podrían subir el volcado y obtener información de vuelta.

(Y, para el caso, si su máquina comienza a fallar regularmente, siempre puede activar más intercambio entonces . Los usuarios domésticos generalmente no se encuentran en un entorno donde las cosas deben repararse lo más rápido posible, o donde se espera que los recursos del disco mantenerse regularmente cerca de su uso completo)

Entonces, ¿cuánto intercambio debería tener?

Básicamente, depende de su perfil de uso. Si apaga la máquina de forma regular, no tiene que preocuparse por las pérdidas de memoria que podrían llenarla. Si el conjunto de programas que ejecuta normalmente nunca llega a llenar la memoria, es posible que no necesite cambiar nada. He ejecutado muchos sistemas Linux caseros sin él.

Si a veces tiene presión de memoria, es útil tener suficiente intercambio para manejarlo. Tenga en cuenta que Linux usará automáticamente la memoria libre para el almacenamiento en caché del disco, por lo que tener algún intercambio puede ser útil, incluso si el tamaño total de los procesos en ejecución nunca excede la memoria disponible: algunos procesos en un sistema Linux típico con una configuración predeterminada en realidad no se ejecutan muy a menudo, por lo que el sistema puede intercambiarlos si no se han utilizado durante un tiempo, a fin de aumentar la cantidad de memoria disponible para el almacenamiento en caché.

Entonces … todavía verá la recomendación de “el intercambio debería ser igual a la memoria” a menudo; con menos frecuencia, verá que el antiguo “intercambio debe tener al menos el doble del tamaño de la memoria”. Puede ignorarlos con seguridad a menos que se encuentre en un entorno en el que necesite capturar volcados de memoria o en el que realmente necesite ejecutar un intercambio reservado por alguna razón.

Recomiendo tener alrededor de 4 GB de intercambio disponibles en un sistema doméstico. No es necesario aumentarlo si tienes más memoria.

Desde mi punto de vista, deseo que Windows * permita * que las particiones contengan datos de intercambio directamente. Pero no, se elige la variante más lenta de tener un pagefile.sys potencialmente fragmentado en la raíz de la unidad del sistema. No me refiero a una partición con solo este archivo pero con otro formato con formato NTFS o lo que sea, sino una partición de intercambio real, real, como el tipo Linux.

Si pudiera instalar Linux en NTFS, la partición de intercambio aún estaría separada. Este no es un problema de NTFSvs (EXT4 y muchos otros). Este es un problema de archivo vs partición (Windows y OSX usan un archivo, Linux una partición).

Acerca de la recomendación de que debería ser al menos tan grande como la RAM, si no más grande: si pudiera sacrificar la hibernación, podría mantenerla más pequeña, solo asegúrese de que el total entre RAM y SWAP sea mayor que su carga de trabajo máxima posible.

Y volver a particionar: una instalación de Linux en vivo con GParted en realidad podría ayudarlo un poco: reduzca ligeramente la partición de Linux, luego aumente la partición de intercambio que está inmediatamente a su derecha (¡espero que sea así, por su propio bien!). Esto lleva el poco tiempo necesario para mover los datos que se encuentran al final de la partición de Linux en otro lugar dentro del sistema de archivos, luego el tamaño de la partición casi instantánea, luego el movimiento casi instantáneo de la partición de intercambio [ya que no copia ningún dato para ese movimiento].

Una de las razones por las que agregar RAM a su sistema tiene un impacto apreciable en el rendimiento es que reduce la cantidad de intercambio en el disco, que es inherentemente lento. Por lo tanto, agregar RAM no debería generar la necesidad de agregar espacio de intercambio en el disco, suponiendo que la RAM adicional aumenta el total a una cantidad útil.

Las otras respuestas aquí (por ejemplo, la del Usuario de Quora) ya explican que Windows usa un archivo de intercambio, por lo que ambos sistemas operativos usan el intercambio.

Swap no utiliza el formato ext4 o ntfs o cualquier formato de archivo “normal”. Ni siquiera necesita formatear una partición para usar el intercambio porque se trata como RAM.

Crear un archivo de intercambio o una partición de intercambio simplemente le dice al disco duro que desea usar una pequeña parte de él como si fuera RAM. En el caso del “archivo”, encuentra esa pieza utilizando el sistema de archivos del disco. En el caso de la partición, encuentra esa pieza utilizando el registro de arranque maestro.

Lo que no le han dicho es que también puede usar un archivo de intercambio en Linux, si lo desea, lo que haría que se comportara como lo hace en Windows.

Así es cómo:
http://www.howtoforge.com/ubuntu

Y aquí hay un buen artículo sobre el intercambio en Linux:
https://help.ubuntu.com/communit

Puede usar un archivo de intercambio en Linux, pero por defecto usa una partición de intercambio durante la instalación.

– crea un archivo de intercambio de 1GB
dd if = / dev / zero of = / path / to / swap / file bs = 1M count = 1024

– Inicializarlo
mkswap / path / to / swap / file

– úsalo
swapon / path / to / swap / file

¿Qué sistemas operativos modernos no usan el intercambio? Windows 9x tiene un archivo de intercambio WIN386.SWP y Windows NT utiliza un archivo de paginación almacenado en pagefile.sys y puede cambiar las unidades para colocar esos archivos.

Linux ni siquiera necesita una partición de intercambio si tiene suficiente RAM al igual que puede desactivar el archivo de paginación en Windows, aunque eso no es recomendable. O puede crear un intercambio comprimido en RAM como compcache / zram. En Linux kernel 2.6 y versiones posteriores, puede crear un archivo de intercambio al igual que Windows. La partición de intercambio se recomienda solo porque evita la fragmentación y puede leer la escritura de bytes sin procesar directamente de ella sin preocuparse por la sobrecarga del sistema de archivos (en núcleos más antiguos).

Hay mucho para leer en el artículo de wikipedia http://en.wikipedia.org/wiki/Pag

No no no no no

El intercambio de Linux está ahí en caso de que se quede sin RAM y necesite más durante unos momentos para que el sistema funcione correctamente.

No lo NECESITAS, pero es útil.
No necesita cambiar su tamaño. Su tamaño es un porcentaje de su espacio total en el disco duro, no su RAM

Linux tiene muchas cosas útiles que Windows no tiene.

No, no lo harás. Solo dale 4gb y estarás listo.

Su máquina nunca debe usar activamente el intercambio en funcionamiento normal. El uso de intercambio es una señal de RAM insuficiente para la carga de trabajo.

(Puede verificar la actividad de intercambio activo en las columnas si / so de vmstat ).

Windows tiene espacio de intercambio. No se llama intercambio, pero eso es lo que es.

¿Ignora la herramienta de corte glitchy, pero ve “Comprometido” (4.8 / 13.7 GB)? Ese es el intercambio (en Windows 8 y superior). En Windows 7 está en otra parte, pero allí está.

Windows usa un archivo de intercambio, que usa una sección de almacenamiento de usuario para la memoria virtual.

Linux también podría hacer esto, pero en términos generales, es una forma algo mala. La razón de esto es que los usuarios podrían meterse con esto y causar problemas. La memoria virtual en Windows tiende a ser bastante pequeña y crece según sea necesario, pero si se queda sin espacio libre en el disco, entonces tiene problemas. Al tener una partición fija, nunca te encuentras con este problema.

Windows usa un archivo de intercambio en lugar de una partición de intercambio. Entonces ambas plataformas usan swap.

El beneficio de un archivo de intercambio es que no necesita repartir espacio por adelantado para el intercambio.

El beneficio de una partición de intercambio es que está diseñada correctamente para un uso óptimo. También el espacio es reservado en general y previsiblemente disponible cuando sea necesario.

Además, el intercambio no solo se usa cuando te quedas sin ram. Muchos sistemas operativos modernos utilizan de forma preventiva swap como optimización.

En lugar de una partición separada, Windows usa un archivo de intercambio. Esto tiene su propio conjunto de problemas, como no funcionar tan bien, y también el archivo de intercambio puede fragmentarse.

En realidad no es tan difícil repartir el disco de forma no destructiva; vea SystemRescueCd para ver una distribución que puede ayudar.

Windows tiene espacio de intercambio. Solía ​​llamarse memoria virtual (creo). Lo necesita en caso de que su computadora se quede sin memoria. Obviamente, ralentiza su sistema cuando el procesador tiene que buscar en su disco duro para invocar un programa o parte de él. Linux es mucho más eficiente a este respecto.

La mayoría de las respuestas aquí ya han respondido esto sucintamente, aunque hay un caso en el que es posible que deba cambiar el tamaño de su partición de intercambio al agregar más memoria. Las computadoras portátiles con frecuencia usan una partición de intercambio para almacenar una copia del estado de RAM cuando entran en modo de suspensión. Para que esto funcione correctamente, la partición de intercambio debe ser un poco más grande que la RAM total presente en la computadora portátil.

Entonces, sí, si tiene una computadora portátil u otro dispositivo móvil, es posible que deba cambiar el tamaño de su partición de intercambio al agregar más memoria.

Puede configurar una partición de intercambio dedicada en Windows.
Lo hice en 98 o XP. Y creo que ayudó a mi máquina hambrienta de memoria. Aunque la mayoría de los administradores de sistemas de MS reaccionarán con horror ante tal configuración.
Además, ¿nunca has oído hablar de la memoria virtual de Windows?

No necesita volver a particionar su disco duro cada vez que agrega RAM.
El intercambio es simplemente una red de seguridad, por lo que si su RAM se llena mucho, esos datos tienen un lugar al que ir en lugar de ser retenidos o descartados. Generalmente uso particiones de intercambio de 2-4GiB en todas mis máquinas Linux.

More Interesting

¿Hay alguna computadora portátil con memoria ECC?

¿Por qué mi PC está lenta y colgando? Tengo 8 GB de RAM, 500 GB de memoria que está más que medio vacía, un procesador Core i7, 2.00 a 2.50 GHz y un sistema operativo Windows 10 64x.

Mi computadora portátil no inicia algunos juegos, ya que tengo gráficos Radeon de 2 GB y procesador i5 de tercera generación y 4 GB de RAM. ¿Qué debo hacer para jugar esos juegos?

¿Cuál es el uso del procesador y la RAM en una computadora portátil o en cualquier otra computadora?

¿Es el libro de sistemas operativos modernos de Tanenbaum el mejor libro sobre sistemas operativos del mundo?

¿Qué debo elegir si soy un jugador: un procesador i3 con 8 GB o un i5 con 4 GB de RAM?

¿Windows generalmente tiene un bajo uso de memoria ram?

¿Realmente necesitamos 6 GB o 8 GB de RAM en nuestro teléfono?

¿La actualización de 4 GB a 8 GB de RAM es una mejora notable?

¿Por qué usamos RAM? ¿Podemos manejar nuestra máquina sin RAM?

¿Cuál es más duradero? 1.HP 14-r220TU Core i5-5200U Ram 4GB, 14 pulgadas 450 $ 2.Lenovo G4070 Core i7-4510U Ram 4Gb, HDD 500Gb, 14 'AMD Radeon R5 M320M 500 $

Soy estudiante de ingenieria mecanica. Uso Autodesk Inventor y otro software relacionado con mi tema. ¿Es la computadora portátil i5 con 4GB de RAM apropiada para terminar cualquier trabajo que use ese software?

¿Tener más RAM puede mejorar mi experiencia de juego?

¿Qué es un buen software de monitoreo de RAM, que me permite ver el uso de RAM en los últimos minutos?

Compré una MacBook que tiene 4 años. No quiero comprar una nueva MacBook, pero quiero hacer que la mía sea más rápida y poderosa. Que debo hacer