首页 嵌入式数据库SQLite在远程监控系统中的应用

嵌入式数据库SQLite在远程监控系统中的应用

举报
开通vip

嵌入式数据库SQLite在远程监控系统中的应用http://www.cdtarena.com 嵌入式数据库SQLite在远程监控系统中的应用 随着后PC时代的到来,各种各样的新型嵌入式系统设备在应用数量上已经远远超过通用计算机。嵌入式开发已成为当前IT行业的热点。同时,越来越多的用户希望能对嵌入式环境下的数据进行更有效的管理,构建嵌入式数据库便是一个有效的方法,使用户能在嵌入式设备中方便地存储、检索或修改数据,实现大部分传统数据库的功能。嵌人式系统和数据库技术的紧密结合已经成为嵌入式开发的一个重要方向。 1嵌入式数据库SQLite ...

嵌入式数据库SQLite在远程监控系统中的应用
http://www.cdtarena.com 嵌入式数据库SQLite在远程监控系统中的应用 随着后PC时代的到来,各种各样的新型嵌入式系统设备在应用数量上已经远远超过通用计算机。嵌入式开发已成为当前IT行业的热点。同时,越来越多的用户希望能对嵌入式环境下的数据进行更有效的管理,构建嵌入式数据库便是一个有效的方法,使用户能在嵌入式设备中方便地存储、检索或修改数据,实现大部分传统数据库的功能。嵌人式系统和数据库技术的紧密结合已经成为嵌入式开发的一个重要方向。 1嵌入式数据库SQLite 与传统C/s结构的各种大型关系数据库如Oracle, SQL Server,MySQL等相比,在嵌入式系统中由于软硬件资源有限,不可能安装庞大的数据库服务器,而且在很多时候,用户只需要使用这些数据库产品的一些基本特性而已。嵌入式系统的开发环境决定了其数据库的特点:无需独立运行的数据库引擎,而是由程序直接调用相应的API实现对数据的存取操作。嵌入式数据库与其他数据库产品的区别是,前者是程序驱动式,而后者是引擎响应式。 SQLite是D.Richard Hipp在2000年开发的一个小型嵌入式数据库。他是完全独立的,不具有外部依赖性,可以较为方便地应用于嵌入式系统中。其源代码完全开放,可以免费用于任何用途,包括商业目的。SQLite虽然是个极端轻量级的关系数据库,却保留了数据库的大部分特征,他提供了对SQL92 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 的大多数支持:支持多 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 和索引、事务、视图、触发和一系列的用户接口及驱动。其主要特征如下: (1)支持原子的、一致的、独立的和持久的(ACID)事务特性,即使系统崩溃和掉电。 (2)零配置(Zero-configuration),无需安装和管理。 (3)一个完整的数据库存储在单一磁盘文件中。 (4)数据库文件可以在不同字节顺序的机器间自由共享。 (5)支持数据库大小至2 TB(2^41 B)。 (6)字符串和二进制大对象(BLOBs)的大小仅被有效内存限制。 (7)源码体积小,编译后低于250 kB。 (8)大部分的操作比关系型数据库引擎要快。 (9)简单易用的API。 SQLite由于小、快、简单、可靠,而且作者完全放弃版权,从他一发布出来,便深受欢迎。对于嵌人式环境,管理、执行、维护的简单化比企业数据库引擎提供的许多复杂应用更重要,因此SQLite数据库是一个很好的选择。 2 SQLite内部结构及开发技术 2.1 SQLite内部结构 SQLite采用模块化的设计,主要由4个部分组成:内核(Core)、SQL编程器(SQL Compiler)、后短(Backend)以及附件(Accessories)。内部结构如图1所示。 SQLite的接口是一些已经编写好的C库,即使使用不同语言的API,在底层仍然使用C库执行。SQL语句通过接口进入到高效的SQL编译器,由标记处理器(tokenizer)分解成柠檬分析器(parser)可以识别的各个标志符,然后由分析器重新组合标志符并调用代码生成器(codegeneratot)生成虚拟机器码,交由虚拟机(virtual machine)去执行,最终完成SQL语句指定的任务。虚拟机是SQLite内部结构的核心,不仅完成与数据操作相关的全部操作,而且还是客户和存储之间信息进行交换的中间单元。数据库按照B树(B-tree)的形式存储在磁盘上,通过可调整的页面缓冲(pager)获得对数据的快速查找和存储。为了方便移植,SQLite使用一个抽象层接口(OS interface)与不同操作系统进行对接。 2.2 SQLite开发技术 SQLite本身提供了C语言的API接口,使得对数据库的操作十分简单,主要是对3个API函数的调用。 其中,sglite3_exec()函数的第二个参数用来处理一条或多条SQL语句,语句间必须用";"号隔开。如果是查询(SELECT)语句,查询结果的每一条记录都必须调用第三个参数的Callback函数,第四个参数则为Callback函数的第一个参数指针。如果不是查询语句,第三、四个参数为NULL。所有SQL执行完毕后返回0,否则返回错误代码,可通过第五个参数值来查看详细错误信息。 3 SQLite在嵌入式远程监控系统中的应用 3.1 SQLite应用程序开发 基于嵌入式操作系统和嵌入式数据库系统构建的嵌入式楼宇配电远程监控系统的系统结构如图2所示。 本系统以32位的arm微处理器S3C4510B为硬件开发平台,采用μClinux操作系统,移植了Boa服务器和SQLite嵌入式数据库。系统主要功能如下,从底层设备采集的现场数据,经过数据处理,保存到嵌人式数据库SQLite。用户可在任何和Internet相连的地方,通过Web浏览器便可实时监控设备状态。因此对数据库的访问有上端的以太网通信程序和下端的CAN通信程序。这里主要讨论以太网通信程序。下面以CGI程序访问数据库,然后在客户端浏览器动态显示的Display.cgi程序为例,说明SQLite数据库API函数的用法。程序主要代码如下: 3.2 SQLite应用程序交叉编译 S3C4510B是Samsung公司开发的一款性价比很高的无MMU的32位arm处理器,而,μClinux是经过对标准Linux内核的改动,专门针对没有MMU的CPU,适合嵌入式系统小型化应用。μClinux采用romfs文件格式,比Linux的ext3文件格式需要更少的空间,但却继承了大部分Linux的优秀特性。 为了将嵌有SQLite的CGI程序应用到S3C4510B+μClinux开发平台上,必须对CGI程序进行交叉编译,然后下载到arm开发板。因为交叉编译要用到romfs格式的libsqlite.a库文件,使得过程有点麻烦,主要步骤如下: (1)下载SQLite源代码:可以到SQLite的官方网站(http://www.sqlite.org/download.html),下载最新SQLite-3.3.7.tar.gz源代码包或者SQLite-2.8.17.tar.gz。本文以SQLite-3.3.7.tar.gz为例,进行说明。 (2)将下载的软件包进行解压缩tar zxvf sqlite-3.3.7.tar.gz这时在用户目录下会有sqlite-3.3.6文件夹生成。 (3)添加Makefile文件和修改main.mk文件交叉编译过程中,最重要的是写一个与μ2Clilnux相适应的Make-file文件。本文使用的μClinux是μClinux-dist-20041215.tar.gz,交叉编泽工具为arm-elf-tools-20030314.sh。完整的Makefile内容如下: TOP=../sqlite-3.3.7 最后修改main.mk文件头部的TCCX为:TCCX:$(TCC)$(OPTS)$(T卜IREA[)SAFE)$(LJSI。EEP)-I.-I$(TOP)/$src$(CFLAGS)$(LDFLAGS) 再往下几行,找到LIBOBJ中的tclsqlite.o并去掉他。这样全部修改完毕。 (4)交叉编译 cd/sqlite-3.3.7make 这时会在sqlite-3.3.7文件夹中生成.romfs格式的sqlite3和静态链接库libsqlite3.a这两个最有用的东西。CGI程序的交叉编译如下: arm-elf-gcc-Wl,-elf2flt-o Display.cgi Display.clsqlite3-L/sqlite-3.3.7 交叉编译时需要用到的静态库文件就是前面生成libsqlite3.a,结果生成300 kB的Display.cgi程序,通过NFS方法调试通过后,放到cgi-bin目录下,同内核一起编译后下载到开发板。 4结 语 嵌入式数据库SQLite在楼宇配电监控系统中的应用,满足监控系统数据共享的管理要求。由于资源占用少、性能良好和零管理成本,嵌入式数据库大有用武之地。SQLite以他小巧的体积、快速高效、稳定可靠、易移植等优势将成为嵌入式数据库领域的新宠。加上免费开放源代码、没有版权限制,是一个值得推广的应用软件。 成都安卓培训哪里好?选择成都 HYPERLINK "http://www.cdtarena.com/" android HYPERLINK "http://www.cdtarena.com/" 培训开启android培训企业定制就业直通车,成都ios培训满足你高薪就业梦想!关于达内怎么样?达内培训需要多少钱?请在线咨询达内科技中心软件培训老师!成都达内官网:www.cdtarena.com 成都php培训 php培训
本文档为【嵌入式数据库SQLite在远程监控系统中的应用】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_479981
暂无简介~
格式:doc
大小:123KB
软件:Word
页数:0
分类:互联网
上传时间:2013-04-19
浏览量:38