我正在开发一个嵌入式系统,我们有大约3MB的NVRAM可用。 目前,nvram是内存映射的,并且使用枚举来存储/访问数据。这些枚举基本上是内存的索引。 这种方法的问题是我不能在不破坏向后兼容性的情况下增加任何元素的大小。也就是说,假设我存储了三个变量(每个32位)。
VAR0在索引0(32位)
VAR1在索引1(32位)
索引2(32位)的VAR3
如果我想将VAR1的大小增加到128位,我不能这样做,因为这会破坏与旧客户端的向后兼容性。这是因为我们正在使用枚举。
所以我想使用sqlite数据库将数据存储为(键,值)对。 根据客户端版本,我可以轻松返回确切的字节数或客户端期望的字节数。
但我想只将数据存储在NVRAM上,而不是元数据中。 有没有办法可以在硬盘上存储有关数据库的元数据(我们的嵌入式设备总是有一个)? 这甚至可能吗?