发布于2021-06-14 10:19 阅读(847) 评论(0) 点赞(21) 收藏(0)
Android是一种基于Linux内核(不包含GUN组件)的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。
主要参数表:
参数 | |
---|---|
上线时间 | 2008年9月23日 |
系统家族 | 类Unix、Linux |
内核类型 | 宏内核(Linux内核) |
大体为三部分组成:1、BootLoader 2、Linux内核 3、根文件系统
可以分为四层:
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内核属于用户层。如下图:
下面将具体介绍下各层都有什么
系统内置的应用程序以及非系统级的应用程序都属于应用层,负责与用户进行直接交互,通常都是用Java进行开发的。
应用框架层为开发人员提供了开发应用程序所需要的API,我们平常开发应用程序都是调用这一层所提供的API,当然也包括系统应用。这一层是由Java代码编写的,可以称为Java Framework。
从Android系统框架图上可以看出,系统运行库层分为两部分,分别是 C/C++ 程序库和 Android 运行时库,具体内容参照Android系统五层架构
Android硬件抽象层HAL总结
Android HAL(Hardware Abstract Layer)硬件抽象层,从字面意思可以看出是对硬件设备的抽象和封装,为Android在不同硬件设备提供统一的访问接口。HAL处于Android framework和Linux kernel driver之间,HAL存在的意义有以下2个方面:
1、HAL屏蔽了不同硬件设备的差异,为Android提供了统一的访问硬件设备的接口。
2、HAL层帮助硬件厂商隐藏了设备相关模块的核心细节。
与之前学的Linux差不太多。
Android 的核心系统服务基于Linux 内核,在此基础上添加了部分Android专用的驱动。系统的安全性、内存管理、进程管理、网络协议栈和驱动模型等都依赖于该内核。
原文链接:https://blog.csdn.net/weixin_44933419/article/details/117814895
作者:小胖子爱java
链接:http://www.javaheidong.com/blog/article/222610/e21912f234b13b609086/
来源:java黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 java黑洞网 All Rights Reserved 版权所有,并保留所有权利。京ICP备18063182号-2
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!