Linux及安全实践二——模块
一、模块的编译、生成、测试、删除
1.编写模块代码
编写:gedit 3.c

2.编写Makefile

obj-m :这个变量是指定你要声称哪些模块模块的格式为 obj-m := .o
modules-objs :这个变量是说明声称模块modules需要的目标文件 格式要求 -objs :=
KDIR :这是我们正在运行的操作系统内核编译目录。也就是编译模块需要的环境
M= :指定我们源文件的位置
PWD :这是当前工作路径$(shell )是make的一个内置函数。用来执行shell命令。
3.make

4.加载、测试模块

5.删除模块

二、页表
Linux采用了通用的四级页表。

1.编写代码

2.Makefile

3.Make

4.找到gedit的进程号

5.查看gedit相应地址与相应信息
根据十六进制数8062448找到该进程线性地址。

6.转换为十进制,加载模块

7.测试
使用tail 查看kern.log 文件或者dmesg指令(显示开机信息,查看日志)可以看到我们在函数里输出的部分或全部内容。

最新文章

  1. svn命令
  2. javascript中数组concat()join()split()
  3. 从Wep page到Application
  4. LightOJ 1234 Harmonic Number (打表)
  5. Linux下CPU占用率高分析方法
  6. IOS 如何成为开发者&购买开发者账号 感想
  7. [SQL Server 系] T-SQL数据库的创建与修改
  8. javascript类,对象,实例
  9. @DataProvider ITestContext 参数
  10. Ci 简单分页,保证能实现
  11. eclipse android sdk javadoc
  12. python内置方法
  13. .Net Core 在Linux服务器下部署程序--(2). 部署前需要安装的软件及SDK
  14. keras04 GAN simple
  15. QPS从0到4000请求每秒,谈达达后台架构演化之路
  16. ODI基于源表时间戳字段获取增量数据
  17. goland 中国 caisy qq Czx123456
  18. IOP知识点(3)-Modal.show
  19. hdu 5274 Dylans loves tree (树链剖分 + 线段树 异或)
  20. Shell命令行中特殊字符与其转义详解(去除特殊含义)

热门文章

  1. bcd引导Ubuntu
  2. easyui panel异步获取后台数据在前台显示
  3. CentOS赋予一个普通用户root权限
  4. 互评Beta版本——二次元梦之队——“I Do”
  5. 20162328蔡文琛 大二 十二周课上测试 hash
  6. 我现在对Git的认识
  7. Daily target小队介绍(刘畅,陈杰,杨有存,唐祎琳,王晓哲,邵汝佳)
  8. 个人作业2——APP案例分析
  9. C++判断char*的指向
  10. js 函数讲解