关键词:嵌入式系统 B/S架构 C/S架构 智能客户端
随着网络的迅速发展,基于网络化应用的B/S架构管理系统的应用被迅速推广,但受目前的网络水平和终端用户操作水平的限制,B/S架构系统需要进一步完善,综合其他网络构架的优势,形成新的模式,并且需要更为合适的数据终端设备进行支持。就目前的计算机数据终端来讲,普遍存在对终端用户来讲功能过多,维护要求较高和价格偏高的问题。需要开发一种能够满足终端数据记录、简单处理和传输的设备,功能明确、操作简易并且价格低廉的产品。针对上述问题,本文提出以嵌入式设备为平台进行开发集B/S架构和C/S架构优势于一体的智能终端。
1.终端设备——嵌入式系统
1.1 嵌入式系统的定义
嵌入式系统是将先进的计算机技术、半导体技术和电子技术和各个行业的具体应用相结合后的产物,这点就决定了它必须是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。典型的嵌入式应用ROM及RAM容量在0~32M之内,外设更为简化,工作于室外、野外等恶劣环境当中。嵌入式系统工业的基础是以应用为中心的"芯片"设计和面向应用的软件产品开发。
1.2 嵌入式系统的特征:
① 嵌入式处理器的功耗、体积、成本、可靠性、速度、处理能力、电磁兼容性等方面均受到应用要求的制约,这些也是各个半导体厂商之间竞争的热点。② 嵌入式处理器要针对用户的具体需求,对芯片配置进行裁剪和添加才能达到理想的性能;但同时还受用户订货量的制约。因此不同的处理器面向的用户可能是一般用户、行业用户或单一用户。③ 嵌入式系统一般要求高可靠性,在恶劣的环境或突然断电的情况下,要求系统仍然能够正常工作。还有许多嵌入式应用要求实时功能,这就要求操作系统具有实时处理能力。④ 嵌入式系统的升级换代和具体产品同步进行,因此嵌入式系统产品一旦进入市场,具有较长的生命周期。
1.3 嵌入式操作系统
目前嵌入式操作系统主要有商业化的Palm OS,Windows CE,EPOC, Vxwork, QNX, ECOS,LYNX等,以及新兴的开源的嵌入式Linux操作系统。这些操作系统都对嵌入式硬件设备有很好的支持,对于嵌入式系统的高级功能,如图形化界面和网络通讯等,也有非常成熟的技术支持。有了以上操作系统的支持,在开发终端的网络通讯功能时,开发人员只需要针对网络应用进行跟PC机上相同的编程,如用socket接口等,完全不必关心网络通讯的第一,二层的工作情况,这两层的工作都有操作系统来辅助完成。
嵌入式系统拥有以上众多优势,再结合Linux或者WINCE等操作系统,完全可以代替普通的PC机作为终端。于是本文选择嵌入式系统作为智能终端的主机设备。
2.网络架构——智能终端
在信息系统的开发建设中,开发商比较常用的网络结构为C/S结构、B/S结构。B/S和C/S结构是IT技术在不同发展时期的产物,C/S模式已经有十多年的历史,开发工具已经非常成熟,而B/S模式仅有几年时间,虽然有很大的发展潜力,但是就目前来说还不能满足所有应用需求,同时也有一些硬伤,如B/S 结构给系统管理者带来的好处远远超过给操作人员带来的好处。下面首先简单介绍一下这两种架构。
2.1 B/S架构
B/ S 结构如图1所示,在逻辑上分为三个层次: 客户层、应用服务层和数据服务层。客户层主要负责数据的存储和管理。B/ S模式简化了客户机的工作, 用户只要装有网络浏览器, 就可以通过互联网连接远程服务器接受服务。由于数据都在应用服务器上进行分析处理, 客户端只起显示结构的作用,所以传输数据量小, 对网络要求不高。B/ S 结构增强了系统的可扩展性, 更新方便, 易于管理和维护。
2.2 两层C/S架构
两层C/S 结构如图2所示。在这种架构中,服务器一般是指数据库服务器,而客户机一般是指PC 机,服务器与客户机之间通过局域网连接。客户机上运行处理业务逻辑的应用软件,同时客户机上的软件还负责图形用户界面的处理。当客户机需要获取数据或更新数据时,它通过网络向服务器发出请求,一般这种请求是SQL 语句或对数据库中存储过程的调用,服务器接受客户机的请求后通过对数据库的操作,将完成后的结果再通过网络返回给客户机,客户机把显示结果显示在图形用户界面上。
2.3 B/S和C/S的比较
从性能上分析,无论是B/S还是C/S它们各有优点,都是当前非常重要的计算架构。B/S的优势在于适用于Internet、维护工作量小;而C/S的优势是运行速度快、数据安全性高、人机交互方便等。正因为二者各有所长,导致它们无法相互取代。例如,对于以浏览为主、录入简单的应用程序,B/S技术有很大的优势,现在遍及全球的Web网站就是明证;而对于交互复杂的ERP等企业级应用,B/S则很难胜任,从全球范围看,成熟的ERP产品大多采用二层或三层C/S架构,B/S的ERP产品并不多见。
这里两种结构有各自的特性和优缺点,又不能简单地相互替代,最好就是找到一种技术,能够将两者有效地结合,充分体现这两者的优点,这种方式就是下面将要介绍的智能客户端的模式。
2.4 智能客户端:
智能客户端技术完全是基于Web的应用体系,既不属于C/S,也不属于B/S,应该是兼具二者的优势。
和B/S或C/S相比,智能客户端技术具有非常明显的优势。总结起来可以概括为三点:
本地资源充分利用和享受本地用户体验
具备离线连接能力
智能部署和自动更新
在企业或Internet范围内,智能客户端应用程序能够轻松地与系统连接并与之进行数据交换。Web 服务使智能客户端解决方案能够利用行业标准协议(例如,XML、HTTP 和 SOAP)来与任何类型的远程系统交换信息。更为重要的是,无论是否连接到 Internet,智能客户端应用程序都可以正常工作:连接到internet时,作为普通的终端使用;断开internet后,智能客户端可以依靠本地的数据库和应用程序独立运作,并保存数据以便连上internet后自动上传更新。这样就一定程度上排除了网络问题对终端正常工作的影响,使终端使用起来更加方便[4]。
3. 基于嵌入式系统的智能终端
本文提出的这种嵌入式平台的智能终端在网络方面结合B/S架构和C/S架构的优点,充分体现智能客户端技术的优势,尽可能的将终端对网络的依赖性降低到最小;在硬件构造方面体现了嵌入式系统的特色和优势。综合来讲,这种智能终端造价低,可靠性好,功能专一,抗干扰性强,扩展性好,软件的可移植性强,又可以在线和离线结合使用,更加灵活方便。
在设计终端应用程序时,对于数据处理的体系结构,有两种概括性的方法:以数据为中心的方法和面向服务的方法(如图3)。
使用以数据为中心的策略的应用程序具有一个在客户端上本地安装的关系数据库管理系统 (RDBMS),并且使用该数据库系统的内置功能将本地数据更改传回服务器,处理同步过程,并检测和解决任何数据冲突。
使用面向服务方法的应用程序将信息存储在消息中,并且当客户端脱机时将这些消息排列到队列中。在重新建立连接以后,排队的消息将被发送到服务器进行处理[5]。
由于本文是建立离线与在线相结合的智能终端,于是采取面向服务的方法,当网络不好的时候,就采取离线的方式,该终端就作为一台独立的数据采集处理器使用,数据库和应用程序等都在本地存储介质中,即可以执行根连接internet时相同的业务功能,不同点是将数据存到了本地数据库,并且将离线这段时间的交易数据等有效信息保存在特定文件中,等待在线时自动上传这些数据。当连接internet的时候,这套智能终端就是一台浏览器终端,浏览远程服务器提供的网络服务,执行相应的输入输出和数据处理操作,此时,数据库等都在后台远程服务器上,所有交易数据都实时地传送到后台服务器的数据库和相应的文件中,同时,离线时在本地存储的数据文件也将在此时自动传送到后台指定的接收缓存区域,经过后台服务器简单处理后也添加到数据库或相应的文件中。采取以上措施形成间断性在线的工作模式,将网络对终端的影响将为最低。
4. 总结
通过比较分析,本文阐述了融合了嵌入式技术和集B/S架构、C/S架构优势于一体的智能客户端两者的优势,并结合面向服务的数据处理的体系结构,构造了基于嵌入式平台的智能终端。该终端克服了传统的终端对网络的极度依赖性,又融合了先进的嵌入式技术,使该终端功能专一、结构紧凑、操作简便、价格低廉,在性能不变的基础上,提高了实用性,并降低了成本。