Se crea el archivo para compilar con las siguientes caracteristicas:
------------------------------------------- modulo.c ----------------------------------
#include
#include
#include
#include
#include
static int __init hola(void)
{
printk(KERN_INFO "El modulo esta siendo cargado.\n");
printk(KERN_INFO "El user space del proceso es '%s'\n", current->comm);
printk(KERN_INFO "El PID es %i\n", current->pid);
return 0; // Necesario para indicar que todo ha salido bien
}
static void __exit adios(void)
{
printk(KERN_INFO "El modulo esta siendo removido.\n");
}
module_init(hola); // lo que se debe llamar al cargar un modulo
module_exit(adios); // lo que se debe llamar al remover un modulo
MODULE_AUTHOR("Autor: Lo que quieran");
MODULE_AUTHOR("Mas cosas para agregar");
MODULE_LICENSE("GPL");
MODULE_DESCRIPTION("Lo que quieras");
------------------------------------------- modulo.c ----------------------------------
Se crea el archivo Makefile
------------------------------------------- Makefile ----------------------------------
obj-m := modulo.o
------------------------------------------- Makefile ----------------------------------
Para crear el modulo:
# make -C /usr/src/linux-source-2.6.33 M=$PWD modules
Se debio crear el archivo modulo.ko para instalarlo solo hacer:
# insmod modulo.ko
Para ver que el modulo se cargo bien:
# dmesg | tail
No hay comentarios:
Publicar un comentario