3G指的是第三代移动通讯技术(3rd - Generation),速率通常在几百Kbps,较以前的2G和2.5G在数据传输速度上有很大提高。3G与2G的主要区别是在传输声音和数据的速度上的提高编程
4G指的是第四代移动通讯技术(4th - Generation),速度可达到100Mbps以上,几乎能够知足人们的全部传输数据的需求。浏览器
目前主流的3G技术标准有三种:安全
目前主流的4G技术为LTE,但尚未被普遍应用。服务器
通讯技术的发展历程:GSM→GPRS→EDGE→WCDMA→HSDPA→HSDPA+→ LTE网络
Android本义指“机器人”,Google于2007年11月5日宣布的基于Linux平台的开源手机操做系统的名称,官方中文名:安卓 。架构
Android系统早期由原名为"Android"的公司开发,谷歌在2005年收购"Android.Inc"后,继续对Android系统开发运营。框架
底层Linux内核只提供基本功能,其余的应用软件则由各公司自行开发,大部分程序以Java语言编写。编程语言
因为Android系统的开源特性,不少制造商都在生产Android系统的设备,如:摩托罗拉、HTC、三星、索爱、LG、小米、华为、魅族等。函数
Android系统除了运行在智能手机上以外,还能够用作平板电脑、电视、汽车等不少设备上。工具
Android系统的底层创建在Linux系统之上,该平台由操做系统、中间件、用户界面和应用软件4层组成,它采用一种被称为软件叠层(Software Stack)的方式进行构建。这种软件叠层结构使得层与层之间相互分离,明确各层的分工。这种分工保证了层与层之间的低耦合,当下层的层内或层下发生改变时,上层应用程序无须任何改变。
Android平台的架构图以下:
从图中能够看出,Android系统是由五大部分组成的。
Android系统将会包含系列的核心应用程序,包括电子邮件客户端,SMS程序、日历、地图、浏览器、联系人等。这些应用程序都是用Java编写的。
当咱们开发Android应用程序时,就是面向底层的应用框架进行的。从这个意义上来看,Android系统上的应用程序时彻底平等的,不论是Android系统提供的程序, 仍是普通开发者提供的程序,均可以访问Android提供的API框架。
Android包含一套被不一样组件所使用的C/C++库的集合。通常来讲,Android应用开发者不能直接调用这套C/C++库集,但能够经过它上面的应用程序框架来调用这些库。
Android运行时由两部分组成:Android核心库集合(Core Libraries)和Dalvik虚拟机(Dalvik Virtual Machine)。其中核心库集提供了Java语言核心库所能使用的绝大部分功能,而虚拟机则负责运行Android应用程序。 每一个Android应用程序都运行在单独的Dalvik虚拟机内(即每一个Android应用程序对应一条Davlik进程),Dalvik专门针对同时高效运行多个虚拟机进行优化, 所以Android系统很方便实现对应用程序进行隔离。
因为Android应用程序的编程语言是Java,所以有些人会把Dalvik虚拟机和JVM搞混,当实际上两者存在区别:Dalvik并未彻底遵照JVM规范,二者也不兼容。 实际上,JVM虚拟机运行的是Java字节码(一般就是.class文件),但Dalvik运行的是其专有的dex(Dalvik Executable)文件。JVM直接从.class文件或JAR包中 加载字节码而后运行;而Dalvik则没法直接从.class文件或JAR包中加载字节码,它须要经过DX工具将应用程序的全部.class文件编译成.dex文件, Dalvik则运行该.dex文件。
Dakvik虚拟机很是适合在移动终端上使用,相对于在PC或服务器上运行的虚拟机而言,Dalvik虚拟机不须要很快的CPU计算速度和大量的内存空间,它主要有以下两个特色:
Android系统创建在Linux 2.6之上。Linux内核提供了安全性、内存管理、进程管理、网络协议栈和驱动模型等核心系统服务。除此以外,Linux内核也是系统硬件和软件叠层之间的抽象层。