手机开发实战38——手机软件架构简介
2016-05-25 22:37
351 查看
软件架构简介
对于一个有许多子系统的复杂系统,在把子系统组织成完整的系统时,有水平层次组织和垂直块组织两种方案可供选择:
1 层次组织
这种组织方案把软件系统组织成一个层次系统,每层是一个子系统。上层在下层的基础上建立,下层为实现上层功能而提供必要的服务。在上下层之间存在客户-供应商关系。底层子系统提供服务,相当于供应商,上层子系统使用下层提供的服务,相当于客户。
2块状组织
这种组织方案把软件系统垂直地分解成若干个相对独立的、弱耦合的子系统,一个子系统相当于一块,每块提供一种类型的服务。
当混合使用层次结构和块状结构时,同一层次可以由若干块组成,同一块也可以分为若干层。
嵌入式手机系统的软件是以嵌入式实时操作系统,为核心,以消息为纽带的软件系统, 软件系统的基本架构如图所示:
MMI:
MMI(Man Machine Interface)在整个软件体系结构的最上层,通常是一个单独的TASK,主要实现人机交互功能,即解释用户的各种命令并发消息到相应的处理模块等待系统处理;同时将系统接收到的各种消息或系统所处的状态以友好的方式反馈给用户。
MMI可以看作是手机系统功能级的调度管理中心,对手机的各个模块和部件的调度管理通过发送相应的消息、宏和系统调用实现。
手机开发主要的工作集中在MMI。
Service:
Service是在MMI和Protocol之间的中间层,给MMI提供各功能,如通话服务、短消息服务和WAP等封装过的接口函数,实现业务功能和交互的解耦,便于MMI的修改和移植。
在这层各功能都拥有自己的TASK,如call、phonebook和sms等。
Handle:
Handle是在MMI和Driver之间的中间层,给MMI提供各功能,如播放音乐、
LCD显示、照相和录像等功能,实现业务功能和交互的解耦,便于MMI的修改和移植。
在这层各功能都拥有自己的TASK,如audio、camera和video等。
Protocol:
主要包括GSM/GPRS/WCDMA/CDMA等协议代码,按协议对数据进行编解码的处理,是实现各业务功能的核心模块。
Driver:
主要包括和硬件相关联的代码,驱动硬件实现具体功能。
RTOS:
指实时嵌入式操作系统。
对于一个有许多子系统的复杂系统,在把子系统组织成完整的系统时,有水平层次组织和垂直块组织两种方案可供选择:
1 层次组织
这种组织方案把软件系统组织成一个层次系统,每层是一个子系统。上层在下层的基础上建立,下层为实现上层功能而提供必要的服务。在上下层之间存在客户-供应商关系。底层子系统提供服务,相当于供应商,上层子系统使用下层提供的服务,相当于客户。
2块状组织
这种组织方案把软件系统垂直地分解成若干个相对独立的、弱耦合的子系统,一个子系统相当于一块,每块提供一种类型的服务。
当混合使用层次结构和块状结构时,同一层次可以由若干块组成,同一块也可以分为若干层。
嵌入式手机系统的软件是以嵌入式实时操作系统,为核心,以消息为纽带的软件系统, 软件系统的基本架构如图所示:
MMI:
MMI(Man Machine Interface)在整个软件体系结构的最上层,通常是一个单独的TASK,主要实现人机交互功能,即解释用户的各种命令并发消息到相应的处理模块等待系统处理;同时将系统接收到的各种消息或系统所处的状态以友好的方式反馈给用户。
MMI可以看作是手机系统功能级的调度管理中心,对手机的各个模块和部件的调度管理通过发送相应的消息、宏和系统调用实现。
手机开发主要的工作集中在MMI。
Service:
Service是在MMI和Protocol之间的中间层,给MMI提供各功能,如通话服务、短消息服务和WAP等封装过的接口函数,实现业务功能和交互的解耦,便于MMI的修改和移植。
在这层各功能都拥有自己的TASK,如call、phonebook和sms等。
Handle:
Handle是在MMI和Driver之间的中间层,给MMI提供各功能,如播放音乐、
LCD显示、照相和录像等功能,实现业务功能和交互的解耦,便于MMI的修改和移植。
在这层各功能都拥有自己的TASK,如audio、camera和video等。
Protocol:
主要包括GSM/GPRS/WCDMA/CDMA等协议代码,按协议对数据进行编解码的处理,是实现各业务功能的核心模块。
Driver:
主要包括和硬件相关联的代码,驱动硬件实现具体功能。
RTOS:
指实时嵌入式操作系统。
相关文章推荐
- 有个网站能开通手机QQ
- Hadoop2.7.2之集群搭建(高可用)
- [置顶] Sqoop架构以及应用介绍
- 关于架构的一些心得体会
- [原创]java WEB学习笔记20:MVC案例完整实践(part 1)---MVC架构分析
- iOS 下的MVVMDemo的架构 DEMO
- 网站锚点执行平滑滚动
- IOS 视频直播/智能家居(一行行敲代码,从零开始)lesson:1整体架构
- Darwin 核心架构
- C#微信登录-手机网站APP应用
- 推荐 iOS 网站:
- [架构设计]第五讲:技术、业务与架构的关系
- 好网站留备
- 企业系统的性能与扩展
- 架构师进阶之路
- cookie案例-显示用户上次访问网站的时间
- MySQL主主复制+LVS+Keepalived实现MySQL高可用性1
- MySQL主主复制+LVS+Keepalived实现MySQL高可用性
- 基于x86架构的内核Demo的详细开发文档
- 个人学习网站整理(不完全记录,并持续更新)