Chinaunix首页 | 论坛 | 博客
  • 博客访问: 861360
  • 博文数量: 133
  • 博客积分: 7117
  • 博客等级: 少将
  • 技术积分: 1846
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-16 21:30
文章分类

全部博文(133)

文章存档

2012年(1)

2011年(4)

2010年(2)

2009年(57)

2008年(69)

分类: C/C++

2009-02-02 15:11:12

android eabi lib

Android SDK里面所带的二进制库生成全部是EABI兼容的, 那么什么是EABI? 对
我们有什么意义呢?

1.这里现介绍一下什么是EABI(Embedded Application Binary Interface)

EABI最早是从powerPC 在 UNIX V5 的ABI(Application Binary
Interface)的补充的基础上构建的, 他的木表示减少内存使用和优化执
行速度, 而且这些都是特别针对于嵌入式系统软件的。
EABI规定了一下几个内容:
* 文件的格式
* 数据类型和对齐
* 寄存器用法的规定
* 堆栈布局和组织
* 函数参数传递顺序
* 小数据区域(data area)的用法和组织

2. 对我们有什么意义呢?
EABI兼容的二进制库除了在速度上有所优化以外, 它还保证了一样东
西。
就是让软件开发着可以混合使用EABI兼容的不同厂商之间的二进制库,
只要他们是EABI兼容的, 并且开发者的软件也是用EABI兼容的编译起编
译的, 就可以正确的一起使用。

这样, 我们就可以在不能拿到代码, 或者是专门为本平台编译过的二进
制库的情况下来使用这些二进制库。

就近来讲, 就是Android SDK 里面带的.so文件, 有一些我们可以不必
要拿到代码,或者重新编译。 但是为了能够正确的使用这些库。 可能还
是需要一些支持工作。 比如这些库和驱动之间的接口之类的。
阅读(2768) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~