



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、SQLite数据库在嵌入式下载机中的应用研究 摘 要 SQLite是开放源码的嵌入式数据库,其特点是独立性强,不具有外部依赖性,资源占用少,能直接嵌入到应用程序中,即能提供零配置(zeroconfiguration)运行模式。本文介绍了SQLite系统的特点和体系结构,在arm-linux平台上成功地移植了SQLite。并利用SQLite和网络成功地实现了用户与嵌入式下载机系统的动态交互,最后对数据库进行加密保障了安全性,可广泛用于远程控制。 关键词
2、;嵌入式数据库 SQLite 下载机 1 引言 在应用系统中的数据存储和检索一般采用数据库如ACCESS、MYSQL等来实现,但很多时候,系统只是用了数据库产品的一些基本特性,这样就造成浪费了很多的系统资源。特别是在嵌入式系统中,由于硬件和软件资源都很有限,一般的数据库系统根本无法在这些平台上使用。因此,嵌入式数据库应运而生。嵌入式数据库系统实质是支持某种特定计算机模式或移动计算的数据库管理系统,它通常与操作系统和具体应用集成在一起,运行在智能型嵌入式设备或移动设备上1。 &
3、#160; 嵌入式数据库的使用是采用程序驱动,即由程序调用相应的API函数来实现数据的存取。嵌入式数据库的体积小,编译后一般只有几十KB,非常适合在嵌入式设备上使用。由于嵌入式系统应用环境没有统一的标准,故嵌入式数据库应充分体现可定制的特性,因此,开放源码的嵌入式数据库具有明显的优势。2 Sqlite数据库 Sqlite数据库是D.Richard Hipp用C语言编写的开源嵌入式数据库,支持的数据库大小为2TB,全部源代码约3万行,每个数据库完全存储在单个磁盘文件中,数据以B+树数据结构的形式存储在磁盘上,
4、Sqlite根据该文件系统获得其数据库权限2。 嵌入式数据库来自于其嵌入式运行模式,它使用精简代码编写,零配置,直接在应用程序中运行,并且占用资源非常少4。嵌入式数据库系统没有管理员,具有自调节和自适应能力,能够“无处不在”。Sqlite是一个非常适合嵌入式应用的数据库,这可以从其设计的目的和独特的特点看出。Sqlite设计的主要目的是简单:简单的管理、简单的操作、简单地嵌入、简单的维护。Sqlite的特征如下: (1)零配置。 (2)无服务器。
5、(3)精简性。 (4)简单的访问。 (5)可变长度的纪录。 Sqlite不仅小、快,而且简单、可靠,这是它受欢迎的主要原因。对于嵌入式场合,管理、执行、维护的简单化比企业数据库引擎提供的许多复杂应用更重要,因此Sqlite数据库是一个很好的选择。 3 嵌入式下载机系统的整体结构 本下载机系统终端硬件核心板采用华恒公司的HHARM2410K1,包括CPU模块、Flash、SDRAM存储部分。底板包括USB接
6、口、以太网控制芯片、CAN/RS485通信模块。核心板CPU采用三星公司SBC2410芯片。SBC2410芯片基于ARM920T内核,而ARM920T内核有存储单元MMU、ARM9TDMI和高速缓存三部分组成,运行频率可达203MHZ,MMU管理虚拟内存,实现虚拟地址物理之间的转换。CAN总线通信芯片采用Microchip公司的MCP2510。它支持模式CAN2.0A、CAN2.0B,与国内常用的SJA1000相比,MCP2510数据吞吐率高且使用简单。 本嵌入式下载机实现的主要功能有两大部分:一是单独与网络相连接,接受来自于网络的命令而自动下载任
7、务;二是可实现磁盘的热插拔和与PC机的Samba共享(如图1)。在现代生活中,当在Office上班的人们想在下班回家能有自己想看的电影或音乐,而且不需要回家再耗时下载,则可以利用上班时空闲在家的嵌入式,而在家里的嵌入式下载机接到指令后就会自动判断用户的帐号、密码,正确后将要下载的任务添加给下载程序。在这过程中用户不用担心掉电或断网后数据问题,因为此系统中设计掉电保护程序。于是当上班的人们回家后只需打开PC机就可以通过网络利用Samba和下载机共享,或者是直接将USB 插入现代数字电视就可以看到精彩的电影和欣赏到动听的音乐了。 4 嵌入式数据
8、库Sqlite的移植 下载的稳定版本,configure已经存在,直接进行配置:-host=$ARCH-linux -prefix=$ROOTFS_DIR/usr 如果交叉编译工具是arm-linux-gcc的话则采用下面的配置语句 如果出现了如下错误:configure: error: unable to find a compiler for building
9、60;build tools前面检查arm-linux-gcc都通过了,怎么还说没有找到编译器呢?结合configure.ac看了一下,原来是要设置config_TARGET_CC和config_BUILD_CC两个环境变量。config_TARGET_CC是交叉编译器,config_BUILD_CC是主机编译器。 注:这个地方有个-disable-tcl选项,是因为在sqlite给我们提供的有c接口和tcl接口的,但是我们在实际的应用中用的只有c接口的,而tcl接口其实是不必要用的,故在此加上此选项后可以减去生成的makefile中屏蔽
10、掉关于tcl的选项这一操作。 出现了如下错误:checking for /usr/include/readline.h. configure:error: cannot check for file existence when cross compiling这回配置成功了,编译:有的机器上会出现下列错误:libtool: compile: unable to infer tagged
11、60;confi- guration libtool: compile: specify a tag with '-tag'这时检查一下libtool里的CC变量是否设置为arm-linux-gcc,如果不是,可以手工改过来,或者设置环境变量lt_compiler=arm-linux-gcc,重新配置一下。 5 用XXTEA加密算法为SQLite实现了加密功能6 结束语 嵌入式数据库Sqlite 在嵌入式下载机中的应用, 实现了嵌入式下载机的独立工作性能, 符合现代系统e 网到底、成本低廉、升级维护方便的趋势, 对于设备的嵌入式网络化远程控制具有重要的意义。同时利用加密算法实现嵌入式Sqlite数据库的加密功能,对网络安全进行了保障。 参考文献1曾立胜.基于嵌入式数据库SQLITE的射频卡数据存储.电脑知识与技术3,292王京谦,万莅新. 开源嵌入式数据库Berleley
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏省如皋市白蒲镇九年级历史上册 第三单元 古代文明的传播与发展 第8课 古代科技与思想文化(一)教学实录 新人教版
- 16 家乡新变化 教学设计-2023-2024学年道德与法治二年级上册统编版
- 学生综合能力培养的教育方案探讨
- 大数据与教育行业的发展与创新
- 课题开题报告:新疆历届巡抚档案中的民族“三交”史料研究
- 第六单元单元导读课(教学设计)-2024-2025学年三年级语文上册统编版
- 如何选择孩子的成长奶制品和零食
- 鼻甲肥大病理
- 课题开题报告:外资股权对我国境内银行逆周期信贷行为的影响研究:效应、机制与政策优化
- 课题开题报告:头部企业赋能城市群产业链供应链现代化的机制与路径研究
- GB/T 31586.1-2015防护涂料体系对钢结构的防腐蚀保护涂层附着力/内聚力(破坏强度)的评定和验收准则第1部分:拉开法试验
- GB/T 18337.3-2001生态公益林建设技术规程
- 增量房交易税收申报表
- 道路运输安全年总结
- “三重一大”事项决策情况记录表
- 教科版科学五年级下册《生物与环境》单元教材解读及教学建议
- 高考70天-让我们一起努力!(课堂PPT)
- 临床诊疗类医疗服务项目和价格培训课件
- 蚁群算法最全集课件
- 肠管脱出的应急救援原则、方法
- 马工程西方经济学(第二版)教学课件-1
评论
0/150
提交评论