1.1 Android系统架构详解

1.1 Android系统架构

Android是一种基于Linux的自由及开放源代码的操作系统,主要适用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。

Android的系统架构和其操作系统一样,采用了分层的架构。大致分为四层架构,从低层高层分别是Linux内核层、系统运行库层、应用程序框架层和应用程序层。(如图1-1所示)

 

1-1 Android系统架构

如上图所示:蓝色部分代表Java程序,黄色部分代表运行Java程序而实现的虚拟机,绿色部分代表C/C++语言编写的程序库,红色部分代表内核(Linux内核和Driver

1. Linux内核(Linux Kernel

Android系统是基于Linux内核,这一层为Android设备的各种硬件提供了底层的驱动,如显示驱动、音频驱动、照相机驱动、蓝牙驱动、Wi-Fi驱动、电源管理等。(主要内容如下表所示)

名称

功能描述

Display Driver

显示驱动

Camera Driver

照相机驱动

Bluetooth Driver

蓝牙驱动

Flash Memory Driver

闪存驱动器

BinderIPCDriver

粘合剂(IPC)驱动器

USB Driver

USB驱动程序

Keypad Driver

键盘驱动

Wi-Fi Driver

Wi-Fi驱动

Audio Drivers

音频驱动程序

Power Management

电源管理

 

2. 系统运行库(Libraries/Android Runtime

系统运行库层可分为部分,分别是C/C++程序库和Android运行时库。

(1)C/C++程序库

C/C++库来为Android系统提供了重要的特性支持,能被Android系统中的不同组件所使用,并通过应用程序为开发者提供服务。(主要内容如下表所示)

名称

功能描述

Surface Manager

(显示管理器)

Android框架类之一,管理访问显示子系统和多模块应用中无缝整合2D3D的图形

Media Framework

(多媒体库)

支持多种常用的音频、视频格式录制和回放

SQLite(轻量级关系型数据库)

轻型的关系型数据库引擎

OpenGL|ES

(3D绘图函数库)

为便携式或嵌入式设备例如:移动电话、监视器等发展的3D绘图API

FreeType(可移植的字体引擎)

一个完全免费(开源)的、高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件,包括TrueType, OpenType, Type1, CID, CFF, Windows FON/FNT, X11 PCF等

WebKit

(浏览器引擎)

一个开源浏览器引擎,与之相对应的引擎有GeckoMozilla Firefox 等使用)和Trident(也称MSHTMLIE 使用)

SGL

底层的2D图形渲染引擎

SSL(安全套阶层)

(Secure Sockets Layer)用以保障internet上数据传输之安全,利用数据加密(Encryption)技术,可确保数据在网络上传输过程中不会被截取及窃听。

Libc

(Linux下的ANSI C的函数库)

从BSD继承来的标准C系统函数库,专门为基于嵌入式Linux的设备定制

(2)Android运行时库

运行时库又分为核心库(Core Libraries),能够允许开发者使用Java语言来编写Android应用。和Dalvik虚拟机(Dalvik Virtual Machine)(5.0系统之后改为ART运行环境),它使得每一个Android应用都能运行在独立的进程当中,并且拥有一个自己的Dalvik虚拟机实例。独立的进程可以防止在虚拟机崩溃的时候所有程序都被关闭

 

3. 应用框架层(Application Framework

应用框架层主要提供了构建应用程序时可能用到的各种API,平时开发应用程序都是调用这一层所提供的API,包括系统的应用。这一层由Java代码编写。(主要内容如下表所示)

名称

功能描述

Activity Manager(活动管理器)

管理各个应用程序生命周期的导航回退功能

Window Manager(窗口管理器)

管理所有开启的窗口程序

Content Providers(内容提供器)

使得不同程序之间可以共享数据

View System(视图系统)

构建应用程序的基本组件

Notification Manager(通知管理器)

使应用程序可以在状态栏中显示自定义的提示信息

Package Manager(包管理器)

管理所有安装在Android系统中的应用程序

Telephony Manager(电话管理器)

管理所有的移动设备功能

Resource Manager(资源管理器)

提供应用程序使用的各种非代码资源,如本地化字符串、图片、布局文件、颜色文件等

Location Manager(位置管理器)

提供地理位置及定位服务功能

XMPP Service(XMPP服务)

在线即时交流一个通用的进程,即后台推送服务

 

4. 应用层(Applications

所有安装在手机上的应用程序都属于这一层的,比如系统自带的联系人、短信等程序,或者从你的应用商店上下载的小游戏,当然还包括自己开发的程序。


/*代码注释:这是本人第一次写的学习记录,略有生涩,保证纯真手敲在Word中在上传CSDN中,如果文章含有错别字、知识点错误或者语句不通顺的地方,劳烦各位走过路过的客官指出!小本买卖,您看不了吃亏看不了上当。本人都虚心接受,抓紧更改!

                                                纤蕾*/       

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Odoo 是一个开源的企业资源计划(ERP)系统,它提供了一套完整的商业应用程序,包括销售、采购、库存管理、生产管理、财务管理、人力资源管理等。下面是 Odoo 的系统架构详解: 1. 前端:Odoo 使用了基于 Web 技术的前端框架,提供了直观、用户友好的界面。前端部分主要负责与用户交互,并将用户输入的数据发送给后端进行处理。 2. Web 服务器:Odoo 支持多种 Web 服务器,如 Nginx、Apache 等。Web 服务器主要负责接收用户请求,并将请求转发给 Odoo 服务器进行处理。 3. Odoo 服务器:Odoo 服务器是整个系统的核心组件,它负责处理用户请求,并根据请求的类型进行相应的操作。Odoo 服务器采用了模块化的架构,每个功能模块都可以独立安装、升级和卸载。 4. 数据库:Odoo 使用关系型数据库来存储数据,常用的数据库包括 PostgreSQL、MySQL 等。所有的数据都存储在数据库中,包括用户信息、产品信息、订单信息等。 5. 模块:Odoo 的功能被组织成多个模块,每个模块负责一个特定的功能领域。例如,销售模块负责管理销售流程,采购模块负责管理采购流程等。用户可以根据自己的需求选择安装相应的模块。 6. 业务逻辑:Odoo 的每个模块都包含了一套完整的业务逻辑。例如,在销售模块中,用户可以创建销售订单、确认订单、生成发票等。这些业务逻辑被封装在模块中,并通过 Odoo 服务器进行处理。 7. API:Odoo 提供了一组丰富的 API,使开发人员能够通过编程的方式来与系统进行交互。开发人员可以使用 API 创建新的模块、扩展现有模块的功能,或者与其他系统进行集成。 总结来说,Odoo 的系统架构包括前端、Web 服务器、Odoo 服务器、数据库、模块、业务逻辑和 API。它提供了一个灵活、可扩展的平台,满足企业各种不同的业务需求。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值