您的位置:首页 > 其它

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

2013-12-02 14:42 134 查看
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)和对齐。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: