[发明专利]一种提升嵌入式设备配置文件读写效率的方法在审
申请号: | 201710485491.7 | 申请日: | 2017-06-23 |
公开(公告)号: | CN107329782A | 公开(公告)日: | 2017-11-07 |
发明(设计)人: | 梅景平;郑直;何金亮;李慧;袁文利 | 申请(专利权)人: | 武汉长光科技有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 湖北武汉永嘉专利代理有限公司42102 | 代理人: | 胡建平,杨晓燕 |
地址: | 430073 湖北省武汉*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 提升 嵌入式 设备 配置文件 读写 效率 方法 | ||
技术领域
本发明涉及通信领域,具体涉及一种提升嵌入式设备配置文件读写效率的方法。
背景技术
对嵌入式设备进行管理时,一般都需要对设备的配置进行保存,保存配置的文件叫配置文件,多以.cfg命名。设备在启动的时候,需要读取初始化的配置或者保存后的配置,所以对配置文件需要进行读写操作。
EPON设备的配置信息较多,包括OLT和ONU的配置,现有OLT设备的配置文件名称为startup.cfg,往往读写配置的实现方式如附图1所示,具体过程为调用cmdRecreateFile函数,发送信号量gCfgFileGenSem,当任务cmdCfgFileMainTask接收到信号量之后去创建文件,并将配置的命令写入到临时的配置文件中,当系统执行write命令的时候,就从这些临时配置文件中读取并写到startup.cfg中,虽然能满足读写的要求,但是仍然存在以下不足:
(1)将配置数据存放在临时配置文件中,当用户需要进行show running-config操作即读配置时或者保存配置(即写配置)时是通过读写文件进行操作的。对文件进行频繁的打开和读写操作,会影响系统读写配置文件的性能;
(2)当配置内容较多或者系统满配时,文件内容较大,需要的时间较长,不能满足用户的要求。
针对ONU的配置,当PON板满配ONU时,ONU的数目多达10240个,每个ONU最少有4个端口,如果ONU及其端口都满配,显而易见配置文件是很大的,对较大的配置文件进行读写时,如果不使用高效的读写方法,需要的时间较长,影响系统读写配置文件的性能,不能满足用户的要求。
发明内容
本发明要解决的技术问题是,针对现有读取较大文件性能存在的上述不足,提供一种读写嵌入式设备配置文件的方法,将配置信息直接存储到内存中供读写,把相应的配置数据存储到内存中,当保存或者读取配置时就直接从内存中读取数据组成相应的配置命令,改善嵌入设备保存配置命令的性能,特别是在大配置的时候,虽然会占用多一点的内存空间,但是明显提高系统配置性能。
本发明为解决上述技术问题所采用的技术方案是:
一种提升嵌入式设备配置文件读写效率的方法,包括如下步骤:
(1)初始化cfgmgr模块时,挂载回调函数,每一个配置项对应一个函数,回调函数函数包含增加、删除、修改记录项节点,为提供查找效率,通过B树的方式将所有的节点存储;
(2)下发配置文件时,通过回调函数对数据库进行相应的增加、删除、修改记录项操作;
(3)根据数据库表ID分别调用不同的cfgmgr内部接口函数,获取的数据通过动态内存的方式存储到开辟的内存;
(4)保存配置文件时,直接对内存进行操作,将从内存中获取的所有数据写入相应配置文件并存储到FLASH中;
(5)读配置文件获取数据时,直接对表ID表项进行操作,从内存中读取数据输出到相应的界面。
按上述方案,所述步骤(1)中cfgmgr模块包括startcfg模块和runningcfg模块,startcfg模块主要用于统一管理配置保存的startcfg文件,给CMD模块提供获取此文件的指针,CMD模块用于读取、生成、擦除、恢复配置操作;runningCfg模块用于管理当前运行的配置,包括保存、修改和删除,以及向外提供接口,供生成buildrun信息或生成startcfg文件。
按上述方案,所述步骤(2)中下发配置文件时配置文件的修改都在内存中进行,回调函数节点的查找通过hash算法进行查找。
按上述方案,所述步骤(3)中表ID表项的查找通过hash算法来完成,查找到相应的表项后直接操作回调函数;通过动态内存的方式存储到开辟的内存是指内存在在堆里,堆里的内存空间动态释放。
按上述方案,所述步骤(4)中FLASH挂载一个可读性的文件系统,当有保存配置的需求时才进行写FLASH。
按上述方案,所述步骤(5)中直接对表ID表项进行操作是指将配置文件的数据通过内存数据库将数据存储起来,数据的信息以原始的命令行信息展示给客户。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉长光科技有限公司,未经武汉长光科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710485491.7/2.html,转载请声明来源钻瓜专利网。