Lectlinux04内核模块ch4课程.pptVIP

  • 0
  • 0
  • 约4.7千字
  • 约 24页
  • 2016-12-08 发布于江苏
  • 举报
内核模块Loadable Kernel Module 本章内容: 什么是内核模块 内核模块机制 内核模块与应用程序的区别 内核模块的使用 举例,helloworld.c insmod lsmod rmmod ksyms 模块实现机制 什么是内核模块 模块在内核空间运行,实际上是一种目标对象文件,没有链接,不能独立运行,但是其代码可以在运行时链接到系统中作为内核的一部分运行或从内核中取下,从而可以动态扩充内核的功能 这种目标代码通常由一组函数和数据结构组成,如用来实现一种文件系统、一个驱动程序或其他内核上层功能。 模块完整叫法:动态可加载内核模块(Loadable Kernel Module LKM) 内核模块的优点 使得内核更加紧凑和灵活。 修改内核时,不必全部重新编译整个内核。系统如果需要使用新模块,只要编译相应的模块,然后使用insmod将模块插入即可。 模块不依赖于某个固定的硬件平台。 模块的目标代码一旦被链接到内核,它的作用域和静态链接的内核目标代码完全等价。 内核模块的缺点 由于内核所占用的内存是不会被换出的,所以链接进内核的模块会给整个系统带来一定的性能和内存利用方面的损失。 装入内核的模块就成为内核的一部分,可以修改内核中的其他部分,因此,模块的使用不当会导致系统崩溃。 为了让内核模块能访问所有内核资源,内核必须维护符号表,并在装

文档评论(0)

1亿VIP精品文档

相关文档