久久建筑网(m.kkreddy.com)致力打造一个专业的建筑学习分享平台! 用户登录 免费注册 | 投诉举报 | 会员中心 | 上传资料
您现在的位置: > 行业资料 > 网络技术 > >>

linux启动流程分析---内核解压缩过程.doc

资料评价:
暂无
生成时间:
2021-06-15
下载权限:
免费会员
文件大小:
34KB
文件类型:
.doc
浏览次数:
2
建筑论坛:
上传会员:
trntg
所属栏目:
网络技术
下载地址:
资料是由会员“trntg”上传到本平台,如有不妥请联系客服。违规侵权投诉
linux启动流程分析---内核解压缩过程。
启动流程分析内核解压缩过程内核压缩和解压缩代码都在目录,表格
启动流程分析内核解压缩过程内核压缩和解压缩代码都在目录,
编译完成后将产生、、、、这几个文件,
是内核的头部文件,负责初始设置;
将主要负责内核的解压工作,它在之后;
文件主要针对的初始化,将在链接时与合并;
是一个中间文件,其实是一个压缩的内核,只不过没有和初始化文件及解压文件链接而已;
是没有--:是压缩过的内核压缩过的内核,就是由、、、组成的。

在完成系统的引导以后并将内核调入内存之后,调用,
这个函数将跳转到的起始位置。如果没有压缩,就可以启动了。
如果压缩过,则要进行解压,在压缩过的头部有解压程序。
压缩过得入口第一个文件源码位置在。
它将调用函数,这个函数在文件中,
又调用进行设置,
然后使用在打印出信息“”后,调用。将内核放于指定的位置。


以下分析文件:
对于各种的输出设定,通过定义宏来统一操作。
设置开始和结束地址,保存。
如果在以上的中,用的是用户模式,则升到超级用户模式,然后关中断。
分析结构,判断是否需要重载内核地址存入偏移量,判断是否为零。
这里是否需要重载内核地址,我以为主要分析、
和三个文件,主要看链接文件的主要段的位置,
=,而对于、的位置只设为,=。
对于这样的结果依赖于,对内核解压的运行方式,也就是说,内核解压前是在内存中还是在上,
因为这里,我们的将压缩内核移到了的位置,我们的压缩内核是在内存从地址开始顺序排列,
因此我们的获得的偏移量是载入地址。接下来的工作是要把内核镜像的相对地址转化为内存的物理地址,即重载内核地址。
需要重载内核地址,将的偏移量加到和中。
清空堆栈空间-。
建立程序运行需要的缓存,并赋于的栈空间。
这时是缓存的结束地址,是的最后执行地址,是境象文件的开始地址。检查是否地址有冲突。
将等于,使后的地址就在的栈之后。
调用文件的函数,解压内核于缓存结束的地方地址之后。此时各寄存器值有如下变化:
为解压后的大小
为执行时的地址
为解压后的起始地址
为类型值
为系统类型值
将代码拷贝之之后+之后,首先清除缓存,而后执行。
将开始的重载于地址处。
清除内容,关闭,将中赋于,执行开始的代码。

下面简单介绍一下解压缩过程,也就是函数实现的功能:
解压缩代码位于,是从源程序中分离出来的。包含了一些对全局数据的直接引用。
在使用时需要直接嵌入到代码中。压缩文件时总是在前字节的范围内寻找重复的字符串进行编码,
在解压时需要一个
  linux启动流程分析---内核解压缩过程 下载地址
进入下载地址列表

猜你还喜欢

建筑工程: 施工组织设计 图纸 论文 方案 安全资料 工艺 建筑软件 节能 专业资料 合同 交底 文本 建筑考试 教程
园林景观: 园林施工方案 园林论文 园林考试 园林表格 景观专业资料 园林图纸 景观设计
暖通空调: 暖通专业资料 暖通软件 技术交底 暖通论文 暖通考试 暖通图纸 暖通施工方案 暖通软件
水利工程: 水利施工方案 水利考试 水利专业资料 水利软件 水利论文
结构工程: 结构施组方案 结构图纸 结构软件 结构课件 工艺工法 结构考试 结构专业资料 结构论文 其他资料
电气工程: 电气施工方案 电气图纸 电气软件 电气论文 电气课件 智能建筑 电气专业资料 电气考试
建筑给排: 给排施组方案 技术交底 给排水专业资料 污水处理 消防工程 给排水图纸 给排水论文 给排水软件
安装工程: 设备安装图纸 安装工程专业资料 安装施组设计 专题
工程造价: 造价法规 造价视频 造价指标 建筑造价 造价考试 水利造价 电力造价 装修造价 其他 安装造价 路桥造价 市政造价 园林造价 造价软件 造价表格 清单实
工程监理: 监理交底 施工监理 监理文档 旁站监理 监理考试 合同表格 监理细则 监理大纲 监理总结 监理月报 监理规划
路桥工程: 合同表格 路桥工艺 路桥论文 路桥交底 安全资料 路桥标书 路桥专业资料 路桥软件 其他资料 路桥图纸 路桥施工方案 路桥考试
装饰装修: 装修施工方案 装修图纸 室内设计 施工工艺 装修技术交底 装修表格 装修资料 建筑文库