嵌入式Android底层开发(一)——安卓开发的整体框架与简述

嵌入式Android底层开发(一)——安卓开发的整体框架与简述

一、Android简介

Android是一种基于Linux内核(不包含GUN组件)的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。

主要参数表:

参数上线时间2008年9月23日系统家族类Unix、Linux内核类型宏内核(Linux内核)

二、Android系统的组成

大体为三部分组成:1、BootLoader 2、Linux内核 3、根文件系统

三、Android系统的分层

可以分为四层: Android采用分层的架构,分为四层,从高层到底层分为 1、应用程序层(app+System apps), 2、应用程序框架层(Java APIFramework), 3、系统运行库和运行环境层(Libraries + android Runtime) 4、Linux核心层(HAL+ Linux Kernel), 也可以分为五层: 从上到下依次是 1、应用层 2、应用架构层 3、系统运行库层 4、硬件抽象层 5、Linux内核层:

如下图: 其中上四层 [ APP层、Framework层、系统运行库和运行环境层 、HAL层]属于用户态,最底层Linux内核属于用户层。如下图:

下面将具体介绍下各层都有什么

四、Android系统各层的主要内容

Android系统五层架构

1、应用层

系统内置的应用程序以及非系统级的应用程序都属于应用层,负责与用户进行直接交互,通常都是用Java进行开发的。

2、应用架构层(Framework)

应用框架层为开发人员提供了开发应用程序所需要的API,我们平常开发应用程序都是调用这一层所提供的API,当然也包括系统应用。这一层是由Java代码编写的,可以称为Java Framework。

3、系统运行库层(库+虚拟机)

从Android系统框架图上可以看出,系统运行库层分为两部分,分别是 C/C++ 程序库和 Android 运行时库,具体内容参照Android系统五层架构

4、硬件抽象层(HAL层)

Android硬件抽象层HAL总结 Android HAL(Hardware Abstract Layer)硬件抽象层,从字面意思可以看出是对硬件设备的抽象和封装,为Android在不同硬件设备提供统一的访问接口。HAL处于Android framework和Linux kernel driver之间,HAL存在的意义有以下2个方面: 1、HAL屏蔽了不同硬件设备的差异,为Android提供了统一的访问硬件设备的接口。 2、HAL层帮助硬件厂商隐藏了设备相关模块的核心细节。

5、Linux内核层:

与之前学的Linux差不太多。 Android 的核心系统服务基于Linux 内核,在此基础上添加了部分Android专用的驱动。系统的安全性、内存管理、进程管理、网络协议栈和驱动模型等都依赖于该内核。

相关推荐

中国女人为什么胸小,到底是真的小,还是看起来小?
6p运行内存是多少 苹果6sp运行内存多大
o365邮箱登录

6p运行内存是多少 苹果6sp运行内存多大

📅 07-04 👁️ 1609
甜品店日常促销活动方案 简简单单的活动就能吸引客流
lenovo联想s880
o365邮箱登录

lenovo联想s880

📅 07-03 👁️ 7171
方舟手游战利品
365bet体育在线15

方舟手游战利品

📅 07-04 👁️ 2934
八字带小耗(八字犯小耗是什么意思)
o365邮箱登录

八字带小耗(八字犯小耗是什么意思)

📅 06-29 👁️ 3186