Instalar Kernel 3.7.9 en Ubuntu - Linux Mint

19 febrero 2013
Ayer me decidí a probar instalar el Kernel 3.7.9 en mi maquina Emachines E725 con Ubuntu 12.04 y realmente el cambio en el rendimiento es notable, se nota mucho mas fluida y se siente como responde de forma  ágil. Vamos a ver algunas de las novedades de esta versión del Kernel:

Arquitecturas y procesadores añadidos

Que Linux es uno de los kernels con mas soporte de hardware de la historia es un hecho que se demuestra año tras año, nunca en toda la historia de la informática se había visto un núcleo tan flexible capaz de ejecutarse en prácticamente cualquier dispositivo electrónico existente.

Ahora en la versión 3.7 se añade soporte para la arquitectura AArch64 que viene a ser la versión de 64-Bits de los procesadores ARM. Dentro de pocos meses empezaremos a ver los primeros procesadores ARM de 64-Bits y es importante que el kernel ya tenga soporte para que todas las librerías necesarias estén disponibles a la hora de la verdad. Los procesadores ARM de 64-Bits tendrán un modo de compatibilidad nativo por hardware para el software de 32-Bits, esto es algo muy importante para garantizar una transición limpia, sobretodo en dispositivos móviles como los smartphones.

Debian esta preparando una versión para AArch64, en principio esta planeada para el lanzamiento de Wheezy teóricamente para primavera de 2013.

El Linux kernel 3.7 también tendrá soporte para mas variantes de la arquitectura MIPS, como el reciente y conocido procesador Loongson 3. El procesador Loongson 3 es un procesador MIPS de 64-Bits con cuatro núcleos con un consumo de unos 15W, y que presenta un rendimiento interesando para el bajo consumo que tiene. Ya que la arquitectura MIPS es libre y cualquier fabricante puede crear su propio procesador MIPS sin pagar ningún tipo de licencia, en países como China se están volviendo muy populares y un ejemplo de ello es que en muchas oficinas del gobierno y universidades se están adoptando ordenadores con estos procesadores y GNU/Linux como sistema por defecto. El compilador GCC ya dispone de soporte para poder compilar y optimizar código en la arquitectura MIPS pero aun le quedan algunos retoques para que tenga un soporte maduro a la par que las arquitecturas x86 o PowerPC. Poco a poco se empiezan a ver portátiles, netbooks y sistemas de entretenimiento multimedia con procesadores Loongson 3 así que el soporte en el Linux kernel es un paso importante para la industria. Se esperan modelos de Loongson 3 de seis y ocho núcleos para 2013.

También se añade soporte para el procesador SPARC-T4 de Oracle, la arquitectura SPARC pertenecía a la desaparecida Sun Microsystems que ahora pertenece a Oracle, por eso todos los procesadores SPARC presentes están actualizados bajo el nombre Oracle SPARC.XX.

Virtualización

Si uno de los apartados que mas cambios había en la versión actual 3.6 es en la virtualización, en la versión 3.7 tampoco se han quedado cortos. Por primera vez tenemos soporte completo de virtualización en la arquitectura ARM por lo que sera posible desplegar completamente una maquina virtual en procesadores ARM y ademas poder emular el sistema de entrada y salida I/O, quizás lo mas interesante es que podremos emular la plataforma ARM desde la arquitectura x86 y PowerPC, por lo que la simulación de servidores o plataformas móviles sera mas fácil que nunca para los programadores de proyectos GNU/Linux basados en la arquitectura ARM.

Sistema de archivos

Hace tiempo que no vemos novedades importantes en los sistemas de archivos, sabemos que Btrfs esta en camino, pero aun le queda bastante para situarse a la par de Ext4. Sin embargo en la versión 3.7 volvemos a tener cambios importantes en Btrfs. Por fin se solucionan errores importantes relacionados con la lectura y escritura que provocaban una caída de rendimiento importante, ahora no solo han solucionado estos problemas si no que también han completado fsync y dsync que mejora el rendimiento al sincronizar la información entre bloques ademas de añadir la capacidad de añadir varios accesos a discos físicos dentro de un solo bloque físico o virtual.

También mejora muchísimo la capacidad de realizar configuraciones RAID utilizando el sistema de archivos Btrfs, aunque de momento no existe mucha información al respecto y es posible que para la versión 3.7 aun no este del todo implementado, quizás para la versión 3.8 del Linux kernel empezaremos a ver mejoras en este apartado.

El sistema de archivos JFS, ahora tiene soporte del comando TRIM en discos SSD, mejorando el rendimiento sobretodo en operaciones intensivas de lectura y escritura simultaneas.

Gráficos

Hacia mucho tiempo que no veíamos tantos cambios en el apartado de gráficos, no solo se han dedicado a añadir soporte de hardware nuevo y mejorar los controladores si no que han eliminado algunas capas de software para mejorar el rendimiento que ya se han quedado obsoletas. Con todas las comunidades y usuarios esperando a la plataforma de juegos Steam, es normal que los fabricantes de hardware empiecen a preocuparse seriamente por sus controladores ya que casi todo los problemas de rendimiento que sufre GNU/Linux en el apartado de gráficos se debe a unos controladores pobres y poco optimizados para la arquitectura del Linux kernel.

