Estoy haciendo un módulo de kernel y necesito un poco de ayuda.

Imagen de makyramallo_22
0 puntos

Hola a todos!

Hice un pequeño módulo de kernel que consiste en crear una entrada en el /proc:

#include 
#include 
#include 
#include 
#include 
#include 

static struct proc_dir_entry *proc_entry;

ssize_t fortune_write( struct file *filp, const char __user *buff,
                        unsigned long len, void *data )

{
   printk("Soy write\n");
}

int fortune_read( char *page, char **start, off_t off,
                   int count, int *eof, void *data )
{
   printk("Soy read\n");
}

int minit_module(void)
{
   printk("Hola\n");

    proc_entry = create_proc_entry( "pepe", 0644, NULL );
    if (proc_entry == NULL) {
      printk(KERN_INFO " Couldn't create proc entry\n");
    }
    else {
      proc_entry->read_proc = fortune_read;
      proc_entry->write_proc = fortune_write;

      proc_entry->owner = THIS_MODULE;
      printk(KERN_INFO " Module loaded.\n");
    }
   return 1;
}

void mcleanup_module(void)
{
   printk("Chau\n");
   return;
}

module_init(minit_module);
module_exit(mcleanup_module);
MODULE_LICENSE("GPL");

Lo compilé y me funciona el tema es que ahora me gustaría poder ver en la terminal la entrada. Estuve recorriendo la documentación y el foro antes de molestarlos para ver si conseguía alguna ayudita pero no he encontrado nada al respecto.

Si alguien hizo algo similar en algún momento y me puede ayudar se los agradezco! =)

Muchas Gracias por su tiempo!

Imagen de alexjota
+1
0
-1

Hola!
te referis a ver el archivo pepe en /proc?
al hacer insmod no te aparece en /proc?

yo agregaria en el m_cleanup_module el
remove_proc_entry("pepe", &proc_root)
para borrar el entry y que no te pinche todo despues al hacer rmmod.

espero te sirva.
saludos
A.

+1
0
-1