Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3170911
  • 博文数量: 685
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 5303
  • 用 户 组: 普通用户
  • 注册时间: 2014-04-19 14:17
个人简介

文章分类

全部博文(685)

文章存档

2015年(116)

2014年(569)

分类: 嵌入式

2015-03-11 21:42:18

原文地址:http://blog.chinaunix.net/uid-20548090-id-1927442.html

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 的一样 
阅读(1187) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~