Publicidad
Publicidad

RSS Drivers

Configurar un entorno de desarrollo para el Kernel con Eclipse

4 Comentarios
Configurar un entorno de desarrollo para el Kernel con Eclipse

addEventListener('load', function (event) { prettyPrint() }, false);

Lo más importante a la hora de desarrollar módulos para el Kernel de Linux es sin duda configurar un entorno de desarrollo para el Kernel con Eclipse o con cualquier otro IDE a tu elección y con el que te sientas cómodo. Yo me siento muy cómodo con Eclipse, así que voy a hacerlo con él, puedes utilizar la información en este artículo uses Eclipse o no, lo único que cambia es el modo de depurar.

Doy por hecho que el lector conoce la forma de instalar Eclipse en su sistema a la vez que el Kernel de Linux. Para el objetivo del artículo es indiferente si desarrollamos sobre un Kernel descargado desde Kernel.org o es un Kernel específico con parches aplicados de una distribución.

Para realizar este artículo voy a utilizar un Kernel 3.0 descargado desde Kernel.org y la versión Indigo de Eclipse. Por supuesto, tú puedes utilizar el Kernel que más rabia te de o el que más te guste, no afecta para nada el desarrollo y desenlace del mismo.

Leer más »

Programando módulos para el Kernel de Linux

8 Comentarios
Programando módulos para el Kernel de Linux

addEventListener('load', function (event) { prettyPrint() }, false);



Hoy doy comienzo a una serie de artículos de introducción a la programación de módulos para el Kernel de Linux. A diferencia de cuando programamos aplicaciones de escritorio, sistemas o servidores, cuando programamos módulos para el Kernel de Linux, un segmentation fault supone el cuelgue total del sistema y la programación debe ser extremadamente cuidadosa.

No voy a hablaros acerca de lo que es Linux, o de que requisitos debe cumplir un sistema para que sea POSIX Compilant. Voy a hablaros sobre como se estructuran las fuentes del Kernel, como se compilan y como podemos crear y cargar un módulo simple en nuestro sistema. Doy por hecho que sabes como descargar las fuentes del Kernel de tu distribución o bien un Kernel genérico de Kernel.org.

Es necesario por parte del lector tener conocimientos sobre el sistema UNIX y sobre sistemas operativos en general, saber la diferencia entre un system call y un library call y tener unos conocimientos medios en el lenguaje de programación C. No soy un gurú de C ni del Kernel seguramente tenga muchos fallos y cosas que pulir.

Leer más »
Publicidad
Publicidad
Inicio
Inicio

Ver más artículos