鉴于大家对其他类别十分关注,我们编辑小组在此为大家搜集整理了“嵌入式Linux系统平台下开发客户端程序以实现数据的同步”一文,供大家参考学习
客服咨询,网学网竭诚为您服务,本站永久域名:myeducs.cn |
4. 数据同步系统的开发与实现 4.1 开发环境及工具 1.服务器 操作系统:Microsoft Windows XP Professional Edition。 开发平台:Microsoft VC++。 开发语言:C语言。 数据库:SQL Server 2000 辅助开发工具:Microsoft Office 2003。 2.客户端 操作系统:Red Hat Linux 9.0。 开发语言:C语言。 4.2 数据同步系统模块划分和功能定义 4.2.1数据同步系统模块划分与功能定义 在第二章中我们已经对各种同步协议进行了比较及评估,选择SyncML协议来实现该课题。因此我们需要根据SyncML协议的同步机制实现移动设备维修程序。首先是根据SyncML协议定义的数据同步框架来划分程序模块(服务器和客户端模块基本相同)。整个程序划分为四个部分,分别是:应用程序(包括界面)、数据库API、网络传输、SyncML协议本身实现。 四个模块的功能、结构以及它们之间的关系为如下: 1.应用程序 应用程序里面主要有一些必要的回调处理函数,如错误处理函数,网络处理函数。在应用程序里会调用网络传输、数据库中的一些函数来实现服务器端与客户端的数据同步,同时应用程序里面也要调用数据库模块里提供的一些API来完成本地数据库的修改,如增加记录,修改记录等。 2.网络传输API 网络传输主要的作用是用于数据同步时传输和接收SyncML协议本身实现模块生成的同步数据包。在网络传输模块中可以实现多种传输方式,如TCP,串口传输等。本课题中采用的是TCP传输。 3.数据库API 数据库模块主要提供一些API供应用程序模块和协议实现中的同步引擎调用。数据库用来保存同步中需要用到的信息,为不同的每个设备建立单独的数据库文件。数据库文件里面的数据分为两个部分:同步协议数据(如设备信息表、映射表、同步曰志等)和用户数据(如地址簿信息等)。在本系统中,服务器数据保存在SQL Server中,客户端数据直接保存在一般文件中。 4.SyncML协议实现 该模块是系统最重要的模块,包括同步数据包的构造和解析。收到数据包时对数据包解析并保存数据,分析数据包的正确性。然后分析具体同步数据并对数据进行处理,然后生成响应信息回复同步的另一端。在该模块中会调用数据库模块提供的一些API。 4.2.2数据同步系统流程图 数据同步是本设计的重点,因此需重点设计。该系统进行初始化时分为下载与上传两种方式。 第一种方式是下载到客户端,流程为: 1.服务器端发起同步初始化。 2.客户端接收到服务器的数据包后解析数据包并保存信息,分析数据,进行版本检测,如果版本正确则发送代表正确的数据包给服务器。 3.服务器收到反馈的数据包后解析数据包并保存信息,分析数据,如果获得的版本分析结果正确则构造同步命令,构造同步包,然后发送该包给客户端。 4.客户端收到数据包后解析数据包并保存信息,分析数据,进行冲突检测及处理,然后客户端数据。 构造反馈信息包,发送该包给服务器。 5.服务器接收反馈数据包,解析数据包并保存信息,分析数据。最后在服务器进行相关处理。 6.同步完成。 第二种方式是上传信息到服务器端,同步初始化由客户端发起。 1.客户端发起同步初始化。 2.服务器端接收到客户端的数据包后解析数据包并保存信息,分析数据,进行版本检测,如果版本正确则发送代表正确的数据包给客户端。 3.客户端收到反馈的数据包后解析数据包并保存信息,分析数据,如果获得的版本分析结果正确则构造同步命令,构造同步包,然后发送该包给服务器。 4.服务器收到数据包后解析数据包并保存信息,分析数据,进行冲突检测及处理,然后客户端数据。 构造反馈信息包,发送该包给客户端。 5.客户端接收反馈数据包,解析数据包并保存信息,分析数据。最后在客户端进行相关处理。 6.同步完成。
|
本站发布的计算机毕业设计均是完整无错的全套作品,包含开题报告+程序+论文+源代码+翻译+答辩稿PPT |
本文选自计算机毕业设计http://myeducs.cn |