Intel esta trabajando codo con codo con los programadores de Valve que desarrollan Steam para GNU/Linux y de momento están mejorando el controlador como nunca antes se había visto. El controlador DRM de Intel sufre un lavado de cara importante en la versión 3.7, se han corregido multitud de errores que se llevaban arrastrando desde hace algunos meses, se ha mejorado el consumo/rendimiento y sobretodo se ha optimizado el rendimiento gráfico y sus subrutinas de hardware a la arquitectura del Linux kernel. Para empezar por fin tenemos soporte de DisplayPort y Embedded DisplayPort en GNU/Linux utilizando una IGP Intel, se ha tenido que actualizar el microcódigo de los procesadores para poder realizar esta tarea, el código necesario ya se incorpora directamente en el controlador que estará disponible en la versión final del kernel.

En la parte de los controladores libres Nouveau para Nvidia y Gallium3D para AMD/ATI también hay cambios muy importantes que hacia años esperábamos. Por ejemplo en el apartado de configuración SLI, es donde mas cojean los controladores libres ya que de momento no tienen ningún tipo de soporte. Por ejemplo en la arquitectura Kepler de Nvidia ahora Nouveau tiene soporte para comunicarse con el chip que controla las configuraciones SLI, por lo que dentro de no mucho se espera poder tener configuración SLI de forma nativa y nada mas instalar el kernel. Esto permite sistemas multi GPU con familias GeForce o Quadro tanto en OpenGL como en OpenCL, que como decíamos hace unas horas, pronto estará disponible en el proyecto Mesa 3D.

Otro cambio interesante relacionado con los gráficos, es el soporte para el modo turbo de las tarjetas gráficas modernas de Nvidia y AMD, esto permite un control mas preciso sobre las frecuencias de los procesadores gráficos ademas de gestionar mejor la energía. En el caso de las tarjetas de Nvidia, se añade una utilidad para controlar los ventiladores o turbinas, cosa que utilizando los controladores libres no se podía hacer hasta hace muy poco, lo que significa que en portátiles se podrá rebajar las frecuencias de la GPU y mejorar el consumo ademas de evitar sobrecalentamientos y ruido extra innecesarios.

También siguiendo el ejemplo de Nouveau, en los controladores libres de AMD vemos cambios muy importantes que los usuarios estábamos pidiendo a gritos. Cualquiera que tenga una tarjeta gráfica de la serie Radeon HD en GNU/Linux, sabrá que el consumo se dispara y la turbina o ventilador siempre esta mas revolucionada de lo normal haciendo ruido extra continuamente. Esto se debe a que el controlador libre no puede controlar la gestión de energía y por tanto no puede desactivar partes de la circuitería cuando no se esta utilizando. En el Linux kernel 3.7 hay cambios interesantes en este apartado. Ahora es posible desactivar por completo los PLL de la circuitería que causaban ese consumo desmesurado ademas de permitir la sincronización de frecuencia entre los PLL y permitir una mejora en configuraciones multi monitor.

Se ha mejorado el control de brillo de los monitores en los portátiles que tienen gráficas AMD, mejorando el soporte de ACPI. Por ejemplo en la familia de portátiles Vostro de Dell, ocurre que por defecto no se puede controlar el brillo de la pantalla en Ubuntu ya que la versión ACPI del kernel no puede trabajar con la GPU y su circuitería dedicada.

Gestión de energía

Si en la versión 3.6 nos encontrábamos con mejoras interesantes en la gestión de energía como la capacidad de poder desactivar algunos canales PCI/PCIe que no estuviesen en uso, o el nuevo sistema de suspensión Suspend to Both, en el kernel 3.7 han dado una vuelta mas de tuerca.

Ahora es posible controlar la gestión de energía de los dispositivos de sonido, esto por ejemplo permite la desactivación completa de los sistemas de audio como conectores de salida y entrada de sonido cuando no los estemos utilizando, por ejemplo, si estamos en un periodo de mas de un minuto sin emitir ningún sonido, el hardware de sonido entra en un modo de suspensión ahorrando energía, y cuando algún evento se produzca que requiera de audio, o queramos seguir escuchando música, rápidamente se activa para que el usuario no se de cuenta delo que acaba de pasar. Esto es útil básicamente en los ordenadores portátiles. Todas las tarjetas de sonido capaz de trabajar con ALSA serán compatibles con este modo siempre y cuando el hardware lo permite mediante ACPI. Por ejemplo las tarjetas de sonido Intel HD desde 2006 en adelante soportan esta característica, por lo que si tu portátil lleva un Core 2 Duo o superior lo mas probable es que soporte esta nueva característica.

Seguridad

