SQLite数据库在嵌入式机中的应用研究

上传人:汽*** 文档编号:565036626 上传时间:2022-08-18 格式:DOC 页数:5 大小:18KB
返回 下载 相关 举报
SQLite数据库在嵌入式机中的应用研究_第1页
第1页 / 共5页
SQLite数据库在嵌入式机中的应用研究_第2页
第2页 / 共5页
SQLite数据库在嵌入式机中的应用研究_第3页
第3页 / 共5页
SQLite数据库在嵌入式机中的应用研究_第4页
第4页 / 共5页
SQLite数据库在嵌入式机中的应用研究_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《SQLite数据库在嵌入式机中的应用研究》由会员分享,可在线阅读,更多相关《SQLite数据库在嵌入式机中的应用研究(5页珍藏版)》请在金锄头文库上搜索。

1、SQLite数据库在嵌入式下载机中的应用研究摘要SQLite是开放源码的嵌入式数据库,其特点是独立性强,不具有外部依赖性,资源占用少,能直接嵌入到应用程序中,即能提供零配置zernfiguratin运行形式。本文介绍了SQLite系统的特点和体系构造,在ar-linux平台上成功地移植了SQLite。并利用SQLite和网络成功地实现了用户与嵌入式下载机系统的动态交互,最后对数据库进展加密保障了平安性,可广泛用于远程控制。关键词嵌入式数据库SQLite下载机在应用系统中的数据存储和检索一般采用数据库如AESS、YSQL等来实现,但很多时候,系统只是用了数据库产品的一些根本特性,这样就造成浪费了

2、很多的系统资源。特别是在嵌入式系统中,由于硬件和软件资源都很有限,一般的数据库系统根本无法在这些平台上使用。因此,嵌入式数据库应运而生。嵌入式数据库系统本质是支持某种特定计算机形式或挪动计算的数据库管理系统,它通常与操作系统和详细应用集成在一起,运行在智能型嵌入式设备或挪动设备上1。嵌入式数据库的使用是采用程序驱动,即由程序调用相应的API函数来实现数据的存龋嵌入式数据库的体积小,编译后一般只有几十KB,非常合适在嵌入式设备上使用。由于嵌入式系统应用环境没有统一的标准,故嵌入式数据库应充分表达可定制的特性,因此,开放源码的嵌入式数据库具有明显的优势。Sqlite数据库是D.RihardHipp

3、用语言编写的开源嵌入式数据库,支持的数据库大小为2TB,全部源代码约3万行,每个数据库完全存储在单个磁盘文件中,数据以B+树数据构造的形式存储在磁盘上,Sqlite根据该文件系统获得其数据库权限2。Sqlite可直接运行在大多数的操作系统上,并且支持/+、Java等常用的开发工具。本工程用到的是Sqlite最新版本3.3.4,支持多数SQL92标准,如SELET、REATE、TABLE、ALTER、INDEX、VIE、DELETE等,但不支持EXISTS,不支持存储过程4。Sqlite支持事务的AID特性,即原子性、一致性、隔离性和持久性。所以,Sqlite数据库可以在系统崩溃前和断电时不会丧

4、失数据。Sqlite通过数据库级上的独占性和共享锁来实现独立事务处理。这意味着多个进程可以在同一时间从同一数据库读取数据,但只有一个可以写入数据。在某个进程或线程向数据库执行写操作之前,必须获得独占锁定。在发出独占锁定后,其他的读或写操作将不会再发生。嵌入式数据库来自于其嵌入式运行形式,它使用精简代码编写,零配置,直接在应用程序中运行,并且占用资源非常少4。嵌入式数据库系统没有管理员,具有自调节和自适应才能,可以“无处不在。Sqlite是一个非常合适嵌入式应用的数据库,这可以从其设计的目的和独特的特点看出。Sqlite设计的主要目的是简单:简单的管理、简单的操作、简单地嵌入、简单的维护。Sql

5、ite的特征如下:1零配置。2无效劳器。3精简性。4简单的访问。5可变长度的纪录。Sqlite不仅孝快,而且简单、可靠,这是它受欢送的主要原因。对于嵌入式场合,管理、执行、维护的简单化比企业数据库引擎提供的许多复杂应用更重要,因此Sqlite数据库是一个很好的选择。本下载机系统终端硬件核心板采用华恒公司的HHAR2410K1,包括PU模块、Flash、SDRA存储局部。底板包括USB接口、以太网控制芯片、AN/RS485通信模块。核心板PU采用三星公司SB2410芯片。SB2410芯片基于AR920T内核,而AR920T内核有存储单元U、AR9TDI和高速缓存三局部组成,运行频率可达203HZ

