首页 > 系统相关 >linux zImage 自解压

linux zImage 自解压

时间:2023-06-04 19:57:48浏览次数:60  
标签:解压 ZRELADDR boot zImage 程序 内核 linux arm

顶层的vmlinux: elf文件,反汇编得到的是未压缩的内核的反汇编文件,这个vmlinux才是真正的Linux内核。

arch/arm/boot/compressed/vmlinux: elf文件,包含解压缩程序、Image二进制代码的压缩版;反汇编,从指令执行地址可知,只有解压缩程序的汇编代码。

 

zImage包含了自解压程序和内核镜像程序。

自解压程序的链接文件位于 arch/arm/boot/compressed/vmlinux.lds.S。链接脚本指定了程序入口ENTRY(_start)

程序入口位于arch/arm/boot/compressed/head.S。自解压程序head.S需要确认解压后的内核映像绝对地址,对于IMAX6ULL,就是0x80008000

* (1)定义了CONFIG_AUTO_ZRELADDR
*      ZRELADDR是已解压内核最终存放的物理地址
*      如果AUTO_ZRELADDR被选择了, 这个地址将会在运行是确定:
*      将当pc值和0xf8000000做与操作,
*      并加上TEXT_OFFSET(内核最终存放的物理地址与内存起始的偏移)
*      这里假定zImage被放在内存开始的128MB内
* (2)没有定义CONFIG_AUTO_ZRELADDR
*      直接使用zreladdr(此值位于arch/arm/mach-xxx/Makefile.boot文件确定)

 

标签:解压,ZRELADDR,boot,zImage,程序,内核,linux,arm
From: https://www.cnblogs.com/god-of-death/p/17456188.html

相关文章

  • Linux下高并发socket最大连接数所受的各种限制
    1、修改用户进程可打开文件数限制在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制(这是因为系统为每个TCP连接都要创建一个socket句柄,每个socket句柄同时也是一个文件句柄)。可使用ulim......
  • Linux shell command cut All In One
    LinuxshellcommandcutAllInOnecut截取指定符号等号后面的字符串cut截取等号后面的字符串#获取env$env#获取登录当前用户信息$env|grepUSER$env|grepUSER|cut-d"="-f2#获取登录当前用户信息$whomai$echo$USERdemos#!/usr/bin/env......
  • Linux & Window挂着网络磁盘
    :[url]http://feixiang123.blog.51cto.com/285543/137406[/url]在Windows与Linux下Samba共享文件夹以及映射的详细使用[url]http://wenku.baidu.com/view/2ab6906e58fafab069dc02ad.html[/url]][b]在linux下挂载windows系统的网络共享磁盘:[/b]mount-t......
  • linux操作
    vim的工作模式vim一般有6种工作模式。普通模式:使用vim打开一个文件时默认模式,也叫命令模式,允许用户通过各种命令浏览代码、滚屏等操作。插入模式:也可以叫做编辑模式,在普通模式下敲击i、a或o就进入插入模式,允许用户通过键盘输入、编辑。命令行模式:在普通模式下,先输入冒号:,接着......
  • 【Linux文件系统】文件描述符fd是什么?
    fd是什么?fd是Filedescriptor的缩写,即文件描述符,fd是一个非负证书,本质是一个索引值。当打开一个文件时,内核向进程返回一个文件描述符(open系统调用返回得到),后续read、write这个文件时,只需要用这个文件描述符来标识这个文件,将其作为参数传入read、write。fd的不同值代表什么?0......
  • 如何创建或解压asar文件
     https://www.cnblogs.com/cutewrp/p/14723913.htmlnpminstall-gasar 注意!cd和路径之间要空格!!!然后输入如下命令:asarpack./app.asar过一会儿,你会发现,它给你弹出一个命令行。像这样:C:\Users\username\Desktop\code>这时,你再打开这个文件夹,你就会发现,多了一......
  • 《Linux就该这么学》--本书组织结构
    部署虚拟环境安装Linux系统:新手必须掌握的Linux命令:管道符、重定向与环境变量:Vim编辑器与Shell命令脚本:用户身份与文件权限:存储结构与磁盘划分:使用RAID与LVM磁盘阵列技术:iptables与firewalld防火墙:使用ssh服务管理远程主机:使用Apacha服务部署静态网站:使用vsftpd服务传......
  • Linux服务器管理系统wdcp v2.5.7版本发布
    wdcp(WDlinuxControlPanel)是一套用PHP开发的Linux服务器管理系统,旨在易于使用和管理Linux服务器,通过web页面操作就可以管理服务器和虚拟主机.简单,方便,易操作.只有Linux版本,没有windows版本,让你方便地使用和管理Linux服务器,让不懂Linux的人也可以用Linux做服务器了.支......
  • Linux软件收集
    [color=red][b]ISPConfig[/b][/color]是Linux的一款开源的虚拟主机管理程序,带Web控制面板,可通过Web控制面板管理虚拟主机、开设网站、开设邮箱、开设和管理mysql数据库、支持DNS解析和监控服务器运行状况,IPTable防火墙Shell服务管理等功能。支持中文。......
  • Kali Linux中使用Vysor对Android设备进行投屏
    在Window有很多Android投屏软件,Linux相对较少,在网上查找大部分的人都是使用的scrcpy这个工具,由于在最新版中Kali无法自带的apt仓库下载该软件┌──(junglezt㉿Ubuntu)-[~]└─$sudoaptinstallscrcpy正在读取软件包列表...完成正在分析软件包的依赖关系树...完成正在读......