En el apartado de seguridad tenemos la incorporación de un nuevo sistema creado por Intel. SMAP que son las siglas de Supervisor Mode Access Prevention es un conjunto de instrucciones creado para bloquear código y que ciertos programas no tengan acceso a los privilegios a nivel de hardware permitiendo el bloqueo de software malicioso. Esta característica es muy útil en entornos Windows donde existe mucho malware o virus, pero no esta de mas tener soporte también en GNU/Linux, ya que no estamos hablando de virus, si no de cualquier programa o código corrupto que intente acceder a partes del procesador donde no deberían tener acceso mejorando la seguridad considerablemente.

No solo de de programa externos protege SMAP, si no también la capacidad de poder explotar algún agujero de seguridad en el sistema, ya que del mismo modo que no permite la ejecución de código desde dentro, tampoco la permite desde otro programa externo, por lo que si algún programa presenta algún error grave de seguridad, con SMAP podemos suavizar el error, aunque por supuesto no es recomendable utilizar software con agujeros de seguridad.

 No recuerdo de donde saqué esta info, si el autor ve esta entrada y me lo hace saber lo pongo inmediatamente, mis disculpas.

Vista esta reseña vamos a ver como instalarlo de manera sencilla (LA INSTALACIÓN CORRE BAJO TU PROPIO RIESGO) realidad es un tanto alarmista esta advertencia siempre se puede arrancar con un Kernel anterior.

Lo primero es  abrir un terminal y situarnos en el directorio temporal:

cd /tmp

1- Descargar un script que hará todo por nosotros:

wget http://dl.dropbox.com/u/47950494/upubuntu.com/kernel-3.7.9 -O kernel-3.7.9

2- Cambiamos permisos para ejecutarlo:

chmod +x kernel-3.7.9

3- Lo ejecutamos con permiso de administrador:

sudo sh kernel-3.7.9

4- Al finalizar el proceso reiniciamos:

sudo reboot

Al reiniciar veremos en el grub la entrada correspondiente al Kernel nuevo y la maquina iniciará con el mismo.
Si tenemos algún problema podemos arrancar con una versión previa seleccionándola desde el grub.

Para ver que kernel estamos usando, en una terminal:

uname -r


Si tuvimos problemas con este Kernel simplemente lo desinstalamos:

sudo apt-get purge linux-image-3.7.9*

Les dejo una imagen del terminal durante la instalación


Realmente los invito a probar este Kernel que por lo menos en mi caso va de maravillas, todo esto mientras esperamos el 3.8 que traerá cambios aún mas importantes en cuanto a rendimiento y del cual ya hablaremos.


Te gustaría seguir este blog?

10 comentarios:

  1. Hola.

    En principio el Kernel 3.8 ya está disponible con fecha de 18 de febrero.

    Muy buen análisis, me encantó.

    Un saludo.

    ResponderEliminar
  2. Debe ser por que no es mio ja ja, me alegra que te guste.
    Saludos

    ResponderEliminar
  3. Tengo una dudad , he leido en otros foros que no es tan necesario actualizar el kernel incluso recomiendan quedarse con la que trae la distro ya que ellos se encargan de las actualizaciones. Al actualizarlo de manera manual el problema seria que tendrias que estar atento a cada actualizacion. Que me recomiendadn?

    ResponderEliminar
  4. La rama del kernel que use tu distribución se actualiza de todas formas y si quieres puedes iniciar con ella. Por otro lado es verdad que no es necesario... pero bueno esto es GNU/Linux y no hay como meterle las manitas y cada tanto romper algo que para eso es la libertad del software ¿No?

    ResponderEliminar
  5. Asi es esa es la libertad de GNU/LINUX , por eso no me arrepiento de haber dejado atras a windows. Gracias y tu blog esta excelente!!!!

    ResponderEliminar
  6. Hola buenas. Este metodo funciona para ubuntu 12.10?
    Muchas gracias

    ResponderEliminar
  7. Si funciona , para cualquier distro basada en Ubuntu , tambien funciona para Ubuntu 12.10.

    ResponderEliminar
  8. Si, funciona para 12.10 en estos días pongo para actualizar al 3.8

    ResponderEliminar
  9. Resulta que uso Kubuntu 12.10 x64 en una laptop Samsung RV408 con 6GB RAM; y todo funciona muy bien hasta la versión 3.5.7.2 pero si uso una versión superior, aunque todo el sistema me trabaja bien, tengo problema con los navegadores; se "cuelgan" no me abren bien las páginas y tampoco aunque entran en mis correos no los puedo leer, no me los muestra, se queda girando y nada más, cuando regreso a la 3.5.7.2 toso trabaja normal.
    ¿Que puede ser?

    ResponderEliminar
  10. EDITO: Instalé la versión que aquí publicas y me está funcionando correctamente, tarda un poco en abrir los navegadores pero ya puedo entrar a leer mis correos.
    No había sido posible de ninguna forma y con ningún kernel posterior al 3.5.7.2; espero mejore en este 3.7 la velocidad para navegar y no es problema de conexión porque la otra PC (con Windows) que está a mi lado navega muy rápido.

    ResponderEliminar