Android趣事五则 不“地道”的Linux |
本文标签:Android 趣事一:Android运行的是Linux,但不是“地道的Linux” 为了方便内部使用,谷歌打造了一个具有谷歌风味的Linux 。谷歌认为需要在Linux内核中添加某些功能,这样才能更加适合Android 。 ![]() 比如“唤醒锁(wake locks)”机制就是谷歌为Linux添加的功能,目的是为了更好地管理电源,该机制允许Android程序请求内核不要进入低耗电状态 。有趣的是这些变化最开始并没有被Linux内核“接受”,因此谷歌只能自己维护一个Android版Linux 。 趣事二:Android使用Java开发平台,但并非Java ME ![]() 和 Linux不同,Android不是Java ME分支 。Android提供自己的基于Java的软件开发工具包(SDK) 。除AWT和Swing外,该工具包还支持很多Java SE 。但是该工具包在Java框架内核基础上部署了一些有限的JSR 。比如Android对Open GL的支持类似于JSR 239 。 趣事三:Android运行着一个名为Dalvik的虚拟机(VM),但并非一个Java虚拟机 ![]() 谷歌为Android手机开发了一个全新的虚拟机;针对Android进行了优化 。该虚拟机运行的不是Java代码,而是.dex文件 。此外,Dalvik是一个基于registe的虚拟机 。 在甲骨文收购Sun以后,甲骨文因为这个虚拟机把谷歌告上了法庭 。但人们普遍认为此举是搬石头砸自己的脚 。 趣事四:Android并非谷歌开发 ![]() Android的幕后公司Android有限公司于2005年被谷歌收购,当时该公司是一家成立只有22个月的创业公司 。2008年10月开源(Apache开源许可协议) 。谷歌任命Android有限公司Andy Rubin为工程部副总 。 趣事五:Android中运行有一个SQLite数据库 ![]() SQLite是一个轻量级关系数据库,内置在Android中,专门用于数据存储 。Android程序也可以利用这个关系数据库管理系统 。 |