名单管理方法及装置制造方法及图纸

技术编号:7027045 阅读:146 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种名单管理方法及装置,其中该方法包括:建立与FLASH存储的名单具有映射关系的索引表,其中,名单与索引表具有多对一或一对一的映射关系;在对名单进行处理时,根据映射关系对与名单对应的索引表进行处理。通过本发明专利技术,能够提高名单管理效率,改善用户体验。

【技术实现步骤摘要】

本专利技术涉及通讯领域,尤其涉及一种名单管理方法及装置
技术介绍
在消费与控制领域,为了完成鉴权,经常需要对黑、白名单进行管理,包括黑、白名单的查询和写入(新增/删除)。在这些系统中,大部分设备会采用高性价比的FLASH(闪存)芯片作为存储介质,而且不使用操作系统,也没有文件系统。在传统的使用上,设备商将黑白名单存入FLASH后,查询和写入都直接在FLASH芯片上操作。在查询时,甚至可能要遍历所有名单空间,在名单规模越来越大的情况下,导致效率低下,响应速度慢。并且,考虑到同一个名单可能被多次添加和删除,而FLASH在写入时每个bit位只能从1变为0,(如果要从0变为1,则需要先擦除所在扇区),这种设计势必导致大量频繁而耗时的FLASH擦除操作。综上所述,可知现有技术中长期以来一直存在现有的黑白名单管理技术需要管理大量名单导致管理效率低的问题,因此有必要提出改进的技术手段,来解决上述问题。
技术实现思路
有鉴于现有技术存在现有的黑白名单管理技术需管理大量名单导致效率低的问题而做出本专利技术,为此本专利技术的主要目的在于提供一种名单管理方法及装置,其中根据本专利技术实施例的名单管理方法,用于使用FLASH(闪存)存储名单的系统,该方法包括建立与FLASH存储的名单具有映射关系的索引表,其中,名单与索引表具有多对一或一对一的映射关系;在对名单进行处理时,根据映射关系对与名单对应的索引表进行处理。优选地,建立与FLASH存储的名单具有映射关系的索引表,进一步包括对名单进行哈希运算得到哈希值;将名单的哈希值作为索引表的索引值,索引值相同的名单映射至索引表的同一索引项,并且,索引值相同的名单通过名单链表进行链接,其中,名单链表中的每个名单进一步包括以下参数指向下一名单的指针、名单值、状态标识以及状态标识在 FLASH中的地址;将FLASH中存储的名单导入对应的名单链表。优选地,根据映射关系对与名单对应的索引表进行处理,进一步包括在FLASH中处理名单时,计算名单的哈希值;将计算得到的哈希值作为索引值在索引表中查找对应的索引项;从查找到的索引项的名单链表起始位置开始,遍历该名单链表进行查找,并根据查找的结果进行处理。优选地,若对名单进行处理为在FLASH中增加名单时,根据查找的结果进行处理, 进一步包括若查找到名单,则根据名单的状态标识决定是否更新索引表和FLASH中该名单的状态标识;若未查找到名单,则在索引表和FLASH中同步增加名单。优选地,若对名单进行处理为在FLASH中删除名单时,根据查找的结果进行处理,进一步包括若查找到名单,则根据名单的状态标识决定是否更新索引表和FLASH中该名单的状态标识。优选地,索引表的大小为名单数量的10%至25%。根据本专利技术实施例的名单管理装置,用于使用FLASH存储名单的系统,该装置包括建立模块,用于建立与FLASH存储的名单具有映射关系的索引表,其中,名单与索引表具有多对一或一对一的映射关系;处理模块,用于在对名单进行处理时,根据映射关系对与名单对应的索引表进行处理。优选地,建立模块进一步包括哈希运算模块,用于对名单进行哈希运算得到哈希值;设置模块,用于将名单的哈希值作为索引表的索引值,索引值相同的名单映射至索引表的同一索引项,并且,索引值相同的名单通过名单链表进行链接,其中,名单链表中的每个名单进一步包括以下参数指向下一名单的指针、名单值、状态标识以及状态标识在FLASH 中的地址;导入模块,用于将FLASH中存储的名单导入对应的名单链表。优选地,处理模块进一步包括计算模块,用于在FLASH中处理名单时,计算名单的哈希值;第一查找模块,用于将计算得到的哈希值作为索引值查找到对应的索引项;第二查找模块,用于从第一查找模块查找到的索引项的名单链表起始位置开始,遍历该名单链表进行查找;处理子模块,用于根据第二查找模块查找的结果进行增加和/或删除处理。与现有技术相比,根据本专利技术的上述技术方案,建立小于FLASH存储器的索引表, 通过对索引表的处理完成对FLASH存储器中存储的名单的处理,提高了黑白名单的查询响应速度,提高了名单管理效率,改善了用户体验。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中图1是根据本专利技术实施例的名单在FLASH中的一种存放形式的示意图;图2是根据本专利技术实施例的名单管理方法的流程图;图3是根据本专利技术实施例的索引表和名单链表的示意图;图4是根据本专利技术实施例的名单链表的节点内容的示意图;图5是根据本专利技术实施例的增加黑白名单的流程图;图6是根据本专利技术实施例的删除黑白名单的流程图;图7是根据本专利技术实施例的查询黑白名单的流程图;图8是根据本专利技术实施例的名单管理装置的框图。具体实施例方式为使本专利技术的目的、技术方案和优点更加清楚,以下结合附图及具体实施例,对本专利技术作进一步地详细说明。根据本专利技术的实施例,提供了一种名单管理方法。本专利技术用于使用FLASH存储名单(黑白名单)的系统。参考图1,图1是黑白名单在FLASH中的一种存放形式的示意图。如图1所示,在FLASH空间中按照地址存储有多个名单,每个名单包括名单值及其状态信息等参数。图2是根据本专利技术实施例的名单管理方法的流程图,如图2所示,该方法包括(步骤 202-204)步骤202,建立与FLASH存储的名单具有映射关系的索引表,其中,名单与索引表具有多对一或一对一的映射关系。根据本专利技术实施例,在内存中建立索引表,FLASH中存储的每个名单经过哈希计算后,其哈希值作为该表的索引值。如图3所示,索引表中每个索引项或者为空(NULL)、或者指向一个名单链表,索引值相同的名单,均通过名单链表链接起来。索引表中的各项名单链表,均为指针,指向实际存放名单的链表。当指针为空时,表明链表也为空,即当前还不存在哈希值为当前索引的名单。如图4所示,名单链表的每个名单节点,除存储名单值外,还存储该名单的状态标识,以及其状态标识在FLASH上的存储位置,系统启动时,将FLASH上存储的所有名单信息导入对应名单链表。名单链表由各个名单节点链接而成,每个名单节点中,包含名单值、名单状态标识、以及状态标识在FLASH中的存储地址。每个名单都有其状态标识,FLASH中同时存储名单和名单状态标识。其中名单状态标识包含1个或多个字节,初始时状态标识的各个bit 位均为1,之后该名单每删除或添加一次,就将某个为1的bit位置为0。在需要时,统计状态标识中为1的bit位个数,就可以知道该名单是处于黑白名单中,还是已经被删除。以状态标识使用一个字节为例(1)初始添加某名单时,其状态标识为OxFF(llllllll);(2)之后删除该名单,其状态标识变为OxFE(11111110);(3)再次添加该名单,其状态标识变为OxFC(llllllOO);(4)再次删除该名单,其状态标识变为OxFS (11111000)。在上述举例中,bit位按从低到高顺序变化,但本专利技术包括而不限于该顺序,其它变化顺序也包含在本专利技术中,例如还可以为由高到低的顺序变化、或随机的乱序变化等等,此处不赘述。在实际应用中,哈希索引表的大小,可根据黑白名单规模来进行设置,通常可选择为黑白名单本文档来自技高网...

【技术保护点】
1.一种名单管理方法,用于使用FLASH(闪存)存储名单的系统,其特征在于,该方法包括:建立与所述FLASH存储的名单具有映射关系的索引表,其中,所述名单与所述索引表具有多对一或一对一的映射关系;在对所述名单进行处理时,根据所述映射关系对与所述名单对应的所述索引表进行处理。

【技术特征摘要】

【专利技术属性】
技术研发人员:吴明远马凯
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:94

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1