当前位置: 首页 > news >正文

房城乡建设部门户网站泰安九五兴昇网络科技

房城乡建设部门户网站,泰安九五兴昇网络科技,今天国际新闻最新消息10条,英文网站定制公司前言 musl 是一个轻量级的标准C库,建立在系统调用之上,可以认为是【用户态】的C 库,与 glibc 或者 uClibc 属于同一类。 基于 musl 的 gcc 工具链包括交叉编译工具链,可以用于编译 Linux 或者其他的操作系统,如当前 L…

前言

  • musl 是一个轻量级的标准C库,建立在系统调用之上,可以认为是【用户态】的C 库,与 glibc 或者 uClibc 属于同一类。

  • 基于 musl 的 gcc 工具链包括交叉编译工具链,可以用于编译 Linux 或者其他的操作系统,如当前 Lite-OS、RT-Smart 上都采用 musl gcc 作为编译工具链,使用 musl libc作为用户态应用的C 库。

  • musl 基于 MIT 授权,开源、轻量、免费,估计越来越多的操作系统开始采用 musl 作为标准C库

  • 最近也一直在研究 musl libc 的 ldso,也就是动态加载功能,musl 的 动态加载功能集成在 musl libc.so 中。

elf 格式文件

  • musl 本身集成了 动态加载 功能 ldso,初步看了代码,发现支持 elf 格式的动态编译的应用程序加载。

  • 使用 musl gcc 工具链(交叉编译工具链)编译的应用程序,可以通过 readelf -l xxx.elf,查看 elf 文件的是否存在动态链接信息,如果包含则需要使用 musl ldso 对依赖的共享库进行加载

  • 示例: 查看一个动态链接的应用程序是否存在 【解释器段】信息: INTERP 类型的

命令:aarch64-linux-musleabi-readelf.exe -l glib_gio_test_s.elf 或者 readelf.exe -l glib_gio_test_s.elf

发现 存在 INTERP 段信息, [Requesting program interpreter: /lib/ld-musl-aarch64.so.1]

在这里插入图片描述

查看 elf 文件依赖的共享库

  • 静态编译的 elf,没有 动态链接信息,也不依赖 共享库,而动态编译链接的 elf 文件,存在动态链接信息,通过 aarch64-linux-musleabi-readelf.exe -d glib_gio_test_s.elf 或者 readelf.exe -d glib_gio_test_s.elf,可以查看依赖的共享库

在这里插入图片描述

查看 elf 的头部信息

  • 使用 aarch64-linux-musleabi-readelf.exe -h glib_gio_test_s.elf 或者 readelf.exe -h glib_gio_test_s.elf 可以查看应用程序 elf 的头部信息,如获取 入口函数地址等

在这里插入图片描述

查看 elf 符号信息

  • 所谓 elf 符号,就是一些变量名、函数名、数组等,依旧可以通过 readelf 来查看

aarch64-linux-musleabi-readelf.exe -s glib_gio_test_s.elf 或者 readelf.exe -s glib_gio_test_s.elf,注意由于有些 应用程序 elf 文件的符号特别多,所以可以输出到一个文本文件,然后使用文件查看工具进行查看

aarch64-linux-musleabi-readelf.exe -s glib_gio_test_s.elf > sym_01.s ,这里 把符号导出到 sym_01.s 文件,然后用文本查看工具打开查看

在这里插入图片描述

elf 查看工具

  • 以上是 elf 文件 通过 readelf 进行查看,那么还有其他的工具可以查看 elf 文件吗?

  • 推荐使用 :EmEditor 二进制查看工具,可以查看、搜索、编辑二进制文件, elf 文件其实也是二进制文件。

在这里插入图片描述

  • 推荐使用 Die,大名鼎鼎的 Detect It Easy 工具进行 elf 文件的解析查看,可以二进制查看、反汇编、查看 各个段、节等信息

  • 使用 die 打开一个 elf 文件

在这里插入图片描述

  • 使用 die 查看 elf 文件信息: elf 头部
    在这里插入图片描述

小结

  • 本篇主要记录 elf 文件的查看,初步了解一下 要动态加载的 文件,也就是 研究动态加载之前,一定要熟悉 elf 格式的文件,文件组成、文件头部、文件 Program Header,文件的各个段,文件的 节,动态加载需要加载 elf 文件的哪些内容

  • 当前了解到, 一个 elf 文件 只有一个 头部、有一个或者多个 Program Header,一个 Program Header 的大小是固定的,也就是一个结构体,里面的内容描述一个 段Segment 信息, 一个 elf 文件有多少个 Program Header? 这个需要通过解析 elf 文件的 头部: elf Header 获取到

  • 建议查看 elf 的标准规范,熟悉 elf ,熟悉 elf 组成、加载机制,这样对后面研究动态加载非常重要。

http://www.yayakq.cn/news/23276/

相关文章:

  • 网站建设先有域名然后呢app制作软件教程
  • 汕头老城旅游攻略南阳网站推广优化公司哪家好
  • 网站服务器地址查询奢侈品网站设计
  • 宣传推广的形式有哪些北海seo快速排名
  • 肥西县建设局资询网站简述seo的基本步骤
  • 商业网站建立公司网站制作企业
  • 做标书的视频网站wordpress内容编辑器
  • 惠济郑州网站建设有什么网站开发软件
  • 买卖网站建设网站维护建设费应计入科目
  • 做游戏网站有钱赚吗广东省建设工程总监扣分查询网站
  • 建设银行官方网站首页个人登录济南网络平台设计
  • 手机网站开发session贵阳室内设计学校
  • 烟台免费做网站私有云可以建设网站
  • 灵台县住房和城乡建设局网站网站制作先学什么
  • 动漫人物做羞羞事的网站网络营销是什么工作主要干啥
  • 常用seo站长工具越野车网站模板
  • 效益型网站软件外包公司绩效考核
  • 朝阳专业做网站域名数和网站数
  • 如何查询网站空间无主体网站是什么意思
  • django做视频网站中国建设银行官方网站 认证
  • 用wordpress做企业网站室内设计培训班学费一般多少
  • 图片做记录片的是哪个网站做用户名和密码网站页面
  • 怎样用vs做简单网站保密和档案网站建设方案
  • 公司设计网站多少钱国外网站 网站 推荐
  • 上海网站排名优化费用做抽奖网站合法吗
  • 如何迁移wordpress网站cms网站怎么做
  • 网站源码和模板的区别摄影网站的模板
  • 天津网站排名提升多少钱苏宁易购网站建设规划
  • 网站备案到期了怎么办私人网站设计公司公司
  • 通辽建设网站公众号小程序搭建