在 CentOS 系統中,kworker 是一個內核線程,用于處理來自內核空間的異步任務
sudo yum install kernel-devel kernel-headers gcc make
hello_module.c 的文件,并添加以下內容:#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/init.h>
static int __init hello_init(void) {
printk(KERN_INFO "Hello, World!
");
return 0;
}
static void __exit hello_exit(void) {
printk(KERN_INFO "Goodbye, World!
");
}
module_init(hello_init);
module_exit(hello_exit);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Your Name");
MODULE_DESCRIPTION("A simple Linux kernel module");
make -C /lib/modules/$(uname -r)/build M=$(pwd) modules
sudo insmod hello_module.ko
dmesg | tail
您應該能看到類似于以下內容的輸出:
[ 1234.567890] Hello, World!
sudo rmmod hello_module
sudo reboot
請注意,這里的示例僅用于演示如何在 CentOS 系統中編譯和加載內核模塊。實際上,kworker 與內核模塊沒有直接關系。kworker 是內核線程,用于執行異步任務,而內核模塊是 Linux 內核的可擴展部分,用于添加新功能和驅動程序。