Skip to main content
 Web开发网 » 操作系统 » Android系统

天天玩手机却不了解Android操作系统?5分钟带你扫盲

2021年10月22日6090百度已收录

天天玩手机却不了解Android操作系统?5分钟带你扫盲  Android系统 第1张

如今是互联网爆发的年代,Android、iOS作为两大移动端操作系统,几乎是无人不晓,那么你是否真的知道Android操作系统到底是什么呢,让我们花5分钟来进行一个简单的了解吧。

Android简介1、起源

Android一词最早出现于法国作家利尔亚当(Auguste Villiers de l’Isle-Adam)在1886年发表的科幻小说《未来夏娃》(L’ève future)中。他将外表像人的机器起名为Android。

Android的Logo是由伊琳娜-布洛克(Irina Blok)设计的,设计灵感来源于男女厕所门上的图形符号,外加头上两根天线。以下图片为男女厕所门上的图形与Android Logo图标。

天天玩手机却不了解Android操作系统?5分钟带你扫盲  Android系统 第2张

Android LOGO

2、发展

天天玩手机却不了解Android操作系统?5分钟带你扫盲  Android系统 第3张

Android系统发展

3、版本介绍

从2009年5月开始,Android操作系统改用甜点来作为版本代号,这些版本按照从C大写字母开始的顺序来进行命名:纸杯蛋糕(Cupcake)、甜甜圈(Donut)、闪电泡芙(Éclair)、冻酸奶(Froyo)、姜饼(Gingerbread)、蜂巢(Honeycomb)﹑冰淇淋三明治(Ice Cream Sandwich)、果冻豆(Jelly Bean)、奇巧(KitKat)、棒棒糖(Lollipop)、棉花糖(Marshmallow)、牛轧糖(Nougat)、奥利奥(Oreo)、馅饼(Pie)。

不同的版本代号对应不同的API Level,具体见下图汇总

天天玩手机却不了解Android操作系统?5分钟带你扫盲  Android系统 第4张

Android版本号

Android系统架构Android的系统架构由四个部分组成,由底层到上层的顺序分别为Linux Kernel、Android Runtime、Libraries、Application Framework,在此基础之上则是我们在使用手机时直接面向的各类APP,见下图

天天玩手机却不了解Android操作系统?5分钟带你扫盲  Android系统 第5张

Android系统架构

Linux KernelAndroid以Linux操作系统内核为基础,借助Linux内核服务实现硬件设备驱动,进程和内存管理,网络协议栈,电源管理,无线通信等核心功能。

Linux Kernel也作为硬件和软件之间的抽象层,它隐藏具体硬件细节而为上层提供统一的服务。

也就是说Android从本质上说也是Linux操作系统的一种,只不过其基于Linux之外对移动端做了更多面向移动的新特性。

Android RuntimeAndroidRuntime包含核心库和Dalvik虚拟机两部分。

Dalvik虚拟机是基于apache的java虚拟机,并被改进以适应低内存,低处理器速度的移动设备环境。Dalvik虚拟机依赖于Linux内核,实现进程隔离与线程调试管理,安全和异常管理,垃圾回收等重要功能。

我们知道Java自身提供了JVM的虚拟机,而Android则是使用了类似JVM的DVM作为Java虚拟机。

Android4.4之后ART逐渐取代了Dalvik虚拟机,在Dalvik下,应用每次运行的时候,字节码都需要通过即时编译器(just in time ,JIT)转换为机器码,这会拖慢应用的运行效率,而在ART 环境中,应用在第一次安装的时候,字节码就会预先编译成机器码,使其成为真正的本地应用。这个过程叫做预编译(AOT,Ahead-Of-Time)。这样的话,应用的启动(首次)和执行都会变得更加快速,换句话说ART使用了空间来换取时间,所以在新的ART架构下APP的内存占用比Dalvik大了一倍,替换ART后,app的打开速度接近了iOS。

这也是为什么如今仍存在Android 4.4的版本,因为这个版本是Dalvik到ART的一个大的变革。

LibrariesLibraries是Android的库文件,供Android系统的各个组件使用。这些功能通过Android的应用程序框架(application framework)为开发者使用。主要的系统类库及说明如下表

天天玩手机却不了解Android操作系统?5分钟带你扫盲  Android系统 第6张

Android库

Application FrameworkApplication Framework提供开发Android应用程序所需的一系列类库,使开发人员可以进行快速的应用程序开发,方便重用组件,也可以通过继承实现个性化的扩展。具体包括的模块如下

天天玩手机却不了解Android操作系统?5分钟带你扫盲  Android系统 第7张

Application Framework

Application有了上面四大模块,我们的开发人员就可以在其基础之上开发各种类型的APP了,包括系统内置应用在内,我们每天在使用的各类型的APP都是基于Application Framework层之上开发而来的,现在大家对我们每天使用的软件由何而来应该有了一个初步的认知了吧。

评论列表暂无评论
发表评论
微信