
Linux
文章平均质量分 76
xie_star
喜欢新鲜的生活
展开
-
Linux内核模块-The__init and __exit宏(三)
1.先看程序的头文件(参考hello.c)原创 2014-04-06 19:54:38 · 1310 阅读 · 0 评论 -
Linux内核模块-printk函数(四)
1.先看程序的头文件(参考hello.c) # include /* Need by all modules */# include /* Need for HERN_INFO */# include /* Need for the macros */2.解析printk函数# include /* Need for HERN_INFO */原创 2014-04-06 19:55:46 · 2077 阅读 · 0 评论 -
Linux内核模块-实例4(二)
2.4 Hello World(P4):多文件模块环境:Linux内核 2.6 1.示例代码(start.c和stop.c)第一个文件start.c原创 2014-04-06 19:53:04 · 772 阅读 · 0 评论 -
Linux内核模块-实例3(二)
2.3 Hello World(P3):命令行参数传递环境:Linux内核 2.6 1.示例代码(hello-2.c)原创 2014-04-06 19:50:13 · 803 阅读 · 0 评论 -
Linux内核模块-实例1(二)
环境:Linux内核 2.6 1.简单的内核模块实例(hello.c)原创 2014-04-06 19:43:50 · 1157 阅读 · 0 评论 -
Linux内核模块-实例2(二)
2.2 Hello World (P2) :许可权限和模块的声明环境:Linux内核 2.6 1. 内核模块实例(book.c)原创 2014-04-06 19:47:38 · 856 阅读 · 0 评论 -
Linux内核模块-初识LKM(一)
一、模块机制产生的原因 内核模块是Linux内核向外部提供的一个插口,其全称为动态可加载内核模块(Loadable Kernel Module,LKM),简称模块。Linux内核之所以提供模块机制,是因为它本身是一个单内核(monolithic kernel)。单内核的最大优点是效率高,因为所有的内容都集成在一起,但其缺点是可扩展性和可维护性相对较差,模块机制就是为了弥补这一缺原创 2014-04-06 17:49:15 · 4659 阅读 · 0 评论 -
Linux内核模块-剖析内核模块(六)
1.内核模块对象 LKM 只不过是一个特殊的可执行可链接格式(Executable and Linkable Format,ELF)对象文件。通常,必须链接对象文件才能在可执行文件中解析它们的符号和结果。由于必须将 LKM 加载到内核后 LKM 才能解析符号,所以 LKM 仍然是一个 ELF 对象。您可以在 LKM 上使用标准对象工具(在 2.6 版本中,内核对象带有后缀 .ko,)。例原创 2014-04-06 20:07:03 · 855 阅读 · 0 评论 -
Linux内核模块-导出符号表(五)
一、简介 如果一个模块需要向其他模块导出符号(方法或全局变量),需要使用: EXPORT_SYMBOL(name); EXPORT_SYMBOL_GPL(name); 注意:符号必须在模块文件的全局部分导出,不能再函数部分导出。 更多信息可参考 文件 显示所有导出的符号原创 2014-04-06 20:03:08 · 4125 阅读 · 0 评论 -
回车符和换行符区别【Windows和Linux换行符的区别】
回车符号和换行符号产生背景 关于“回车”(carriage return)和“换行”(line feed)这两个概念的来历和区别。在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。转载 2014-06-26 15:42:45 · 1101 阅读 · 0 评论