Android的系统架构

                Android 的系统架构

Android和其他系统一样,采用了层级分明的分层架构,主要分为四层 应用层,应用架构层,系统运营层,Liunx内核层!
1.应用层(Applications)由运行在Dalvik虚拟机上的APP组成,该虚拟机由Google为android专门设计的,运行速度比jvm虚拟机更快,以此来克服移动设备在内存,处理器速率上面的不足,也可以这么说Dalvik就是基于Jvm为基础研发的。该层语言由java编写!而我们的android开发人员大部分做得就是android应用层的开发!

2.应用程序框架层(FromWork)(这里说的不包括第三方框架),本层是由google开发,提供给开发人员直接调用的API,编写语言大部分是java,也有少量的C/C++;

3.系统运行层(Native):我们的设备需要运行,必然要和底层的硬件进行交互,而系统运行层执行的就是这样的操作。我们调用了框架层,然后框架层于系统运行层在做交互,系统运行层通过C和C++语言实现的一些本地服务或链接库来调用相应硬件的驱动程序!这一层有一个特点就是通过C和C++实现,这样避免了java实现效率较低的问题!

4.Liunx内核层,该层主要包括:驱动、内存管理、进程管理、网络协议等组件,但是貌似我们目前大部分开发者,使用网络协议什么的,都是使用应用程序框架层或者一些第三方的jar为我们提供的网络请求,很少有人去钻研网络协议,驱动什么的!这样很不好,你至少也要知道他是怎么实现的嘛!(虽然我也没有研究过,不过以后希望和大家一起共同学习进步)

可能说了半天大家还是一脸蒙蔽,说你这说的都是什么啊,看了半天似懂非懂的,没关系,下面给大家提供一个相机的调用流程!

这里写图片描述
上图:我们可以看出从用户在点击了系统相机,之后发生的一系列流程!

  1. 用户点击
  2. 应用层通过调用框架层提供的Camear(摄像头管理类) 使用这个类构建一个相机应用程序。(代用方法)Intent intent = new Intent();
    intent.setAction(“android.media.action.STILL_IMAGE_CAMERA”);
    startActivity(intent);
  3. 框架层调用系统运行层的媒体库,框架层做得那些操作在这就不细讲了(有兴趣的朋友可以看一下Android APIs)
  4. 运行层告诉Liunx内核快把相机打开,驱动程序检测相机状态是正常,相机说没毛病,老铁,然后就把相机打开了!(额,开个小玩笑)至此,相机就可以正常的使用了!

嗯!唔!这个大概就是android的系统架构了,至于哪层架构在那一步处理了什么操作,会在后面几篇文章讲解清楚!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值