什么是模块,模块和应用程序的区别,模块的好处

1.什么是模块 :模块是在内核空间运行的程序实际上是一种目标对象文件,没有链接,不能独立运行,但是其代码可以在运行时链接到系统中作为内核的一部分运行或从内核中取下,可以动态的扩展内核的功能。 


2.内核模块和应用程序的比较

应用程序: 模块程序:
入口: main() init_modle()
出口: 无 cleanup_module()
编译: gcc -c gcc -c -DMODULE -D__KERNEL__
连接: gcc insmod
运行: 直接运行 insmod
调试: gdb kdbug,kdb,kgdb等内核调试工具
文件类型:EXEC(可执行文件) REL(可重定位文件)

3.模块机制的优缺点:
优点:
1,使得内核更加紧凑灵活.
2,修改内核时, 不必重新编译整个内核.
3,模块可以不依赖于某个固定的硬件平台,即使它依赖于某系统特殊的硬件特点
4,模块的目标代码一旦被链接到内核,它的作用和静态链接的内核目标代码完全等价.所以当调用模块函数时,无须显式的消息传递.

缺点:模块机制带来安全上的隐患
1,截获系统调用.
2,修改输出符号表.
3,通过修改系统调用,使模块自己隐性.
4,重定向文件操作.
5,修改文件属主.
6,隐藏进程.
7,重定向可执行文件.
8,通过修改系统调用sys_socketcall,使得系统在收到指定数据包后打开后门
9,TTY劫持.
10,病毒.
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值