Mejor compilar a que instales desde los Repositorios GNU/Linux

7 de ene. de 2018

hola a todos hoy comento de por que es mejor compilar un programa para GNU/Linux desde su codigo fuente, a que lo estes bajando desde sus gestores de paquetes o sus centros de software.

primero conoscamos algunos conceptos.

Que es compilar ?
es transformar el código fuente (código escrito en un determinado lenguaje de programación, dígase C,C++,etc) en un programa ejecutable para su funcionamiento mediante el uso del procesador para la conversión del lenguaje usado para generar el código a el binario y ensamblador. También se le suele llamar empaquetamiento.

Por que es mejor Compilar ?
Entender el por que. Dicho de una manera (simple, no muy profesional, etc), cada version de los procesadores (Pentium, Core, Atom,etc) y su especie (Intel, AMD, ARM,etc) de procesador tienen instrucciones (software escrito en ensamblador que procesa el código) propias de su modelo (Core i7, Core i5, Atom x2, Phantom x8,Arm,etc) y además tienen instrucciones generales que todos estos tienes.

Cuando vos bajas desde los repositorios a través del Centro de Software/apt-get/Yumex/Yum/Pacman/AUR/etc, un programa que se instala de forma automática se dice que esta precompilado para su funcionamiento en todos los procesadores posibles (Intel y Amd). Al tratarse de un programa precompilado se pierden esas instrucciones propias de ése modelo de procesador específico (piensa que si un programa como Firefox o Chrome, que tienen más de 7 u 8 millones de líneas de código, tuvieran que poner todas las instrucciones específicas para cada procesador que hay en el mercado, la cantidad de código sería tan grande que ya no sería eficiente ése programa) dejándose nada más que las generales de su marca creadora (Intel, Amd,Arm).

Al bajar, descomprimir y compilar por tu cuenta el código fuente de un programa, éste se compila con las instrucciones específicas de TU procesador, (lo que no quiere decir que no sirva en una máquina con otro distinto, sólo que va a estar optimizado específicamente y puramente para tu procesador), desatando y liberando así todo el poder que tu procesador es capaz de dar gracias a sus instrucciones específicas.

En detalles más técnicos, estas instrucciones específicas están íntimamente ligadas a lo que se conoce como el chipset de tu placa madre, que es el gran quebradero de cabeza para los que tenemos Intel para cuando queremos hacer un upgrade del procesador y la placa madre.

Te sorprenderías del poder que puede llegar a dar tu Amd Atom x2 o tu Intel Core Inside, Core 2 Duo, i3, etc de tu vieja PC. ¿Ahora entiendes por que se habla mucho en el mundo Linux de compilar el famoso Kernel (corazón de todo sistema operativo)? Imagínate si compilar especialmente para tu pc todo un sistema (entorno gráfico (Gnome,Kde, etc), Kernel, programas de uso común (Firefox, Vlc, Chrome, Wine, etc) todo el nivel de velocidad y optimización que tendrías.

Éste principio de compilación para obtener un código optimizado especialmente para tu máquina es el que utilizan distros como Gentoo y derivados (del que no voy a hablar ahora, yo utilizo Fedora minimal con compilación de Gnome 3, el kernel y demás programas) donde el sistema, sus actualizaciones y sus programas siempre siempre son compilados.

¿Te gustó el contenido o lo que hacemos? ¡Cualquier colaboración es agradecida para mantener los servidores o crear proyectos!

Owen-Wilson

Siempre Aprendiendo de uno mismo y de los demás !!

Comentarios:

¡Genial! Te has suscrito con éxito.
¡Genial! Ahora, completa el checkout para tener acceso completo.
¡Bienvenido de nuevo! Has iniciado sesión con éxito.
Éxito! Su cuenta está totalmente activada, ahora tienes acceso a todo el contenido.