6、,U管理虚拟内存,实现虚拟地址物理之间的转换。AN总线通信芯片采用irhip公司的P2510。它支持形式AN2.0A、AN2.0B,与国内常用的SJA1000相比,P2510数据吞吐率高且使用简单。本嵌入式下载机实现的主要功能有两大局部:一是单独与网络相连接,承受来自于网络的命令而自动下载任务;二是可实现磁盘的热插拔和与P机的Saba共享如图1。在现代生活中,当在ffie上班的人们想在下班回家能有自己想看的电影或音乐,而且不需要回家再耗时下载,那么可以利用上班时空闲在家的嵌入式,而在家里的嵌入式下载机接到指令后就会自动判断用户的帐号、密码,正确后将要下载的任务添加给下载程序。在这过程中用户不用

7、担忧掉电或断网后数据问题,因为此系统中设计掉电保护程序。于是当上班的人们回家后只需翻开P机就可以通过网络利用Saba和下载机共享,或者是直接将USB插入现代数字电视就可以看到精彩的电影和欣赏到动听的音乐了。下载的稳定版本,nfigure已经存在,直接进展配置:rtlinuxsqlite-3.3.4#./nfigure-hst=$ARH-linux-prefix=$RTFS_DIR/usr假如穿插编译工具是ar-linux-g的话那么采用下面的配置语句rtlinuxsqlite-3.3.4#./nfigure-hst=ar-linux-prefix=$RTFS_DIR/usr假如出现了如下错误:

8、nfigure:errr:unabletfindapilerfrbuildingbuildtls前面检查ar-linux-g都通过了,怎么还说没有找到编译器呢?结合nfigure.a看了一下,原来是要设置nfig_TARGET_和nfig_BUILD_两个环境变量。nfig_TARGET_是穿插编译器,nfig_BUILD_是主机编译器。rtlinuxsqlite-3.3.4#exprtnfig_BUILD_=grtlinuxsqlite-3.3.4#exprtnfig_TARGET_=ar-linux-grtlinuxsqlite-3.3.4#./nfigure-hst=ar-linux-p

9、refix=$RTFS_DIR/usr-disable-tl注:这个地方有个-disable-tl选项,是因为在sqlite给我们提供的有接口和tl接口的,但是我们在实际的应用中用的只有接口的,而tl接口其实是不必要用的,故在此加上此选项后可以减去生成的akefile中屏蔽掉关于tl的选项这一操作。出现了如下错误:hekingfr/usr/inlude/readline.h.nfigure:errr:annthekfrfileexistenehenrsspilingreadline我们已经编译过了,readline.h是肯定存在,没有必要检查。可在ahe文件里设置a_v_header_read

10、line_h=yes,骗过nfigure脚本:rtlinuxsqlite-3.3.4#eha_v_header_readline_h=yesar-linux.ahertlinuxsqlite-3.3.4#./nfigure-hst=$ARH-linuxprefix=$RTFS_DIR/usrdisable-tl-ahe-file=ar-linux.ahe这回配置成功了,编译:rtlinuxsqlite-3.3.4#akeakeinstall有的机器上会出现以下错误:libtl:pile:unabletinfertaggednfi-guratinlibtl:pile:speifyatagith-

11、tag这时检查一下libtl里的变量是否设置为ar-linux-g,假如不是,可以手工改正来,或者设置环境变量lt_piler=ar-linux-g,重新配置一下。事实上我们所需烧写在板子上的是库文件sqlite.s、sqlite.s.0、sqlite.s.0.8.6要放入板子/lib目录。Sqlite是一个很好用的嵌入式数据库。可惜美中缺乏的是Sqlite的免费版本不具备加密功能。经在网上看到一个用inrypt实现加密功能的版本,可惜太依赖于inds平台了。但本系统所设计的嵌入式下载机是在AR体系下的linux系统。并且用Sqlite的一般是单机版软件比拟多,有加密需求的必要,因此本系统利用

12、XXTEA算法在Sqlite3.3.4版本的根底上实现了加密功能。选择XXTEA主要是因为XXTEA算法速度很快,对性能造成的影响相对较校嵌入式数据库Sqlite在嵌入式下载机中的应用,实现了嵌入式下载机的独立工作性能,符合现代系统e网到底、本钱低廉、晋级维护方便的趋势,对于设备的嵌入式网络化远程控制具有重要的意义。同时利用加密算法实现嵌入式Sqlite数据库的加密功能,对网络平安进展了保障。1曾立胜.?基于嵌入式数据库SQLITE的射频卡数据存储?.电脑知识与技术3,292王京谦,万莅新.开源嵌入式数据库BerleleyDB和Sqlite的比拟J单片机与嵌入式系统应用2022,2,2:5-73.sqlite.rg/QueryLanguageUnderstdbySQLite.ht.(SQLite官方网站)4黄布毅,张晓华.基于AR-Linux的SQLite嵌入式数据库技术J.单片机与嵌入式系统应用,2022,30(4):21-24

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号