一种嵌入式设备的文件管理方法及系统的制作方法

文档序号:6579147阅读:221来源:国知局
专利名称:一种嵌入式设备的文件管理方法及系统的制作方法
技术领域
本发明涉及嵌入式设备的文件管理,具体涉及一种通信设备中单板的文件管理方法及系统。
背景技术
在移动通信领域, 一套完整的通信系统通常是由很多单板组成的多处理器分布式系统。 每个单板分别运行着各自的操作系统,安装了特定的软件程序,执行特定的工作。,板的软 件和配置文件都存储在存储^元上。电可擦除只读存储器EEPROM (Electrically Erasable Programmable Read Only Memory)和闪存存储器FLASH (FLASH memory)是常用的非易失 性存储器,在通信产品中通常用来存储处理器所运行的软件程序和数据配置文件。
在对可插拔的单板进行设备监控时,利用一种嵌入式设备存储每个单板的运行状态、配 置信息和告警信息。嵌入式设备的存储器件为EEPK0M/FLASH,为了方便的存取数据,需耍采 用文件系统,而常用的嵌入式文件系统(例如JFFS/JFFS2)比较负载,不适于在单板上使用。 随着通信系统的功能R益强大,在单板上运行的软件程序的大小也在逐渐变大,但是,^板 的存储空间及其有限,且价格昂贵,EEPROM和FLASH还不能满足软件程序对存储空间的嬰求。 因此,如何有效的管理文件是嵌入式设备的研究重点。
嵌入式设备系统负责监控单板的运行状态,通常按照单板的槽位将存储单元平均分配给 所有单板。但是单板的信息大小通常是不相同的,导致有的单板所对应的存储空间还冇剩余, 而有的有的单板所对应的存储空间不足。那么将会造成大量的宝贵EEPROM/FLASH间没有得到 合理利用,而且平均分配以后,有可能会导致某些单板的信息无法全部保存到EEPROM/FLASH 中。当通信系统中的单板需要升级驱动程序/更新配置文件时,往往会导致单板需要重新启动 从而运行新的驱动程序/配置文件,这样操作系统的内核才能认识到新的驱动程序/配置文件的 存在。这样导致单板无法对数据请求进行实时响应,影响通信系统的性能。

