美文网首页
静态链接(二)

静态链接(二)

作者: 7bfedbe4863a | 来源:发表于2018-01-23 22:03 被阅读0次
PC平台流行的可执行文件格式:

(可执行文件、动态链接库(dll)、静态链接库(lib)都是以可执行文件的格式存储的)

  • Windows --- PE(Portable Executable)
  • Linux --- ELF(Executable Linker Format)
  1. 可重定位文件
  2. 可执行文件
  3. 共享目标文件(包含了代码和数据,一种是链接器使用这种文件跟其他的共享目标文件和可重定位文件链接,另一种是动态链接器将几个这种文件和可执行文件结合,作为进程映像的一个部分来运行)
  4. 核心转储文件(进城意外终止时,将该进程的内容和其他信息转储到这里)
目标文件什么样子
  • 代码段 : 程序源代码编译后的机器指令(常见名字有.code和.text)
  • 数据段 : 全局变量和局部静态变量(已初始化的放在.data,未初始化的放在.bss里)
  • .bss只是为未初始化的全局变量和局部静态变量预留位置,它没有内容,所以在文件中也不占空间。

相关文章

  • 静态链接(二)

    PC平台流行的可执行文件格式: (可执行文件、动态链接库(dll)、静态链接库(lib)都是以可执行文件的格式存储...

  • 《程序员的自我修养》笔记

    第二章 静态链接 疑问: 问什么静态链接不会把所有代码链接进程序 为什么要静态链接 被隐藏的过程 gcc hell...

  • 操作系统

    • Linux静态链接和动态链接; (转)静态链接和动态链接1、静态链接静态链接方法:#pragma comme...

  • 静态链接

    静态链接 静态链接涉及的内容包含如下 空间地址的分配 符号解析和重定位 静态库链接 本文的测试代码以及其他文件存在...

  • 静态链接

    编译和链接 预处理 编译扫描(词法分析)、语法分析、语义分析(静态语义是编译器所能分析的,动态语义要在运行期才能确...

  • 静态链接

    大多数编译系统提供编译器驱动程序( compiler driver ),它代表用户在需要时调用语言预处理器、编译器...

  • 静态链接

    静态链接 当有两个目标文件时,如何将它们连接起来形成一个可执行文件?其中发生了什么? 使用两个源代码文件作为研究例...

  • 动态链接与静态链接

    什么是静态链接 如何实现静态链接 静态链接的优点与缺点 什么是动态链接 如何实现动态链接 动态链接的优点与缺点 S...

  • seo中的url结构优化

    一、url结构(访问结构)(链接结构) url一般有:静态链接,动态链接,伪静态链接 伪静态对seo来说非常...

  • gcc的一些有用的编译选项

    一、链接静态库 二、自动优化掉未使用的函数

网友评论

      本文标题:静态链接(二)

      本文链接:https://www.haomeiwen.com/subject/mnveaxtx.html