嵌入式 编译器的标准EABI与OABI

原创 2013年12月02日 14:42:00
1.  什么是ABI 
ABI,application binary interface (ABI),应用程序二进制接口。
既然是 接口,那就是某两种东西之间的沟通桥梁,此处有这些种情况:
A。应用程序<-> 操作系统;
B。应用程序<-> (应用程序所用到的)库
C 。应用程序各个组件之间
类似于API的作用是使得程序的代码间的兼容,ABI目的是使得程序的二进制(级别)
的兼容。
2.  什么是OABI 和EABI 
OABI中的O,表示“Old”,“Lagacy”,旧的,过时的,OABI就是旧的/老的ABI。
EABI中的E,表示“Embedded”,是一种新的ABI。
EABI有时候也叫做GNU EABI。
OABI和EABI都是专门针对ARM的CPU来说的。
3. EABI的好处/为何要用EABI 
A. 支持软件浮点和硬件实现浮点功能混用
B. 系统调用的效率更高
C. 后今后的工具更兼容
D. 软件浮点的情况下,EABI的软件浮点的效率要比OABI高很多。
4.  OABI和EABI的区别
两种ABI在如下方面有区别:
A.调用规则(包括参数如何传递及如何获得返回值)
B.系统调用的数目以及应用程序应该如何去做系统调用
C.目标文件的二进制格式,程序库等
D.结构体中的 填充(padding/packing)和对齐。

交叉编译器,ARM EABI编译器区别

首先记录一个下载arm-none-linux-gnueabi-gcc编译器的网址http://www.veryarm.com/arm-none-linux-gnueabi-gcc一. 命名规则交叉编译...
  • abcamus
  • abcamus
  • 2016年11月01日 10:15
  • 879

EABI和OABI的区别

ARM  Linux  arm-linux-gcc  EABI OABI  http://blog.csdn.net/dian_technology/article/details/583497...
  • feihongwang
  • feihongwang
  • 2013年04月01日 21:52
  • 464

ARM交叉编译器以及ABI/EABI

一. 什么是ABI和EABI 1) ABI: 二进制应用程序接口(Application Binary Interface (ABI) for the ARM Architecture)在计算机中,应...
  • SoaringLee_fighting
  • SoaringLee_fighting
  • 2017年04月17日 18:59
  • 381

嵌入式Linux开发工具之gcc编译器

gcc的简介编译器gcc所具备的优点1、GNU CC(简称为gcc)是GNU项目中符合ANSI C标准的编译系统,能够编译用C、C++和Object C等语言编写的程序。gcc不仅功能强大,而且可以编...
  • Julia_Jiang
  • Julia_Jiang
  • 2016年10月29日 22:56
  • 556

标准C/C++发展史以及支持该标准的编译器

本文主要讲述标准C/C++语言的发展历程,各个版本的发展以及支持该标准的一些编译器 1.发展史         在谈标准C/C++语言发展史之前,我们不得不先谈谈标准,既然是标准那就是说大家都得...
  • lucn106
  • lucn106
  • 2013年02月04日 17:58
  • 502

编译Linux内核—浅谈EABI和OABI

http://blog.csdn.net/ce123/article/details/6925375 引言          初学嵌入式linux开发的时候大家都用的工...
  • ztguang
  • ztguang
  • 2016年02月01日 00:00
  • 176

嵌入式Linux-gcc编译器

嵌入式入门-gcc编译器 一 GCC特点 GNU推出的功能强大,性能优越的多平台编译器。gcc可以在多种硬体平台上编译 出可执行程序,其执行效率与一般的编译器 相比平均效率要高20%~30%。 二...
  • qq_22075977
  • qq_22075977
  • 2015年04月20日 18:18
  • 1240

使用CCS时遇到的的一些麻烦

学习CCS编程是遇到的问题
  • qq_35538845
  • qq_35538845
  • 2017年11月19日 18:31
  • 113

Linux:C语言的标准和编译器

本文简要介绍C语言标准和历史和C语言编译器。
  • ddk3001
  • ddk3001
  • 2016年02月02日 09:15
  • 1113

Visual Studio2013的C语言编译器对C99标准的支持情况

Visual Studio2013终于开始比较良好地支持C99特性了。在此之前,如果用C语言写代码的话,变量名都需要放到函数体的前面部分,代码写起来十分别扭。...
  • liqiang981
  • liqiang981
  • 2016年01月13日 13:39
  • 1054
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:嵌入式 编译器的标准EABI与OABI
举报原因:
原因补充:

(最多只允许输入30个字)