Empress数据库

  Empress 数据库由加拿大 EMPRESS 公司于1979 年推出, 当时是 UNIX 系统下的常用数据库, 也就是Empress RDBMS Suites 版, 后来推出其嵌入式版本 Empress Embedded / Empress Ultra Embedded, 主要面向军工控制和航天领域, 目前在北美, 加拿大, 日本有广泛的运用。

开发阶段特点

  开发阶段特点:

  1. 可嵌入程序,该特性使应用程序和数据库工作于统一地址空间,增强了系统的稳定性,提高了系统的效率。

  2. 确定的响应时间,Empress 可以使数据的响应时间相对一致,使用者可以设定一个超时限制,如果在规定时间内没有完成插入,修改等操作,系统会报错。

  3. 快速的操作Empress 提供了内核级的CAPI,称为MR, 用MR编写的应用程序在执行时不需要解析。另外在MR中加速的机制还包括的加锁控制,内存管理和基于记录数量的选择功能。

  4. 灵活的开发方式,Empress 提供多种开发接口,加快开发进程而无需开发者重新学习开发语言和熟悉开发环境。

  5. 友好的存储方式,Empress 数据库可以放在操作系统支持的任何存储设备中,Empress的表单甚至可以分割放在不同的存储设备中,比如在内存,硬盘和CD-ROM中。

  6. 微型内核结构 Empress 高度单元化, 可根据需要选择需要的单元,从而缩小产品中Empress 数据库所占用的资源。

  7. 宽广的平台支持,Empress 支持多种硬件平台和软件平台, 也可移植到客户要求的硬件平台或操作系统。

技术优势

  1. 微型内核结构,占用少量内存空间,特别适合紧凑性的设计

  2.一周7天,每天24小时连续工作,无需任何额外操作免维护

  3. 内核级 CAPI 接口,使运行速度化

  4. 高度灵活的SQL接口

  5. 的掉电恢复能力

  6. 强壮的交易和锁存机制

  7. 支持SCSI,RAID,IDE,RAM,CD-RW,DVD-ROM,CF,等存储介质

  8. 支持Unicode 码

  9. 引擎可加载于磁盘和内存

应用实例

  工控系统中运用大量的 PLC, 控制稳定可靠, 但 PLC 上运行 linux, vxworks 等操作系统有一定的困难, PLC 的计算能力也只有几十 mips, 在很多复杂系统中达不到要求, 采用中处理器加嵌入式操作系统可以成为尝试的方向, 例如有 50---500 个传感器的系统, 如温度传感器 t0, t1, t2...,速度传感器 s0, s1, s2..., 压力传感器 p0, p1, p2...

  注意: 不要用线程, 如果用一个线程对应一个传感器, 几百个线程的时间片如何划分? 时间片的划分本来就是随即的(否则达不到多任务的效果). 很难保证每一个传感器在规定的时间内得到时间片并做出响应.

  方法一:

  开一个二维数组,

  t0 t1 t2 ... s0 s1 s2 ... p0 p1 p2...

  time0

  time1

  .

  .

  .

  timen

  把定时器尽量设小(设为最小公约数), 以满足频率的传感器的采样, 数据过来之后输入响应的位置,这样可以把指定时间段内的数据作出处理, 当然, 内存数组容量毕竟有限, 后来的数据会把前面的数据覆盖掉, 前面有用的数据可以保存起来.

  该方法过于理想, 实现起来有很多问题, 如: t0 每 13ms 采样一次, t1 每 19ms 采样一次, 采样时间间隔就应该设为 1ms, 结果处理器回疲于奔命的采样, 其他什么事情也做不了.如果情况可能, 可把定时器设为公倍数, 把过来的数据缓冲一下, 也能达到要求, 毕竟, 嵌入式系统要求在规定的时间内作出反应, 而不是在最快的时间内作出反应.

  方法二

  用 Empress 数据库,

  Empress 会帮助解决采样值缓冲的问题, 就象传统数据库一样, 有一定的缓存能力, 减轻了程序员处理缓存的工作, 同时 Empress 可以一边插入数据, 一边把前面重要的数据备份, 为程序员提供高效, 可靠的模块功能.

相关百科