Autor Tema: Kernel 2.6.24  (Leído 1469 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado vlad

  • Global Moderator
  • The Communiter-
  • *
  • Mensajes: 6351
    • Qualium.net
Kernel 2.6.24
« : marzo 27, 2008, 11:22:53 am »
Estaba viendo en esta pagina (muy buena por cierto, pero en ingles) http://kernelnewbies.org/Linux_2_6_24 muchas de las mejoras que va a traer ese nuevo kernel, si, ese mismo que la mayoria actualizamos por tener un numero mas alto la mayoria de veces :D

Esta vez me dio curiosidad realmente por saber que es realmente lo que podria un numero significar en el desarrollo de esta parte central -y vital- de un OS que tenemos instalados -y/o que a veces usamos-, la verdad he quedado anonadado con la cantidad de cosas que uno simplemente deja pasar por alto, sin saber que realmente hay toda una historia y mucho esfuerzo para subir ese numerito  :shockd:

kernelnewbies provee un resumen entendible de los cambios del Kernel, pero me gustaria resaltar dos de los cambios que mas me llamaron la atencion:

1. El mejorado CFS.
http://kernelnewbies.org/Linux_2_6_24#head-16d608b6aba030fe15ba3bbc75655391ae98d707
Realmente he usado relativamente poco Linux, pero despues de usarlo unos meses me he dado cuenta que una de las mejores cosas de Linux es como asigna el tiempo del CPU a los procesos; han visto como las cosas se bloquean en Windows cuando por ejemplo se traba un CD o un Diskequete?, eso es (creo :P) porque Windows asigna el tiempo de CPU al proceso que se lo pida mas, aun si esto hace que se dejen de procesar cosas vitales como el movimiento del Mouse XD.

Linux en cambio trata de asignar el tiempo de procesador de forma mas equitativa (pareja pues), permitiendo que uno crea que la maquina no este bloqueada aun cuando se ejecuten procesos intensivos.

Bueno, pues esta mejora al Kernel va a optimizar la forma en que se reparte este tiempo entre los procesos, este nuevo sistema (CFS = "Complety Fair Scheduler" ó -en mi traducción vaga- "Programador Completamente Justo") busca hacer dos cosas:
a. Dividir el tiempo para el uso del CPU de forma igual entre los usuarios conectados en el momento.
b. Dividir de la misma forma el tiempo de uso del CPU para los procesos de cada usuario.

2. Reducción de la fragmentación de la memoria
http://kernelnewbies.org/Linux_2_6_24#head-eacf0c267f25660d4fe1bbeb3216d0d1d7400d1b
Sinceramente no conocia la fragmentacion de la memoria RAM, pero basicamente es equivalente a la de disco, el problema real sucede cuando la memoria RAM esta tan fragmentada que no hay suficiente espacio contiguo (digamos, un buen espacio en blanco en la RAM) para un programa que quiera reservar una gran cantidad de RAM en un momento dado, sea para un buffer o algo por el estilo.

El problema sera que aunque tengas 500megas libres, si un programa busca albergar espacio para 40Megas y el espacio libre de memoria contiguo mas grande es de 39Megas, el programa no podria reservar el espacio que necesita y por lo tanto fallara o sera mas lento en la espera de que tal espacio se le asigne.


Bueno, a mi punto de vista esos son los dos cambios que mas me llamaron la atencion de esta nueva versión; puede que me equivoque en mis explicaciones, pero bueno, para discutir eso estan los communiters :)