发明内容
本发明的目的在于提供一种嵌入式设备的文件管理方法,该方法能够解决存储空间利用 率不足的问题,提高文件访问速度和工作效率。一种嵌入式设备的文件管理方法,所述嵌入式设备用于监控通信系统巾的通信单板,其 特征在于,包括
Al、上电检测时擦除嵌入式设备存储单元的所有存储空间;
A2、将存储单元划分为3个区域文件指针区域、页面分配表区域和单板信,a存储区域;
A3、在文件指针区域中建立哈希表,对通信单板的硬件地址进行哈希运算,根据哈希运
算获得的散列码确定通信单板的单板信息的首地址在哈希表中的位置,并将单板信总的首地
址存储在哈希表中;
A4、利用页面分配表区域记录嵌入式设备存储单元的页面状态;
A5、根据单板信息的大小在单板信息存储区域中分配单板信息所需的页面,通过链表结 构将存储单板信息的页面在逻辑上形成一个连续的数据存储区域;在单板信息第1页的头部
都定义了一个固定的存储模板,方便査询该通信单板的基本信息,所述存储模板的格式为 位置、单板类型、软件版本、单板状态、数据完整性标记、保留字段和单板信息;在单板信 息最后1页的末尾具有数据区结束符、空闲字段和页面地址指针为0的结尾指针。
A6、利用单板信息存储区域存储单板信息、升级软件和默认驱动程序。
进一歩,在文件指针区域还存储嵌入式设备的信息,包括硬件类型和操作系统版本。 进一步,当某一插槽位置新插入了通信单板时进行如下操作
Bl 、对新插入通信单板的硬件地址进行哈希运算,根据哈希运算获得的散列码确定单板 信息首地址在哈希表中的位置,并将单板信息的首地址存储在哈希表中,将单板信息的首地 址作为通信单板访问存储单元的文件指针;
B2、在单板信息第l页的头部写入模板信息,根据模板信息确定所述单板信息所占用的 空间,根据所占用的空间计算上述单板信息所需要的页面个数,在页面分配表区域里查找没 有使用的页面,建立链表结构,在每一页面的最后一个字节写入下一页面的地址;
B3、对单板信息所占用的空间进行初始化;
B4、把单板信息写入到存储单元的页面中,保证单板信息掉电不丢失。
进一步,如果单板被拔出,但是所述单板的插槽位置没有插入其它的单板,那么只是把
该插槽位置的单板状态更改为单板不在位置,不重新初始化该单板的信息,这样确保所述单
板再次插入相同的插槽位置时,之前的单板信息不丢失。
进 -步,如果单板被拔出,并重新插入了其它的单板,那么将被拔出单板的单板信息所
占用的存储空间进行初始化,同时把页面分配表区域中相应页面的使用标记全部设置为"未
被使用",然后再根据这个新插入单板的单板信息,重新分配页地址和页空间。进一步,当通信单板需要升级第一驱动程序时,嵌入式设备将默认驱动程序发送给所述 通信单板,通信单板停止当前正在运行的第一驱动程序,并运行默认驱动程序,当通信单板 从其上运行的应用程序接收到执行与第一驱动程序相关联的调用时,通知所述应用程序切换 到默认驱动程序;将第一驱动程度升级为第二驱动程序,通信单板停止默认驱动程序,并运 行第二驱动程序,当通信单板从其上运行的应用程序接收到执行与默认驱动程序相关联的调 用时,通知所述应用程序切换到第二驱动程序。
进一歩,当通信单板需要升级软件但单板存储空间不足时,通过在嵌入式设备存储单元 的单板信息存储区域中执行新的软件部分来替换执行旧的软件部分,在单板信息存储区域中 存储新的软件部分,并通过单板存储空间的第一指针替换在单板存储空间中的旧的软件部分 来执行在单板信息存储区域屮的新的软件部分,其中通过单板信息存储区域的第二指针在执 行所述新的软件部分后,重新返回¥板存储空间中,并继续执行在单板存储空间中的其它与 旧的软件部分不同的软件部分。
其中,所述旧的软件部分仍然保存在单板存储空间中,将所述单板信息存储区域中新的 软件部分的起始地址用作第一指针,根据起始地址部分的修改旧的软件部分,将单板存储空 间中与旧的软件部分不同的软件的起始地址作为第二指针。
进一步,当通信单板需要更新数据时,将当前更新操作所对应更新块中的所有数据备份
至嵌入式设备的单板信息存储区域中,设置备份标记为有效,不允许更改备份的数据,擦除
当前更新操作所对应的更新块,用新数据更新单板信息存储区域中的备份数据,并将更新后
的备份数据写回当前更新块,并设置备份标记为无效,允许更改备份的数据。
本发明的目的在于提供一种嵌入式设备的文件管理系统,该方法能够解决存储空间利用
率不足的问题,提高文件访问速度和工作效率。
-种嵌入式设备的文件管理系统,所述嵌入式设备用于监控通信系统中的通信单板,所
述系统包括存储单元和控制单元,控制单元控制存储单元执行读取和写入操作,其特征在于,
所述控制单兀包括
初始化装置,上电检测时擦除嵌入式设备存储单元的所有存储空间,将存储单元划分为 3个区域文件指针区域、页面分配表区域和单板信息存储区域,在文件指针区域中建立哈希 表,利用哈希表在文件指针区域中存储通信单板的单板信息在存储单元中的首地址;所述页 面分配表区域用于记录嵌入式设备存储单元的页面状态;所述单板信息存储区域用于存储单 板信息、升级软件和默认驱动程序;
哈希处理装置,对通信单板的硬件地址进行哈希运算,根据哈希运算获得的散列码确定通信单板的单板信息的首地址在哈希表中的位置,并将单板信息的首地址存储在哈希表中;
页面控制装置,根据单板信息的大小在单板信息存储区域中分配单板信息所需的页面,
通过链表结构将存储单板信息的页面在逻辑上形成一个连续的数据存储区域;在单板信息第1
页的头部都定义了一个固定的存储模板,方便查询该通信单板的基本信息,所述存储税板的
格式为位置、单板类型、软件版本、单板状态、数据完整性标记、保留字段和单板信息;
在单板信息最后1页的末尾具有数据区结束符、空闲字段和贞面地址指针为0的结尾指针。 进一歩,在文件指针区域还存储嵌入式设备的信息,包括硬件类型和操作系统版本。
进一步,当某一插槽位置新插入了通信单板时进行如下操作-
Bl 、对新插入通信单板的硬件地址进行哈希运算,根据哈希运算获得的散列码确定单板 信息旨地址在哈希表中的位置,并将单板信息的首地址存储在哈希表中,将单板信息的首地 址作为通信单板访问存储单元的文件指针;
B2、在单板信息第1页的头部写入模板信息,根据模板信息确定所述单板信息所占用的 空间,根据所占用的空间计算上述单板信总所需要的页面个数,在页面分配表区域里查找没 有使用的页面,建立链表结构,在每一页面的最后一个字节写入下一页面的地址
B3、对单板信息所占用的空间进行初始化;
B4、把单板信息写入到存储单元的页面中,保证单板信息掉电不丢失。
进一步,如果单板被拔出,但是所述单板的插槽位置没有插入其它的单板,那么只是把
该插槽位置的单板状态更改为单板不在位置,不重新初始化该单板的信息,这样确保所述单
板再次插入相同的插槽位置时,之前的单板信息不丢失。
进一步,如果单板被拔出,并重新插入了其它的单板,那么将被拔出单板的单板信息所
占用的存储空间进行初始化,同时把页面分配表区域中相应页面的使用标记全部设置为"未
被使用",然后再根据这个新插入单板的单板信息,重新分配页地址和页空间。
进一步,当通信单板需要升级第一驱动程序时,嵌入式设备将默认驱动程序发送给所述 通信单板,通信单板停止当前正在运行的第一驱动程序,并运行默认驱动程序,当通信单板 从其上运行的应用程序接收到执行与第一驱动程序相关联的调用时,通知所述应用程序切换 到默认驱动程序;将第一驱动程度升级为第二驱动程序,通信单板停止默认驱动程序,并运 行第二驱动程序,当通信单板从其上运行的应用程序接收到执行与默认驱动程序相关联的调 用时,通知所述应用程序切换到第二驱动程序。
进一步,当通信单板需要升级软件但单板存储空间不足时,通过在嵌入式设备存储单元 的单板信息存储区域中执行新的软件部分来替换执行旧的软件部分,在单板信息存储区域屮存储新的软件部分,并通过单板存储空间的第一指针替换在单板存储空间中的旧的软件部分 来执行在单板信息存储区域中的新的软件部分,其中通过单板信息存储区域的第二指针在执 行所述新的软件部分后,重新返回单板存储空间中,并继续执行在单板存储空间中的其它与 旧的软件部分不同的软件部分。
其中,所述旧的软件部分仍然保存在单板存储空间中,将所述中-板信息存储区域中新的 软件部分的起始地址用作第一指针,根据起始地址部分的修改旧的软件部分,将单板存储空 间中与旧的软件部分不同的软件的起始地址作为第二指针。
进一歩,当通信单板需要更新数据时,将当前更新操作所对应更新块中的所有数据备份 至嵌入式设备的单板信息存储区域中,设置备份标记为有效,不允许更改备份的数据,擦除 当前更新操作所对应的更新块,用新数据更新单板信息存储区域中的备份数据,并将更新后 的备份数据写回当前更新块,并设置备份标记为无效,允许更改备份的数据。


