考试网 >> IT认证 >> Linux >> Linux指导 >> Linux系统可卸载内核模块完全指南(上)

Linux系统可卸载内核模块完全指南(上)

发布时间:2006-06-28 10:06     点击:
分页:上一页  1 [2] 3 4 5 6 7 8  下一页

  return 0;

  }

  void cleanup_module(void)

  {

  printk("<1>Bye, Bye");

  }

   你可能会奇怪为什么在这里我用printk(....)而不是printf(.....).在这里你要明白内核编程是完全不同于普通的用户环境下的编程 的.你只能使用很有限的一些函数(见1.6)仅使用这些函数你是干不了什么的.因此,你将会学会如何使用你在用户级别中用的那么多函数来帮助你入侵内核. 耐心一些,在此之前我们必须做一点其他的.....

[Page: ]



  上面的那个例子可以很容易的被编译:

  # gcc -c -O3 helloworld.c

  # insmod helloworld.o

  OK,现在我们的模块已经被加载了并且给我们打印出了那句很经典的话.现在你可以通过下面这个命令来确认你的LKM确实运行在内核级别中:

  # lsmod

  Module     Pages  Used by

  helloworld     1    0

  这个命令读取在 /proc/modules 的信息来告诉你当前那个模块正被加载.'Pages'

  显示的是内存的信息(这个模块占了多少内存页面).'Used by'显示了这个模块被系统

  使用的次数(引用计数).这个模块只有当这个计数为0时才可以被除去.在检查过这个以后,你可以用下面的命令卸载这个模块

1.2什么是系统调用

[Page: ]



  #define _SYS_SYSCALL_H

  #define SYS_setup 0
分页:上一页  1 [2] 3 4 5 6 7 8  下一页
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
发表评论: 匿名发表 用户名: 查看评论
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
在本站搜索相关信息
2003-2005 Ksw123.com All Rights Reserved. - TOP
Copyright © 2006 Ksw123.com. All rights reserved.中国考题网 版权所有