[tutor] membuat kernel modul

yep, ane anggota baru di blitar linux community, ane mau share tutor jelek nih…. :))

tutor kali ini adalah cara membuat kernel modul…

apakah kernel modul itu? kernel modul adalah sebuah file dengan ekstensi .ko (kernel object file) yang bisa do-load ke dalam kernel… udah ah penjelasannya, mari kita langsung ke source-code nya aja..

1. tulis source code di bawah ini dan simpan dengan nama kmod.c

 

[…]

#ifdef __KERNEL__

#include <linux/kernel.h>

#endif

#include <linux/module.h>

#include <linux/init.h>

 

static int __init __load_kmod(void) {

printk(KERN_INFO “Hello, World!\n”);

 

return 0;

}

 

static void __exit __unload_kmod(void) {

printk(KERN_INFO “Goodbye, World!\n”);

 

return;

}

 

MODULE_LICENSE(“GPL”);

 

module_init(__load_kmod);

module_exit(__unload_kmod);

[…]

 

2. tulis source code di bawah ini dan simpan dengan nama Makefile

 

[…]

obj-m += kmod.o

 

all:

$(MAKE) -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules

clean:

$(MAKE) -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean

[…]

 

3. abis itu compile dengan perintah “make”

4. abis itu load kernel modulmu di kernel dengan perintah “sudo insmod kmod.ko”

5. tampilkan outputnya dengan mengetik perintah “dmesg | tail”, apabila di baris terakhir ada tulisan “Hello, World!”, selamat kernel module pertama ente udah jadi… sekian tutor dari ane…. semoga bermanfaat…. :))