来尝试回答一下,仅仅从技术上来讲,把Linux直接搬到移动终端有这么些问题:
- Linux下面常用的图形界面是X Window,尽管从Unix/大型机时代一直在改进,但是那种client / server架构效率不高,并不是很适合移动终端
- X Window只是一个图形界面协议,其上还需要窗口管理器,大家比较熟悉的是桌面系统上跑的gnome或者KDE,实际上还有非常多如xfce, twm等等,常用的这些窗口管理器都不适合触摸屏
- Linux的图形界面缺少好的封装,X Window编程比较复杂,而且控件没有统一界面规范和编程接口,各家窗口管理器用各自的控件,界面风格难以统一
- 跨平台兼容性差,Linux的二进制可执行文件是依赖于CPU架构的,这样多个厂商如果用不同架构的处理器, Android程序就没有办法跑了
- 缺少高效的包管理系统,各家的Linux用不同的包管理系统,比如apt, rpm, dpkg/ipkg对可执行文件/库文件/配置文件的管理很松散,不适合Android移动平台将每个App放在相对独立的文件空间/虚拟机的需求
- 还有其他的技术原因,比如字体、图像、界面特效支持不佳等等。
当然,还有很多商业原因促成了Android,Google由于想把它们的手伸到终端上,控制内容的入口,它们在背后的推动也是商业上首要的因素。 |