Android Framework系统服务创建流程

1、Android系统层级

从上往下依次为应用层(System Apps)、应用框架层(Java API Framework)、运行层(系统Native库和Android运行时环境)、硬件抽象层(HAL)、Liunx 内核(Marco Kernel)。每一层都有对应的进程、系统库。

应用层(System Apps/Other Apps)

该层中包含所有的Android应用程序,包括电话、相机、日历等,我们自己开发的Android应用程序也被安装在这层。

应用框架层(Java API Framework)

这一层主要提供构建应用程序是可能用到的各种API,Android自带的一些核心应用就是使用这些API完成。

运行层

1)系统Native库

 Android包含一些C/C++库,这些库能被Android系统中不同的组件使用

2)Android运行时环境

Android包括了一个核心库,该核心库提供了Java编程语言核心库的大多数功能。虚拟机也在该层启动。

每个进程都有一个Dalivik虚拟机实例。

硬件抽象层(HAL)

由于Linux内核采用GPL协议,如果把驱动放在内核层,需要开发驱动程序源码,这势必会影响到硬件厂商的核心利益。

为了解决这个问题Android增加了HAL层,HAL层遵循Apache协议,不需要硬件厂商开放驱动程序的源码。

硬件厂商提供动态库,在内核中只提供一些基本的读写接口操作,Android根据不同的需求,加载不同的动态库。

Linux 内核

Android系统的基础是Linux内核,Linux内核的安全机制为Android提供相应的保障。

2、如何在Framework层添加系统服务

2.1 Kernel层

开发设备驱动程序与开发典型的 Linux 设备驱动程序类似。

如果需要添加的硬件设备需要驱动的话,需要在此层添加。

2.2 HAL层

HAL 可定

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值