Chinaunix首页 | 论坛 | 博客
  • 博客访问: 38800
  • 博文数量: 17
  • 博客积分: 610
  • 博客等级: 上士
  • 技术积分: 175
  • 用 户 组: 普通用户
  • 注册时间: 2009-02-19 20:51
文章分类

全部博文(17)

文章存档

2015年(3)

2010年(11)

2009年(3)

我的朋友
最近访客

分类: LINUX

2010-08-03 11:04:18

Android的不同之处

1)android 用的不是 X server 而是framebuffer ,因此用在笔记本上会很慢,需要重写驱动。
  因此,也不会用到GTK ,QT等库

2)它不是用glibc ,而用bionic
  因此对于rootfs,需要用android自带的toolchain来编译,而对于kernel,bootloader,可以用外部的编译器来编译


3)它用的不是busybox ,而是toolbox
  toolbox位于/system/bin,大小为73K , 比较小,但一些命令 比如 which 都没有,代码在./system/core/toolbox下,
基本上每一个.c文件实现一个命令
   

4) Android所支持的Java不是标准的Java(没经过java认证)
   代码也需要重新编译成 .dex ,它比J2ME强大,支持SWT ,但数据库操作是sqlite而非DB4O

5)用的是opencore ,而非mplayer , gstreamer
  一般基于GNOME Mobile的平台,比如sato , moblin , maemo 用的是gstreamer , 而很多项目也用mplayer来处理多媒体这块。
 而android选择的是opencore

6) android的外部库需要进行一些修改
   不像其他的项目,基本上用外部库的时候,不需要去修改,而android要的,比如libpng ,需要了一些编译文件

7)android的kernel不是标准的,进行了一些修改
   对于模拟器,用的是goldfish , 对于实际的target ,比如samsung 6100 ,则没法用emulator来跑


相同之处 :
1) 程序间的通讯用的是DBUS
2) 浏览器引擎用的是 webkit
   居然不是Google的引擎,有点惊讶
3) 模拟器用的是qemu
   这个和poky ,OE 的一样
阅读(454) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~