一般而言,智能终端是一类嵌入式计算机系统设备,因此其体系结构框架与嵌入式系统体系结构是一致的;同时,智能终端作为嵌入式系统的一个应用方向,其应用场景设定较为明确,因此,其体系结构比普通嵌入式系统结构更加明确,粒度更细,且拥有一些自身的特点。
智能终端体系结构分为硬件结构和软件结构
从硬件上看, 智能终端普遍采用的还是计算机经典的体系结构——冯·诺依曼结构,即由运算器(Calculator,也叫算术逻辑部件ALU)、控制器(Controller)、存储器(Memory)、输入设备(Input Device)和输出设备(Output Device)5大部件组成,其中的运算器和控制器构成了计算机的核心部件—中央处理器(Center Process Unit,简称CPU)。
一般而言,由于目前通信协议栈不断增多,多媒体与信息处理也越来越复杂,往往将某些通用的应用放在独立的处理单元中去处理,因而形成一种松耦合的主从式多计算机系统。
智能系统的多计算机系统结构
每一个处理单元都可以看作一个单独的计算机系统,运行着不同的程序。每个从处理单元通过一定的方式与应用处理单元通信,接受应用处理单元的指令,进行相应的操作,并向应用处理单元返回结果。这些特定的处理单元芯片往往是以ASIC的形式出现的,但实际上仍然是片上计算机系统。例如,常用的2.5G基带处理芯片实际上就是依靠内置的ARM946核执行程序来实现GSM、GPRS、EDGE协议的处理
软件结构
我们知道,计算机软件结构分为系统软件和应用软件。在智能终端的软件结构中,系统软件主要是操作系统和中间件。操作系统的功能是管理智能终端的所有资源(包括硬件和软件),同时也是智能终端系统的内核与基石。操作系统是一个庞大的管理控制程序,大致包括5个方面的管理功能:进程与处理机管理、作业管理、存储管理、设备管理、文件管理。常见的智能终端操作系统有Linux,Windows CE,Symbian OS,iPhone OS等。中间件一般包括函数库和虚拟机,使得上层的应用程序在一定程度上与下层的硬件和操作系统无关。应用软件则提供供用户直接使用的功能,满足用户需求。 从提供功能的层次来看,可以这么理解,操作系统提供底层API,中间件提供高层API,而应用程序提供与用户交互的接口。在某些软件结构中,应用程序可以跳过中间件,而直接调用部分底层API来使用操作系统提供的底层服务。 以Google主导的Android智能终端软件平台为例,在操作系统层次上为Linux。在中间件层次上,还可以细分为两层,下层为函数库和Dalvik虚拟机,上层为应用程序框架,通过该框架,可以使某个应用发布的服务能为其它应用所使用。最上层的应用程序使用下层提供的服务,来最终的为用户提供应用功能。