深入理解Android:Java虚拟机ART
上QQ阅读APP看书,第一时间看更新

4.1 概述

ELF是Executable and Linkable Format的缩写,它是Unix(包括Linux这样的类Unix)平台上最通用的二进制文件格式。那些使用Native语言比如C/C++开发的程序员几乎每天都会和ELF文件打交道,比如:

·.c/.c++文件编译后得到的.o(或.obj)文件就是ELF文件。

·动态库.so文件是ELF文件。

·.o文件和.so文件链接后得到的二进制可执行文件也是ELF文件。

提示 .oat是一种定制化的ELF文件,所以EFL文件是oat文件的基础,但是oat文件包含的内容和art虚拟机密切相关。所以本章先介绍作为基础的ELF文件格式,而oat文件相关的知识留待后续章节再来介绍。