Llamada al sistema, Kernel 3.11.8 de Linux
5. Código fuente de la llamada al sistema
TEXTO
Raúl
11/6/20131 min read
A continuación se añaden los códigos fuente de la nueva llamada al sistema en el directorio emphkernel.
cd /usr/src/linux-3.11.8/kernel
Se crea un archivo en blanco cuyo contenido incluye el código el lenguaje C:
gedit raul.c &
Código fuente
#include <linux/linkage.h> #include <linux/kernel.h> int sys_llamadaRAUL(){ return (2013); }
El header linkage.h contiene la definición de la macro asmlinkage que se encarga de definir la función como visible afuera del archivo en donde se define. Asimismo, el header kernel.h contiene definiciones para funciones utilitarias como printk.
Por otro lado, cualquier llamada al sistema debe ser nombrada con el prefijo “sys_” de lo contrario el Kernel no compilará correctamente. En este caso, la llamada al a sistema se llama llamadaRAUL, por lo que la función implementada en el kernel se llama sys_llamadaRAUL.