Avisar de contenido inadecuado

Más de 4GB de RAM en UBUNTU. (compilando el Kernel)

{
}

No acabo de entender porque por defecto no se reconoce toda la memoria RAM del ordenador, lo cual me fastidia mucho. Esta característica no es única de ubuntu pues pasa en diferentes sistemas operativos, antiguamente tenia sentido, pero hoy por hoy no lo acabo de entender.

Ya se que muchos piensan que con dos o tres gigas es más que suficiente y que posiblemente nunca los vaya a usar totalmente (eso esta por ver), pero yo tengo cuatro gigas y me hace ilusión que el sistema me los reconozca (son mios y los he pagado).

Bueno, pues por si no lo sabéis que el sistema reconozca o no estos gigas de más, depende únicamente de que se haya habilitado o no el modulo correspondiente en el kernel.

Así, con este post mataremos dos pájaros de un tiro, por una parte podremos disfrutar de la totalidad de la memoria RAM y por la otra, veremos lo fácil que resulta compilar el kernel en un sistema debian.

Empezamos bajando el kernel de la página oficial, en nuestro caso bajaremos el último estable 2.6.30.

wget -c ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.30.tar.bz2

Pasamos a descomprimir el archivo, lo haremos en el directorio /usr/src/.

sudo tar xvfj linux-2.6.30.tar.bz2

creamos un link a nuestro nuevo kernel

sudo rm -rf linux && sudo ln -s /usr/src/linux-2.6.30 linux

Nos desplazamos al directorio correspondiente.

cd /usr/src/linux

Nos aseguramos de tener instalados los siguientes paquetes, necesarios para la compilación.

sudo aptitude install build-essential libncurses-dev

No empezaremos de cero, usaremos como base la configuración actual del sistema, para ello copiaremos el siguiente archivo.

cp /boot/config-`uname -r` .config

Empezamos la configuración del kernel.

sudo make menuconfig

config -linux kernel

Bueno, aquí se puede configurar prácticamente todo, echarle una ojeada y vosotros mismos. Yo no os diré que si no sabéis lo que hacéis no toquéis, pues yo aprendí así, tocando y viendo que pasaba, pensar que lo más que os puede ocurrir es que tengáis que volver a compilar el kernel o que tengáis que reinstalar de nuevo.

En mi caso, he activado y desactivado diferentes módulos, pero solo mostraré el referente al reconocimiento de la RAM.

Entraremos en la sección “Processor type and features” (La cuarta linea de la imagen anterior) y dentro buscaremos la sección “High Memory Support (4GB)”, entraremos y seleccionaremos la opción de 64GB.

imgA imgB

 

Cuando acabemos de trastear, salvaremos la configuración “Save and Alternate Configuration file” y saldremos “Exit”.

Instalaremos el Kernel-package.

sudo aptitude install kernel-package

Limpiaremos posibles rastros de compilaciones anteriores.

sudo make-kpkg clean

Bueno ya lo tenemos todo listo, ahora solo falta compilar, introducir la siguiente instrucción y iros a perder el tiempo por ahí, o ha aprovecharlo, eso depende de vosotros, pues este paso puede ser largo (una, dos o tres horas según) y por supuesto dependerá de la cantidad de módulos que hayáis seleccionado.

sudo make-kpkg --initrd kernel_image kernel_headers modules_image
Ya solo queda instalar el nuevo kernel.

cd ..

sudo dpkg -i linux*2.6.30*.deb

Se reinicia el equipo y listo, ya tenemos reconocida nuestra RAM.

Por cierto es posible que necesitemos volver a instalar (compilar) los drivers de la tarjeta gráfica, pues estos dependen del núcleo, pero si habéis seguido los pasos no tendréis ningún problema.

- - -

Nunca he permitido que la escuela entorpeciese mi educación

{
}
{
}

Comentarios Más de 4GB de RAM en UBUNTU. (compilando el Kernel)

El problema no es linux (con windows tambien pasa). El problema es la arquitectura. con arquitecturas de 32bits no se puede direcionar mas de 3Gb de RAM. Esta limitación no existe en arquitecturas de 64 bits (el límite es mucho mayor). Lo que estas haciendo es poner un parche en el kernel de Linux para que haga un apaño y vea toda la ram pero si de verdad quieres usar toda la ram necesitas tener una maquina de 64 bits y un sistema operativo de 64bits.
un saludo, Gonzalo
Gonzalo Gonzalo 30/06/2009 a las 12:59
mmm, es posible que en mi menuconfig no aparezca "High Memory support" ?????
tal vez es por lo que has dicho Gonzalo, que mi maquina es de 64 bits y por eso no aparece....
tengo un aspire 3810T , Intel Core 2 Duo SU3500 (1,4 , 800 mHZ FSB)
Anónimo Anónimo 11/07/2009 a las 19:14
Como ya dije, el problema no es de ubuntu ni mucho menos de linux, y por descontado tal como dice gonzalo, en windows también existe.
Por su puesto que en arquitecturas de 64 bits este problema no existe, pero por desgracia los sistemas operativos de 64 bits aún no están todo lo maduros que deberían estar (al menos el software existente para ellos).

También hay que decir que la compilación del kernel nos proporciona otros beneficios a parte de los de la memoria, pues nos ofrece poder desactivar módulos que no vayamos a utilizar, una compilación adecuada a nuestra maquina, etc.

En lo que respecta a "High Memory support", no se que kernel estarás compilando, pero tanto en los de ubuntu como en los de debian aparece, navega un poco por los menús no sea que lo tengas con otro nombre.

suerte.
Creo que lo tienes erroneo.
Es
sudo make-kpkg --initrd kernel_image kernel_headers modules_image

Fijate que te has saltado una letra en kpg
Miros Miros 25/01/2010 a las 20:29
Saludos a Todos.
Me van a perdonar los fanáticos y simpatizantes de linux, pero no entiendo porque tengo que recompilar el kernel de un sistema operativo de 64 bits(Ubuntu 9.10). Yo soy un desarrollador y necesito tener las aplicaciones listas en un tiempo determinado, tiempo que no puedo perder recompilando un kernel que ya por defecto deberia reconocer mas de 4GB de ram. Mi trabajo es desarrollar aplicaciones no recompilar kernel. Linux puede ser muy bueno y estable pero demanda demasiado tiempo para configuraciones banales, que ya deberian estar disponibles desde la instalación. Lo siento muchachos pero asi linux nunca va a ser el S.O. más usado.
Diego Bertaso Diego Bertaso 22/02/2010 a las 01:10
Diego, creo que estas muy confundido, el problema de las 4Gb no es un problema de linux, en windows tambien está. Sobre los 64 b, solo te tienes que instalar la distro adecuada y ya no te hará falta compilar nada si no lo deseas (por cierto en windows esta última opción no la tienes) sobre el resto de tu post, pues en realidad ni lo entiendo y sinceramente creo que tu tampoco, pues lo que dices no tiene ningún sentido. Tienes tal empanada mental que te hacen concluir cosas como la prenda que has soltado en tu post.
Gracias miros, no me habia dado cuenta.

Deja tu comentario Más de 4GB de RAM en UBUNTU. (compilando el Kernel)

Identifícate en OboLog, o crea tu blog gratis si aún no estás registrado.

Avatar Tu nombre