En la próxima versión del kernel de Linux se incluirá un cambio que mejorará el rendimiento del desktop en condiciones de poca memoria. Básicamente lo que se hizo fue cambiar la forma en que se decide qué parte de la memoria se debe mover a disco (swap).
En el esquema tradicional, la memoria usada por el código se considera como equivalente a la usada por los datos a la hora de copiarlas al disco cuando la memoria es insuficiente. Esto provoca que las aplicaciones detengan temporalmente su ejecución cuando el código que necesitan se encuentra en disco.
Para evitar este problema, el código ejecutable tendrá una marca especial para que el sistema operativo haga lo posible por mantenerlo siempre en memoria, sin llevarlo a disco. El cambio es bastante pequeño, pero los resultados son interesantes.
En pruebas realizadas se detectó que en un escritorio corriendo OpenOffice, Firefox y el entorno GNOME con 512MB, la necesidad de copiar segmentos de memoria desde el disco a RAM se redujo a la mitad, mientras que la cantidad de segmentos que se trajeron desde el disco se redujo a sólo un tercio. Esto implica que el tiempo necesario para hacer swap se redujo como mínimo a la mitad.
En un sistema operativo existe el concepto de memoria física y memoria lógica. La memoria física es la que provee el hardware (1GB, 2GB, etc). La memoria lógica es la que ven las aplicaciones. La memoria lógica se divide en páginas de tamaño fijo y se va asignando a las aplicaciones a medida que éstas lo requieran, el sistema operativo internamente tiene una tabla en donde dice en qué parte de la memoria física está cada página de la memoria lógica, lo que se conoce como mapa de memoria.
Entre todas las aplicaciones se puede usar más memoria lógica que la que se dispone físicamente. Como no se necesita usar toda la memoria al mismo tiempo, algunas páginas que estaban en la memoria física se guardan en disco mientras no se ocupen, luego si se necesitan se traen de vuelta del disco a la memoria física. Eso es lo que se conoce como swap o intercambio.
Mientras más memoria tenga el equipo, es menor la necesidad de mover páginas al disco, y por lo tanto menor el tiempo perdido en esperar a que las páginas se copien desde o hacia el disco. Pero si la memoria es poca, frecuentemente se necesita usar el disco para hacer espacio en memoria física, lo que hace que el sistema se comporte más lento.
Con el cambio aplicado en Linux 2.6.31, se mejora la estrategia para decidir qué páginas deben sacarse de RAM cuando hay poca memoria disponible, de tal forma de dejar en memoria física aquellas que se usen intensivamente, eliminando la necesidad de usar el disco.
Link: Make mapped executable pages the first class citizen (log de cambio en el kernel)
Publicado por Franco Catrin el 8 de September 2009 en la categoría Destacados, Software con los tags Kernel, Linux. Tiene 84 comentarios.
84 Comentarios
Linux 2.6.31 mejorará el rendimiento del desktop con poca memoria
Franco Catrin dijo el 8-9-2009 a las 16:43:
31@Tezeract
El tema es que hoy puedes usar un sistema de escritorio completo con 512MB, pero ese mismo hardware ahora Linux funcionará mejor. Independiente de que en algunos casos puedas armarte un sistema ad-hoc con mucho menos que eso.
Lo que dice @Fakeroot también es cierto, otros usuarios también se verán beneficiados, todo depende de las aplicaciones que corras.
Franco Catrin dijo el 8-9-2009 a las 16:48:
32@Mrivera
Efectivamente. Gracias!
Irónicamente había quedado mal por corregir otro error de redacción

1Linux dijo el 8-9-2009 a las 16:52:
Excelente, pero cada distro está hecha para cada arquitectura de PC’S, no les voy a estar metiendo GNOME o KDE a un PC con 24 o 32 de RAM, hay que ser harto weon…
Es lógico que cada nueva versión de Kernel implica mejor rendimiento tanto en hardware como en software….
Ver Comentario... Mr. X dijo el 8-9-2009 a las 16:52 ...

6Hugo dijo el 8-9-2009 a las 16:53:
Yo tendría cuidado en que escribir como comentario cuando el que escribe el artículo es Franco… Siempre saca algo que deja marcando ocupado al que comenta un dato técnico (lo del 80386 se pasó).
De todas maneras se agradece tal entusiasmo en interactuar con los lectores y darse el tiempo de corregir hasta al más sibilino de los lectores/aportadores.

4Tezeract dijo el 8-9-2009 a las 17:04:
@Franco et al.
Se agradecen los replies. Sin embargo la idea es entender el comentario como tal, y no como una batalla por tener la última palabra. Generalmente comento en los articulos que me interesan y no con la intención de iniciar un flamewar.

1Cub0x dijo el 8-9-2009 a las 17:06:
Muy Buen Articulo por lo menos existe gente que si se da el tiempo en la redacción para un Blog =).
Saludos Franco.

1nosekefik dijo el 8-9-2009 a las 17:07:
Pero este kernel ya existe, yo lo estoy usando en este instante!!!

