From 1afcc1881126e1f5ea8db90c8309c9092a8e77c0 Mon Sep 17 00:00:00 2001 From: armink Date: Sun, 10 Feb 2019 23:04:04 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E6=9B=B4=E6=96=B0=E3=80=91=E6=96=87?= =?UTF-8?q?=E6=A1=A3=E7=BB=86=E8=8A=82=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: armink --- README.md | 2 +- docs/zh/design.md | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 7f1564a..ea5a83f 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ EasyFlash不仅能够实现对产品的 **设定参数** 或 **运行日志** - ENV 操作效率比以前的模式高,充分利用剩余空闲区域,擦除次数及操作时间显著降低; - **原生支持** 磨损平衡、掉电保护功能 (V4.0 之前需要占用额外的 Flash 扇区); - ENV 支持 **增量升级** ,固件升级后 ENV 也支持升级; -- 支持大数据存储模式,**长度无限制**,数据可在多个 Flash 扇区上顺序存储。像脚本程序、音视等占用 Flash 超过 1 个扇区的资源也都可以存入 ENV(即将在 V4.1 支持); +- 支持大数据存储模式,**长度无限制**,数据可在多个 Flash 扇区上顺序存储。像脚本程序、音频等占用 Flash 超过 1 个扇区的资源也都可以存入 ENV(即将在 V4.1 支持); - 支持 **数据加密** ,提升存储的安全性,物联网时代的必备功能(即将在 V4.2 支持); - 支持 **数据压缩** ,减低 Flash 占用(即将在 V4.3 支持); diff --git a/docs/zh/design.md b/docs/zh/design.md index 8e565e6..54ff0ca 100644 --- a/docs/zh/design.md +++ b/docs/zh/design.md @@ -2,21 +2,21 @@ ## 1、为什么要开发 V4.0 -EasyFlash 是我个人开发的第二款开源软件,自 2015 年初正式开源出来,至今(2019.02)已经经历了 4 年多时间。期间有很多其他行业的嵌入式开发者与我取得联系,得知他们已经 EasyFlash 应用于自己的产品上,我心里也倍感欣慰,可见 EasyFlash 的成熟性已经得到了很多行业的认可。 +EasyFlash 是我个人开发的第二款开源软件,自 2015 年初正式开源出来,至今(2019.02)已经经历了 4 年多时间。期间有很多其他行业的嵌入式开发者与我取得联系,得知他们已经将 EasyFlash 应用于自己的产品上,我心里也倍感欣慰,可见 EasyFlash 的成熟性已经得到了很多行业的认可。 ### 1.1 功能简洁,但性能差强人意 -大家普遍的感觉是 EasyFlash 功能简洁,可以很容易的应用于产品上。但随着技术的演进,大家对于 KV 需求的多样化,对于 MCU 资源(主要是 RAM)、Flash 存储资源、Flash 寿命等性能指标越来越高,旧版本的 EasyFlash 在这些方面还有提升的空间。比如: +大家普遍的感觉是 EasyFlash 功能简洁,可以很容易的应用于产品上。但随着技术的演进,大家对于 KV 需求的多样化,对于 MCU 资源(主要是 RAM)、Flash 存储资源、Flash 寿命等性能指标越来越高,旧版本的 EasyFlash 在这些方面还是有提升的空间。比如: ### 1.2 旧版本的痛点 - 每个存储在 Flash 上的 ENV 都会在 RAM 中缓存一份,这样做虽然能够简化实现,但确实会占用很多 RAM 资源; -- ENV 的值类型只支持字符串,如果是想要保存其他类型的值(比如:数组、结构体)就比较麻烦了,虽然我后来为此又专门开发了 [struct2json](https://github.com/armink/struct2json) 开源软件,但还是不够便捷; +- ENV 的值类型只支持字符串,如果想要保存其他类型的值(比如:数组、结构体)就比较麻烦了,虽然我后来为此又专门开发了 [struct2json](https://github.com/armink/struct2json) 开源软件,但还是不够便捷; - 每次保存 ENV 都需要重新擦写整个 Flash 扇区,那么位于扇区尾部未使用的区域始终无法得到利用,降低了 Flash 的使用效率,也就降低了 Flash 的使用寿命 ### 1.3 从 0 开始的 NG 版本 -也就是从 2017 年初开始,我便开始 EasyFlash 的性能优化工作,结合大家的需求,不断的整理、迭代设计文档,也与一些社区爱好者做过非常深入的交流。最终确定下来,如果单纯的在原有基础上进行完善,那么会有太多的功能实现受限制,所以干脆重新开发全新一代 ENV 功能组件,这个版本被命名为 NG(Next Generation) 版本。 +也就是从 2017 年初开始,我便开始准备 EasyFlash 的性能优化工作,结合大家的需求,不断的整理、迭代设计文档,也与一些社区爱好者做过非常深入的交流。最终确定下来,如果单纯的在原有基础上进行完善,那么会有太多的功能实现受到限制,所以干脆重新开发全新一代 ENV 功能组件,这个版本被命名为 NG(Next Generation) 版本。 NG 版本差不多在 2017 年底就已经设计完毕,但一直没时间去开发。后来在亲人的支持下,终于利用 2019 年猪年春节的假期,在岳父母家完成了 V4.0 NG 版本的开发(在此感谢岳父母、爱人的支持)。 @@ -27,7 +27,7 @@ NG 版本差不多在 2017 年底就已经设计完毕,但一直没时间去 - ENV 操作效率比以前的模式高,充分利用剩余空闲区域,擦除次数及操作时间显著降低; - **原生支持** 磨损平衡、掉电保护功能 (V4.0 之前需要占用额外的 Flash 扇区); - ENV 支持 **增量升级** ,固件升级后 ENV 也支持升级; -- 支持大数据存储模式,**长度无限制**,数据可在多个 Flash 扇区上顺序存储。像脚本程序、音视等占用 Flash 超过 1 个扇区的资源也都可以存入 ENV; +- 支持大数据存储模式,**长度无限制**,数据可在多个 Flash 扇区上顺序存储。像脚本程序、音频等占用 Flash 超过 1 个扇区的资源也都可以存入 ENV; - 支持 **数据加密** ,提升存储的安全性,物联网时代的必备功能; - 支持 **数据压缩** ,减低 Flash 占用;