可执行文件

可执行文件

2024 南京大学《操作系统:设计与实现》
可执行文件

什么是可执行文件?

学习操作系统前

  • 那个 “双击可以弹出窗口的东西”

center

学习操作系统后

  • 一个操作系统中的对象 (文件)
  • 一个字节序列 (我们可以把它当字符串编辑)
  • 一个描述了状态机初始状态的数据结构 (打扰了)
2024 南京大学《操作系统:设计与实现》
可执行文件

可执行文件:进程初始状态的描述

回顾:System V ABI

  • Section 3.4: “Process Initialization”
    • 只规定了部分寄存器和栈
    • 其他状态 (主要是内存) 由可执行文件指定

ELF: Executable and Linkable Format

  • binutils 中的工具可以让我们查看其中的重要信息
    • 《计算机系统基础》常备工具
      • readelf & objdump
    • binutils 里原来还有不少宝藏!
2024 南京大学《操作系统:设计与实现》