4Samy dijo el 8-9-2009 a las 17:08:
@ Franco
Notable la noticia y más aún el bonus track. Estoy seguro que si fayerwayer tuviese más “Francos Catrines” sería un blog mejor.
Efectivamente. Gracias!
Irónicamente había quedado mal por corregir otro error de redacción
Ojalá pudieras contagiar ese profesionalismo de revisar tus artículos a tus compañeros de trabajo en FW. De verdad, a veces hay noticias que hasta se entienden mal por los problemas de redacción.

1jci dijo el 8-9-2009 a las 17:09:
@Tezeract
Alternates no tienen QA? Raro.
https://bugs.launchpad.net/ubuntu/+source/clock-setup/+bug/423247
Franco Catrin dijo el 8-9-2009 a las 17:11:
42@nosekefik
No es raro, siempre se puede usar antes de que las distribuciones lo adopten, antes que se haga el release oficial, etc. etc.

1mrjavo dijo el 8-9-2009 a las 17:15:
Cual es la definicion actualmente para “poca memoria”?? Cual seria la mejor config. para un PIII con 192 de ram??

1Samy dijo el 8-9-2009 a las 17:15:
(Paradójicamente redacté mal mi último comentario. Quería decir mejor blog en vez de blog mejor [estaba pesando en "blog más bueno"]. Pero al menos, no es ambiguo.)

1Tezeract dijo el 8-9-2009 a las 17:19:
@jci:
Pues ese bug report es de Ubuntu Karmic Koala. Aunque diga “branch”, en realidad es la version mas reciente.

-1Jose dijo el 8-9-2009 a las 17:20:
Gracias por el articulo!
Una consulta, ¿Cuando estaría disponible el release oficial?
Franco Catrin dijo el 8-9-2009 a las 17:24:
47@José
En unos días : http://www.phoronix.com/scan.php?page=news_item&px=NzUxMw

2kotak dijo el 8-9-2009 a las 17:29:
@Franco
una news para los usuarios de ATI
http://blog.jasondonenfeld.com/190
que si hubiera existido esta solución para los problemas no hubiese buscado tanto un laptop c/Nvidia.

0felipexcore dijo el 8-9-2009 a las 17:41:
interesante! siempre es bueno poder rescatar compus que casi estan pasando al abandono jajaajajaj

1Ernesto dijo el 8-9-2009 a las 18:00:
Franco, ¿con esto se consigue lo mismo que editar el fichero sysctl.conf con el valor de swappiness? Donde el valor por defecto es 60 y según lo que leído es recomendable para servidores y no para desktops.

1marioa dijo el 8-9-2009 a las 18:11:
los 8 GB de hoy son los 128 mb del mañana. Estos cambios en la arquitectura del os a la larga son positivos para todos los sistemas…

0Alexis dijo el 8-9-2009 a las 20:24:
@Franco
Tengo un amigo que usa Debian con KDE 3.5 y corre IceWeasel (Firefox en Debian), GIMP, Blender al mismo tiempo, en condiciones más o menos óptimas… Eso no lo podría hacer con otra distro…

3kotak dijo el 8-9-2009 a las 22:08:
@Alexis
Si puedes, la cantidad de aplicaciones que corran “bien” depende del hardware que tengas, en especial la combinación de RAM+Swap+CPU que se tenga.
Franco Catrin dijo el 8-9-2009 a las 22:23:
55@Alexis
Por qué no se podría hacer en otra distro si las aplicaciones son las mismas?
IceWeasel sólo cambia el artwork de Firefox.

1Pedro dijo el 8-9-2009 a las 22:30:
Muy buenas clases de Sistemas Operativos han sido publicadas gracias a Franco, estas notas entregan un gran nivel de conocimiento y especialización a FW.
Saludos

1flavin dijo el 8-9-2009 a las 22:31:
factrin debería hacer un blog aparte o un spin off de linux su artículos son muy buenos pero creo que un publico muy especifico.

-1Linux 2.6.31 mejorará el rendimiento del desktop con poca memoria - GeekDays dijo el 8-9-2009 a las 23:16:
[...] Via:Fayerwayer [...]

1Alexis dijo el 8-9-2009 a las 23:19:
@Franco Porque, como vienen, por defecto, las distribuciones más populares, hace muy engorrosa la desactivación de servicios, desinstalación de programas, entre otras cosas…
Aunque como dijeron más arriba, está la opción de ubuntu mínimo, o algo así, pero, en las páginas de los respectivos proyectos no está muy a la vista eso…

1pabrou dijo el 8-9-2009 a las 23:36:
@Franco
Franco, por lo que pones en el artículo, da la sensación que hasta ahora el sistema de páginado del kernel no marcaba las páginas “sucias” de memoria. Sabes cual era la politica de reemplazo de página que tenia hasta ahora? LRU con second chance? Exactamente que tipo de “marca especial” se agregó?
Ver Todos Páginas: ← 1 [2] 3 Próximos 30 Comentarios →
Ver Todos Páginas: ← 1 [2] 3 Próximos 30 Comentarios →