图1是本发明咴入式设备存储单元的存储区域示意图2是本发明嵌入式设备的文件管理方法流程图3是本发明嵌入式设备存储单元的文件指针区域示意图4是本发明嵌入式设备存储单元的页面分配区域示意图5是本发明嵌入式设备存储单元的单板信息存储区域不意图6是木发明利用链表结构存储单板信息的示意图7是本发明执行软件升级时的示意图。
具体实施例方式
下面结合具体的实施方式对本发明进行详细说明
图1是本发明嵌入式设备存储单元的存储区域示意图,本发明将存储单元划分为3个区 域文件指针区域、页面分配表区域和单板信息存储区域。其中,文件指针区域用于存储各 单板信息在存储单元中的首地址;页面分配表区域记录存储单元的存储页面使用情况;单板 信息存储区域用于存储单板的数据信息,且暂存升级软件和默认驱动程序。
下面以EEPROM为例进行说明,常见的EEPOM芯片如AT28C64B, 64K bit (8KX 8)并 行EEPROM,接口为intel总线方式,write cycle<10ms,可以按页写,每页最多64字节,可 以通过软件指令设置写保护。MICROCHIP 25LC640, 64Kbit (8KX8)串行EEPROM,接口 为spi方式,write cycle<5ms,可以按页写,每页最多32字节,可以通过硬件管脚或软件指 令写保护。为了灵活使用EEPROM存储区域,本发明采用了动态分页方式。根据嵌入式设备所监控 的单板数量和单板数据信息的大小动态分配文件指针区域、页面分配表区域和单板信息存储 区域的大小。 一个具体的分配方式可以是,如果存储舉元的容量为64Kbit (8KX8),且每页 32字节,那么8K字节数据区共分为256页,序号为00H FFH。文件指针区域8页(2K bit), 页面分配表区域8页(2Kbit),单板信息存储区域240页(60Kbit)。
文件指针区域、页面分配表区域和单板信息存储区域的大小可以在初始化式进行设定, 并不可以修改。另外,文件指针区域、页面分配表区域和单板信息存储区域的大小可以在初 始化式设定,在嵌入式设备运行过程中进行动态调整。
文件指针区域利用哈希表存储单板信息在存储单元中的首地址,先对单板的硬件地址进 行哈希运算,根据哈希计算获得的散列码确定上述单板信息的首地址在哈希表中的位贾。页 面分配表区域中记录存储单板数据信息的页面信息和暂存升级软件和默认驱动程序的页面信 息。单板信息存储区域用于存储单板的数据信息,且暂存升级软件和默认驱动程序。
嵌入式设备能够在运行的过程中动态调整用于存储升级软件和默认驱动程序的存储单元 空间的大小,以满足不同被监控通信单板的需要。
图2是本发明嵌入式设备的文件管理方法流程图,嵌入式设备的文件管理方法,所述嵌 入式设备用于监控通信系统中的通信单板,其特征在于,包括
Al、上电检测时擦除嵌入式设备存储单元的所有存储空间;
A2、将存储单元划分为3个区域文件指针区域、页面分配表区域和单板信息存储区域; A3、在文件指针区域中建立哈希表,对通信单板的硬件地址进行哈希运算,根据哈希运
算获得的散列码确定通信单板的单板信息的首地址在哈希表中的位置,并将单板信息的首地
址存储在哈希表中;
A4、利用页面分配表区域记录嵌入式设备存储单元的页面状态;
A5、根据单板信息的大小在单板信息存储区域中分配单板信息所需的页面,通过链表结 构将存储单板信息的页面在逻辑上形成一个连续的数据存储区域;在争板信息第1页的头部
都定义了一个固定的存储模板,方便查询该通信单板的基本信息,所述存储模板的格式为 位置、单板类型、软件版本、单板状态、数据完整性标记、保留字段和单板信息;在单板信 息最后l页的末尾具有数据区结束符、空闲字段和页面地址指针为O的结尾指针。 A6、利用单板信息存储区域存储单板信息、升级软件和默认驱动程序。 图3是本发明嵌入式设备存储单元的文件指针区域示意图,文件指针区域分为单板信 息首地址和嵌入式设备配置信息。其中,文件指针区域的头部240字节存储单板信息在存储单元中的首地址,每个单板信息的首地址为2个字节,可以存储120个单板信息的首地址。
例如,第一个单板信息的首地址为0020;第ll个单板信息的首地址为0A2D。
文件指针区域的最后16个字节存储嵌入式设备配置信息,其中,第l字节存储嵌入式设 备硬件类型,第2字节存储嵌入式设备操作系统版本,第3至16字节为保留字节。
图4是本发明嵌入式设备存储单元的页面分配区域示意图,页面分配区域记录存储单元的 页面使用情况,状态类型包括"0"表示该页未被使用;"1"表示该页己经使用,且单板在 对应的位置上;"2"该页已经使用,但单板不在对应的位置上;"3"该页不可写入。
如图4所示,第l个页面的状态为"3",说明第1个页面不可以写入任何数据。当通信单 板需要更新数据时,将当前更新操作所对应更新块中的所有数据备份至嵌入式设备的单板信 息存储区域屮,设置备份标记为有效,不允许更改备份的数据,此时,图3的对应区域(最 后8个页面)的状态也为3,表示这8个页面不可以写入任何数据。
图5是本发明嵌入式设备存储单元的单板信息存储区域示意图,每个页面为32字节,序 号为0()H FOH,分别对应1 240页,每页前31字节为数据,最后 -个字节为指向下-页的 指针,内容为下一页的页码;如果本页为该槽位存储区域的最后一个字节,下页序号写O。
图6是本发明利用链表结构存储单板信息的示意图。用链表结构将多个页面在逻辑上形 成一个连续的数据存储区域。每个槽位第一页开头都定义了一个固定的存储模板,方便査询 该槽位上功能盘的版本类型等一些有用信息。存储模板的格式位置(通信单板所在的插槽 位置)、单板类型(单板的硬件类型)、软件版本、单板状态(O表示盘不在位、3表示盘正常、 4表示手动添加的盘)、数据完整性标记、保留字段和单板信息;在最后l页的末尾具有数 据区结束符、空闲字段和页面地址指针为0的结尾指针。
每个插槽位置都有一个数据完整性标记(标记1), 0表示数据区尚未完成初始化,初始 化完成后,将标记写为FFH;如果检测到某板卡标记为0,则重新给该板卡分配空间;这样
保证了数据区域的完整性,避免了新插入板卡正在分配数据区时断电,导致存储单元错误。
优选的,在文件指针区域还存储嵌入式设备的信息,包括硬件类型和操作系统版本。 优选的,当某一位置新插入了通信单板时的操作如下
Bl、对新插入的通信单板的硬件地址进行哈希运算,根据哈希运算获得的散列码确定上 述单板信息的首地址在哈希表中的位置,并将单板信息的首地址存储在哈希表中,将单板信 息的首地址作为通信单板所使用存储单元的文件指针;
B2、在单板信息第l页的头部写入模板信息,根据模板信息确定所述单板信息所占用的 空间,根据所占用的空间计算上述单板信息所需要的页面个数,在页面分配表区域里查找没有使用的页面,建立链表结构,在每一页面的最后一个字节写入下一页面的地址; B3、对所占用的空间进行初始化;
B4、把单板信息写入到存储单元的页面中,保证单板信息掉电不丢失。
如果中4反被拔出,但是所述中-板的位置没有插入其它的单板,那么只是把该位胃的单板
状态更改为单板不在位置,不重新初始化该单板的信息,这样确保所述单板再次插入相阿的
位置时,之前单板信息不丢失;
如果单板被拔出,并重新插入了其它的单板,那么将被拔H!的单板信息所占用的存储空
间进行初始化,同时把页面分配表区域中的页面使用标记全部清除为不使用,然后再根据这
个新插入单板的单板信息,重新分配页地址和页空间。
现有技术中,通信单板在升级驱动程序时需要进行重新引导,这样才能使处理器识别新 的驱动程序,但是种方式导致通信单板在一段时间内无法使用,降低了通信单板的实时性。 因此,为了避免通信单板升级驱动时的这种问题,本发明提出,当通信单板需要升级其驱动 程序时,嵌入式设备将默认驱动程序发送给所述通信单板,通信单板停止当前正在运行的驱 动程序,并运行嵌入式设备发送的默认驱动程序。此时,通信单板上的应用程序并不/解驱 动程序的变化,因此,如果通信单板从其上运行的应用程序接收到执行与原驱动程序相关联 的调用时,通信单板通知所述应用程序切换到默认驱动程序,因为,此时只有默认驱动程序 在运行。通信单板将驱动程度进行升级,得到升级后的驱动程序。通信单板停止默认驱动程 序的运行,并运行升级后的驱动程序。同理,通信单板上的应用程序并不了解驱动程序的变 化,当通信单板从其上运行的应用程序接收到执行与默认驱动程序相关联的调用时,通知所 述应用程序切换到第二驱动程序。
图7是本发明执行软件升级时的示意图。单板存储空间存储的是需要升级的旧的软件, 并且将旧的软件分为0100-0113个软件部分,SP,共14个旧的软件部分。当通信单板需要升 级软件但单板存储空间不足时,在嵌入式设备存储单元的单板信息存储区域中存储对旧的软 件进行更新的部分,并且将新的软件分为0200-0207个软件部分,B卩,共8个新的软件部分。
当通信单板需要运行升级的软件但单板存储空间不足时,通过在嵌入式设备存储单元的 单板信息存储区域中执行新的软件部分(0200-0207)来替换执行旧的软件部分(0100-0113), 在单板信息存储区域中存储新的软件部分并通过单板存储空间的第一指针,替换在单板存储 空间中的旧的软件部分来执行在单板信息存储区域中的新的软件部分,其中通过单板信息存 储区域的第二指针在执行所述新的软件部分后,重新返回单板存储空间中,并继续执行在单 板存储空间中的其它与旧的软件部分不同的软件。如图7所示,当通信单板运行旧的软件部分0103时,通过第一指针来找到新的软件部分 0201的地址,从而运行新的软件部分0201-0204,当通信单板运行了 0204后,利用第二指针 返回旧的软件部分0105,从而实现了利用新的软件部分0201-0204替换了旧的软件部分 0103-01005。
同理,当通信单板运行旧的软件部分0109时,通过第一指针来找到新的软件部分0207 的地址,从而运行新的软件部分0207-0208,当通信单板运行了 0208后,利用第二指针返回 旧的软件部分0110,从而实现/利用新的软件部分0207-0208替换了旧的软件部分0109-0110。
通过软件部分的跳转执行解决了通信单板存储空间不足的问题,有效的利用了潜入式设 备的存储单元来为通信单板服务。
其中,所述旧的软件部分仍然保存在单板存储空间屮,将所述单板信息存储区域中新的 软件部分的起始地址用作第一指针,根据起始地址部分的修改旧的软件部分,将单板存储空 间中与旧的软件部分不同的软件的起始地址作为第二指针。
进一歩,当通信单板需耍更新数据时,将当前更新操作所对应更新块中的所有数据备份
至嵌入式设备的单板信息存储区域中,设置备份标记为有效,即将单板信息存储区域的相应
页面类型置为"3",不允许更改备份的数据,擦除当前更新操作所对应的更新块,用新数据
更新单板信息存储区域中的备份数据,并将更新后的备份数据写回当前更新块,并设置备份
标记为无效,即将单板信息存储区域的相应页面类型置为"0",允许更改备份的数据。
本发明还提供了 一种嵌入式设备的文件管理系统,所述嵌入式设备用于监控通信系统中
的通信单板,所述系统包括存储单元和控制单元,控制单元控制存储单元执行读取和写入操
作,所述控制单元包括
初始化装置,上电检测时擦除嵌入式设备存储单元的所有存储空间,将存储单元划分为 3个区域文件指针区域、页面分配表区域和单板信息存储区域,在文件指针区域中建,.哈希 表,利用哈希表在文件指针区域中存储通信单板的单板信息在存储单元中的首地址;所述页 面分配表区域用于记录嵌入式设备存储单元的页面状态;所述单板信息存储区域用于存储单 板信息、升级软件和默认驱动程序;
哈希处理装置,对通信单板的硬件地址进行哈希运算,根据哈希运算获得的散列码确定 通信单板的单板信息的首地址在哈希表中的位置,并将单板信息的首地址存储在哈希表中;
页面控制装置,根据单板信息的大小在单板信息存储区域中分配单板信息所需的页面, 通过链表结构将存储单板信息的页面在逻辑上形成一个连续的数据存储区域;在单板信息第1 页的头部都定义了一个固定的存储模板,方便查询该通信单板的基本信息,所述存储模板的格式为位置、单板类型、软件版本、单板状态、数据完整性标记、保留字段和单板信总
在单板信息最后1页的末尾具有数据区结束符、空闲字段和页面地址指针为0的结尾指针。 优选的,在文件指针区域还存储嵌入式设备的信息,包括硬件类型和操作系统版本。
优选的,当某一插槽位置新插入了通信中板时进行如下操作
B、对新插入通信单板的硬件地址进行哈希运算,根据哈希运算获得的散列码确定单板 信息首地址在哈希表中的位置,并将单板信息的首地址存储在哈希表中,将单板信总的首地 址作为通信单板访问存储单元的文件指针;
B2、在单板信息第1页的头部写入模板信息,根据模板信息确定所述单板信息所占用的 空间,根据所占用的空间计算上述单板信息所需要的页面个数,在页面分配表区域単查找没 有使用的页面,建立链表结构,在每一页面的最后一个字节写入下一页面的地址;
B3、对单板信息所占用的空间进行初始化;
B4、把单板信息写入到存储单元的页面中,保证单板信息掉电不丢失。
优选的,如果单板被拔出,但是所述单板的插槽位置没有插入其它的单板,那么只是把
该插槽位置的单板状态更改为单板不在位置,不重新初始化该单板的信总,这样确保所述单
板再次插入相同的插槽位贾时,之前的单板信息不£失。
优选的,如果单板被拔出,并重新插入了其它的单板,那么将被拔出单板的单板信总所
占用的存储空间进行初始化,同时把页面分配表区域中相应页面的使用标记全部设置为"未
被使用",然后再根据这个新插入单板的单板信息,重新分配页地址和页空间。
优选的,当通信单板需要升级第一驱动程序时,嵌入式设备将默认驱动程序发送给所述 通信单板,通信单板停止当前正在运行的第一驱动程序,并运行默认驱动程序,当通信单板 从其上运行的应用程序接收到执行与第一驱动程序相关联的调用时,通知所述应用程序切换 到默认驱动程序;将第一驱动程度升级为第二驱动程序,通信单板停止默认驱动程序,并运 行第二驱动程序,当通信单板从其上运行的应用程序接收到执行与默认驱动程序相关联的调 用时,通知所述应用程序切换到第二驱动程序。
优选的,当通信单板需要升级软件但单板存储空间不足时,通过在嵌入式设备存储单元 的单板信息存储区域中执行新的软件部分来替换执行旧的软件部分,在单板信息存储区域中 存储新的软件部分,并通过单板存储空间的第一指针替换在单板存储空间中的旧的软件部分 来执行在单板信息存储区域中的新的软件部分,其中通过单板信息存储区域的第一.指针在执 行所述新的软件部分后,重新返回单板存储空间中,并继续执行在单板存储空间中的其它与 旧的软件部分不同的软件部分。其中,所述旧的软件部分仍然保存在单板存储空间中,将所述单板信息存储区域'l'新的 软件部分的起始地址用作第一指针,根据起始地址部分的修改旧的软件部分,将单板存储空 间中与旧的软件部分不同的软件的起始地址作为第二指针。
进一步,当通信单板需要更新数据时,将当前更新操作所对应更新块屮的所'打数据备份 至嵌入式设备的单板信息存储区域中,设置备份标记为有效,不允许更改备份的数据,擦除 当前更新操作所对应的更新块,用新数据更新单板信息存储区域中的备份数据,并将更新后 的备份数据写回当前更新块,并设置备份标记为无效,允许更改备份的数据。
权利要求
1、一种嵌入式设备的文件管理方法,所述嵌入式设备用于监控通信系统中的通信单板,其特征在于,包括A1、上电检测时擦除嵌入式设备存储单元的所有存储空间;A2、将存储单元划分为3个区域文件指针区域、页面分配表区域和单板信息存储区域;A3、在文件指针区域中建立哈希表,对通信单板的硬件地址进行哈希运算,根据哈希运算获得的散列码确定通信单板的单板信息的首地址在哈希表中的位置,并将单板信息的首地址存储在哈希表中;A4、利用页面分配表区域记录嵌入式设备存储单元的页面状态;A5、根据单板信息的大小在单板信息存储区域中分配单板信息所需的页面,通过链表结构将存储单板信息的页面在逻辑上形成一个连续的数据存储区域;在单板信息第1页的头部都定义了一个固定的存储模板,方便查询该通信单板的基本信息,所述存储模板的格式为位置、单板类型、软件版本、单板状态、数据完整性标记、保留字段和单板信息;在单板信息最后1页的末尾具有数据区结束符、空闲字段和页面地址指针为0的结尾指针。A6、利用单板信息存储区域存储单板信息、升级软件和默认驱动程序。
2、 根据权利要求1所述的方法,其特征在于,当某一插槽位置新插入了通信单板时进行如下操作Bl、对新插入通信单板的硬件地址进行哈希运算,根据哈希运算获得的散列码确定单板信息首地址在哈希表中的位置,并将单板信息的首地址存储在哈希表中,将单板信息的首地址作为通信单板访问存储单元的文件指针;B2、在单板信息第1页的头部写入模板信息,根据模板信息确定所述单板信息所占用的 .空间,根据所占用的空间计算上述单板信息所需要的页面个数,在页面分配表区域里查找没 有使用的页面,建立链表结构,在每一页面的最后一个字节写入下一页面的地址; B3、对单板信息所占用的空间进行初始化;B4、把单板信息写入到存储单元的页面中,保证单板信息掉电不丢失。
3、 根据权利要求l所述的方法,其特征在于,如果单板被拔出,但是所述单板的插槽位 '置没有插入其它的单板,那么只是把该插槽位置的单板状态更改为单板不在位置,不重新初始化该单板的信息,这样确保所述单板再次插入相同的插槽位置时,之前的单板信息不S失。
4、 根据权利要求1所述的方法,其特征在于,如果单板被拔出,并重新插入了其它的单板,那么将被拔出单板的单板信息所占用的存储空间进行初始化,同时把页面分配表区域中 相应页面的使用标记全部设置为"未被使用",然后再根据这个新插入单板的单板信息,重新 分配页地址和页空间。
5、 根据权利耍求1所述的方法,其特征在于,当通信单板需要升级第一驱动程序吋,咴 入式设备将默认驱动程序发送给所述通信单板,通信单板停止当前正在运行的第--驱动程序, 并运行默认驱动程序,当通信单板从其上运行的应用程序接收到执行与第一驱动程序相关联 的调用时,通知所述应用程序切换到默认驱动程序;将第一驱动程度升级为第二驱动程序, 通信单板停止默认驱动程序,并运行第二驱动程序,当通信单板从其上运行的应用程序接收 到执行与默认驱动程序相关联的调用时,通知所述应用程序切换到第二驱动程序。
6、 根据权利要求l所述的方法,其特征在于,当通信单板需要升级软件但¥-板存储空间 不足时,通过在嵌入式设备存储单元的单板信息存储区域中执行新的软件部分来替换执行旧 的软件部分,在单板信息存储区域中存储新的软件部分,并通过单板存储空间的第-一指针替 换在单板存储空间中的旧的软件部分来执行在单板信息存储区域中的新的软件部分,其中通 过单板信息存储区域的第二指针在执行所述新的软件部分后,重新返回单板存储空间中,并 继续执行在单板存储空间中的其它与旧的软件部分不同的软件部分。其中,所述旧的软件部分仍然保存在单板存储空间中,将所述单板信息存储区域中新的 软件部分的起始地址用作第一指针,根据起始地址部分的修改旧的软件部分,将单板存储空 间中与旧的软件部分不同的软件的起始地址作为第二指针。
7、 根据权利要求l所述的方法,其特征在于,当通信单板需要更新数据时,将当前更新 操作所对应更新块中的所有数据备份至嵌入式设备的单板信息存储区域中,设置备份标记为 有效,不允许更改备份的数据,擦除当前更新操作所对应的更新块,用新数据更新单板信息 存储区域中的备份数据,并将更新后的备份数据写回当前更新块,并设置备份标记为无效, 允许更改备份的数据。
8、 —种嵌入式设备的文件管理系统,所述嵌入式设备用于监控通信系统中的通信单板, 所述系统包括存储单元和控制单元,控制单元控制存储单元执行读取和写入操作,其特征在 于,所述控制单元包括初始化装置,上电检测时擦除嵌入式设备存储单元的所有存储空间,将存储单元划分为 3个区域文件指针区域、页面分配表区域和单板信息存储区域,在文件指针区域中建立哈希 表,利用哈希表在文件指针区域中存储通信单板的单板信息在存储单元中的首地址;所述页 面分配表区域用于记录嵌入式设备存储单元的页面状态;所述单板信息存储区域用于存储单板信息、升级软件和默认驱动程序;哈希处理装置,对通信单板的硬件地址进行哈希运算,根据哈希运算获得的散列码确定 通信单板的中-板信息的首地址在哈希表屮的位置,并将单板信息的首地址存储在哈希表中;页面控制装置,根据单板信息的大小在单板信息存储区域中分配单板倍息所需的页巾l, 通过链表结构将存储单板信息的页面在逻辑上形成一个连续的数据存储区域;在单板信息第1 页的头部都定义/一个固定的存储模板,方便査询该通信单板的基本信总,所述存储模板的 格式为位置、单板类型、软件版本、单板状态、数据完整性标记、保留字段和单板信息 在单板信息最后1页的末尾具有数据区结束符、空闲卞段和页面地址指针为O的结尾指针。
9、根据权利要求8所述的系统,其特征在于,当通信单板需要升级第一驱动程序时,嵌 入式设备将默认驱动程序发送给所述通信单板,通信中.板停止当前正在运行的第一驱动程序, 并运行默认驱动程序,当通信单板从其上运行的应用程序接收到执行与第 一驱动程序相关联 的调用时,通知所述应用程序切换到默认驱动程序;将第一驱动程度升级为第二驱动程序, 通信单板停止默认驱动程序,并运行第二驱动程序,当通信单板从其上运行的应用程序接收 到执行与默认驱动程序相关联的调用时,通知所述应用程序切换到第二驱动程序。
10、根据权利要求8所述的系统,其特征在于,当通信单板需要升级软件但单板存储^ 间不足时,通过在嵌入式设备存储单元的单板信息存储区域中执行新的软件部分来替换执行 旧的软件部分,在单板信息存储区域中存储新的软件部分,并通过单板存储空间的第一指针 替换在单板存储空间中的旧的软件部分来执行在单板信息存储区域中的新的软件部分,其中通过单板信息存储区域的第二指针在执行所述新的软件部分后,重新返回单板存储空间中, 并继续执行在单板存储空间中的其它与旧的软件部分不同的软件部分。其中,所述旧的软件部分仍然保存在单板存储空间中,将所述单板信息存储区域中新的软 件部分的起始地址用作第一指针,根据起始地址部分的修改旧的软件部分,将单板存储空间 中与旧的软件部分不同的软件的起始地址作为第二指针。
全文摘要
本发明涉及一种嵌入式设备的文件管理方法及系统,所述嵌入式设备用于监控通信系统中的通信单板,初始化嵌入式设备的存储单元的所有存储空间,在文件指针区域中建立哈希表,对通信单板的硬件地址进行哈希运算,根据哈希运算获得的散列码确定上述单板信息的首地址在哈希表中的位置,并将单板信息的首地址存储在哈希表中。利用页面分配表区域记录存储了单板信息、升级软件和默认驱动程序的页面的状态。根据单板信息的大小在单板信息存储区域中分配其所需的页面个数,通过链表结构将存储单板信息的页面在逻辑上形成一个连续的数据存储区域。本发明能够解决存储空间利用率不足的问题,提高文件访问速度和工作效率。
文档编号G06F9/445GK101582089SQ20091015721
公开日2009年11月18日 申请日期2009年7月2日 优先权日2009年7月2日
发明者张世瞳, 胡军波, 赵学刚, 赵文涛 申请人:北京讯风光通信技术开发有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1