Hoy les mostraré en este artículo cómo construir el kernel de Linux desde cero paso a paso, pero antes de comenzar, presentemos Linux, el kernel de Linux es un proyecto de kernel de sistema operativo de código abierto sólido, seguro y de alto rendimiento creado por Linus Torvald en 1991 para su computadora personal después del kernel de Linux Adoptado por el Proyecto GNU para crear un nuevo sistema operativo gratuito de código abierto (como intercambio gratuito) contra el sistema operativo propietario UNIX. Ha generado muchos marcos de trabajo, una colección de paquetes (llamado sistema operativo de distribución) llamado simplemente Linux.
Hoy aprendemos cómo construir el kernel de Linux desde cero paso a paso
Requisitos para compilar el kernel de Linux desde cero;
- Una computadora con Linux (Ubuntu, Fedora, OpenSUSE, etc.)
- Una cuenta de usuario con sudo/root privilegios
- 15 GB de espacio disponible en el disco duro
- conexión a internet y suficiente tiempo libre.
Creación y modificación del kernel de Linux;
vamos a seguir algunos pasos sencillos y algunos pasos técnicos para construir el kernel y compilar, estos procesos necesitan mucho tiempo para terminar dependiendo del rendimiento de su sistema y la velocidad de compilación.
Note: If the version on the kernel website does not match the one from the steps below, use these commands and replace the kernel version number.
Paso 1:Descargue el código fuente de www.Kernel.org;
Paso 2:Abra la carpeta de descarga y extraiga Linux-x.xx.tar.xz;
Paso 3:Instale los paquetes necesarios
Instale los paquetes adicionales necesarios para crear y compilar un kernel de Linux. Ejecute este comando:
sudo apt-get install git fakeroot build-essential
ncurses-dev xz-utils libssl-dev bc flex libelf-dev bison
El comando que usamos arriba instala los siguientes paquetes:
Paquete | Descripción del paquete |
git | Rastrea y hace un registro de todos los cambios durante el desarrollo en el código fuente. También permite revertir los cambios. |
fakeroot | Herramienta de empaquetado que crea un entorno raíz falso para construir el kernel. |
build-essential | Instala herramientas de desarrollo como C, C++, gcc y g++. |
ncurses-dev | Biblioteca de programación que proporciona API para los terminales basados en texto. |
xz-utils | Proporciona una rápida compresión y descompresión de archivos. |
libssl-dev | Admite SSL y TSL que encriptan datos y hacen que la conexión a Internet sea segura. |
bc (Calculadora básica) | Un lenguaje de secuencias de comandos matemático que admite la ejecución interactiva de sentencias. |
flex (Generador de analizador léxico rápido) | Genera analizadores léxicos que convierten caracteres en tokens. |
libelf-dev | Emite una biblioteca compartida para administrar archivos ELF (archivos ejecutables, volcados del núcleo y código objeto) |
bison | Generador de analizador GNU que convierte la descripción gramatical en un programa C. |