1.内核模块的文件格式elf

elf分为三部分:头部ELF header ,中间Section, 尾部Section header table

(1).Elf header部分   大小52字节

e_type 表明文件类型,驱动值为1

e_shoff 表明Section header table部分在文件中的偏移量

e_shentsize 表明Section header table部分中每个entry的大小

e_shnum  表明entry的数量

e_shstrndx

(2).Section部分

elf文件主体,位于文件视图中间部分的一个连续区域。但模块被内核加载时,会根据各自属性被重新分配到新的内存区域

(3) Section header table部分

e_entry Entry point address: 0x8048320
入口地址,规定ELF程序的入口虚拟地址,操作系统在加载完成该程序后,从这个地址开始执行进程的指令。可重定位文件一般没有入口地址,则这个值为0

对这个字段的理解不知道对不对,以后自己回头验证下。这个地址是个虚拟地址,所以不同模块可以有相同的address,在运行的时候他会映射到相同的虚拟地址上,但从虚拟地址映射到物理地址的时候,会由于分页机制,把他们映射到不同的物理地址上(有可能相同)。所以不同的模块,这个地址相同也是没关系的

第一章 内核模块 elf文件相关推荐

  1. 第一章 Silicon labs BLE 开发介绍

    Silicon labs BLE 开发人员指南 介绍 该文档涵盖了各个方面的发展,并且是对使用C开发的所有运行Bluetooth堆栈的Wireless Gecko产品的所有人的重要参考. 该文档涵盖以 ...

  2. ELF文件的加载和动态链接过程

    本文的目的:大家对于Hello World程序应该非常熟悉,随便使用哪一种语言,即使还不熟悉的语言,写出一个Hello World程序应该毫不费力,但是如果让大家详细的说明这个程序加载和链接的过程,以 ...

  3. 存储服务器设置和文件对拷,思科CNNA中文教程-第一章路由器配置和文件管理(上)...

    第一章 路由器配置和文件管理 1.1 通过TFTP来配置路由器 提问:使用TFTP来加载路由器的配置文件 回答: Router1#copy tftp://172.25.1.1/NEWCONFIG ru ...

  4. 鸟哥的Linux私房菜(基础篇)- 第七章、Linux 文件与目录管理

    第七章.Linux文件与目录管理 最近升级日期:2009/08/26 在第六章我们认识了Linux系统下的文件权限概念以及目录的配置说明.在这个章节当中,我们就直接来进一步的操作与管理文件与目录吧!包 ...

  5. 《linux内核设计与实现》第一章

    第一章Linux内核简介 一.unix 1.Unix的历史 Unix是现存操作系统中最强大和最优秀的系统. --1969年由Ken Thompson和Dernis Ritchie的灵感点亮的产物. - ...

  6. Kali Linux Web 渗透测试秘籍 第一章 配置 Kali Linux

    第一章 配置 Kali Linux 作者:Gilberto Najera-Gutierrez 译者:飞龙 协议:CC BY-NC-SA 4.0 简介 在第一章中,我们会涉及如何准备我们的 Kali 以 ...

  7. linux内核测试指南 第一章

    linux内核测试指南 第一章 内核,补丁,内核树 和 编译 1.1 内核 Linux内核的当前版本通常可以从linux内核档案网站(http://www.kernel.org/)以一个大的压缩文件的 ...

  8. Linux内核设计与实现(1)第一章:Linux内核简介

    Linux内核设计与实现(1)第一章:Linux内核简介 1. linux历史及与Unix关系 2. 内核组成 3. 用户空间和内核空间 4. 系统调用 5. 中断 6. Unix强大的原因 7. L ...

  9. Linux内核分析 读书笔记 (第一章、第二章)

    第一章 Linux内核简介 1.1 Unix的历史 Unix很简洁,仅仅提供几百个系统调用并且有一个非常明确的设计目的. 在Unix中,所有东西都被当做文件,这种抽象使对数据和对设备的操作是通过一套相 ...

最新文章

  1. AMNO.6 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123 输入 一个不大于5位的数字
  2. java与 C++ 之间进行 SOCKET 通讯要点简要解析
  3. 人类史上首张黑洞照片发布!
  4. 最简单java设计模式:工厂方法模式
  5. 公安部身份证阅读器模块SAM通讯协议
  6. python小应用之整理手机图片
  7. DNS服务启动时卡在:Generating /etc/rndc.key:
  8. JSP内置 对象(下)
  9. Linux中ELF格式文件介绍
  10. linux_shell/windows_powershell_变量/环境变量Path的分行/换行查看/关键字搜索环境变量是否已经存在相关的变量的一些函数(cmdlet)表达式
  11. 怎样用html播放喜马拉雅音频文件格式,喜马拉雅音频提取方法
  12. magisk下载里显示没有模块_magisk框架
  13. java实现微信公众号的模板消息推送
  14. Air780E模块PPP应用开发指南
  15. 华为设备配置基于MSDP的Anycast RP
  16. 360极速浏览器兼容模式
  17. MT4开发 之开发自己的数据源系统(dde UniversalDDEConnector )
  18. 数据结构的小知识点(初学者使用)“朝闻道”知识分享大赛
  19. android studio scala插件,在Android Studio中使用Scala和Java
  20. 2016年11月30日 angularJS input=file 绑定change事件

热门文章

  1. 初五迎财神!即使没有年终奖,也要来一发红包!
  2. Spring Cloud Alibaba基础教程:Sentinel Dashboard同步Apollo存储规则
  3. 别看不起分区表:我要为你点个赞
  4. 使用Swagger2Markup实现API文档的静态部署(一):AsciiDoc
  5. 缓存穿透、缓存并发、热点缓存之最佳招式
  6. linux系统各文件夹的作用,linux系统文件夹的作用 good
  7. catia 如何提取cgr面_CATIA 创成式外形设计精品课程
  8. 衡阳技师学校计算机系,2017级计科师范专业到衡阳技师学院见习
  9. win10 tensorrt安装 踩坑记录
  10. 相似度矩阵遍历 python