长短消息的存储方法、存储管理装置以及存储系统的制作方法

文档序号:7921363阅读:221来源:国知局

专利名称::长短消息的存储方法、存储管理装置以及存储系统的制作方法
技术领域
:本发明涉及通信领域,具体地,涉及一种长短消息的存储方法、存储管理装置以及存储系统。
背景技术
:目前,在短消息存储才几制中,一个协i义数据单元(ProtocolDateUnit,简称为PDU)能够发送的最多70个汉字字符,因此,如果短消息内容小于或等于70个汉字字符,就可以用一个PDU对这条短消息进行封装并进行发送或接收。,而如果短消息的内容大于70个汉字字符,就需要先对这条短消息进行分段,然后再进行相关的操作,即,需要将该条短消息封装在多个PDU中进行发送或接收。大于70个汉字字符的短消息可以被称为长短消息或者链接短消息。目前,随着短消息业务的发展,长短消息的使用越来越多。短消息的存储空间可以分为两类手才几上的空间和基于用户识别卡(SubscriberIdentityModule,简称为SIM)/第三代用户识别卡(UniversalSubscriberIdentityModule,简称为USIM)的卡上空间,其中,卡上空间的存储格式受到协议标准的约束。由于PDU的长度最大为176字节,因此,在SIM/USIM卡中,将短消息的存储空间分成多个大小为176字节的独立记录(又可称为存储单元),这种存储空间的划分对一般短消息是适用的。但是,如果要存储由多个具有前后顺序关系的PDU组成的长短消息,则无法直4妾-使用目前SIM/USIM卡提供的存储机制进行存储,即,现有的短消息存储机制将导致对长短消息的错误存储或者无效存储、以及无法进行存储后的正确读取,操作。标题为《一种接收处理与操作处理长短消息存储的方法》的第CN101222700号中国专利申请,提出了一种基于短消息服务(ShortMessagingService,简称为SMS)/增强型短消息月艮务(EnhancedMessageService,简称为EMS)在存^诸卡上划分一块专门空间只于长短消息进行存储的方法。这种方法简单易行,但同时也具有缺点第一,由于长短消息的专门存储空间是预先划分的,长短消息的存储位置以及存储数量受到很大的限制,这样会导致协议中的一些功能无法实现,例如,协议可能无法在指定的位置上存储短消息;第二,不能充分利用存^f诸空间,例如,存^f诸长短消息的空间满了、而存储普通短消息的空间却有剩余,这样降低了长短消息的存储效率;第三,由于长短消息的存储空间十分有限,用户通常只能阅读最近收到的长短消息,这样会降4氐客户体马全。因此,对于长短消息的存储问题,需要进一步研究。
发明内容的问题而估支出本发明,为此,本发明的主要目的在于提供一种长短消息的存储方法、存储管理装置以及存储系统,以解决相关技术中的上述问题。根据本发明的一个方面,4是供了一种长短消息的存储方法,用于存4诸包括多个协"i义lt据单元即PDU的长短消息。才艮据本发明的长短消息的存储方法包括接收上层发送的长短消息的多个PDU;在存储器的多个存储单元中依次存储多个PDU,通过记录当前PDU的下一PDU的存储位置来建立PDU与存储单元间的对应关系;记录多个PDU中的第一个PDU的存4诸单元标识,并向上层返回第一个PDU的存〗诸单元标识。优选地,通过记录当前PDU的下一PDU的存储位置来来建立PDU与存储单元间的对应关系包括调用预先建立的存储单元标识索引关系表;对于前N-1个存储单元,将当前存储单元的存储单元标识对应的索引设置为当前存储单元中存储的当前PDU的下一PDU所在的存4诸单元标识;对于第N个存4诸单元,将当前存4诸单元的存储单元标识对应的索引设置为当前存储单元的存储单元标识;其中,N表示多个PDU的凄t量,且为大于l的整^t。优选地,在索引关系表中,将空闲存储单元对应的存4诸单元标识对应的索引i殳置为空闲标志。优选地,在存储器的多个存储单元中依次存储多个PDU的操作具体包括在存储器中查找空闲存储单元,存储第一个PDU,在查找不到空闲存储单元的情况下,返回失败;在存储了第一个PDU之后,继续查找空闲存储单元用于存储其余PDU,在查找不到空闲存储单元的情况下,返回失败,并将索引关系表还原到存储第一个PDU之前的状态。优选地,在存储器的多个存储单元中依次存储多个PDU的操作还可以包括在上层指定的存储单元存储第一个PDU;在存储了第一个PDU之后,继续查找空闲存储单元用于存储其余PDU,在查找不到空闲存储单元的情况下,返回失败,并将索引关系表还原到存储第一个PDU之前的状况。优选地,方法还可以包括4艮据上层才是供的第一个PDU的存储单元标识,/人存4诸单元标识对应的第一存卡者单元中读取第一个PDU,并获取第一存储单元的第一存储单元标识;读取存储单元标识索引关系表,查找第一存4诸单元标识对应的索引,乂人索引对应的第二存储单元中读取第二个PDU;继续遍历存储单元标识索引关系表,直到读耳又所有PDU;緩存并返回读取到的所有PDU。根据本发明的另一方面,提供了一种存储管理装置,用于管理对包括多个PDU的长短消息的存储,具有面向存储器的单PDU接口,口面向上层的多PDU^妄口。根据本发明的存储管理装置还包括接收模块,用于接收来自上层的长短消息的多个PDU和/或指令;存储管理模块,连接至接收模块,用于在存储器的多个存储单元中依次存储接收模块接收到的多个PDU;对应关系维护模块,连接至存储管理模块,用于根据存储管理模块的存储操作,通过记录当前PDU的下一PDU的存储位置来建立PDU与存储单元间的对应关系;记录才莫块,连4妻至存储管理模块,用于记录多个PDU中第一个PDU的存储单元标识;反馈模块,连接至记录模块,用于将记录模块记录的第一个PDU的存4诸单元标识返回纟合上层。优选地,对应关系维护模块可以包括建立模块,用于建立存储单元标识索引关系表;判断模块,用于判断当前PDU是否是最后一个PDU;设置模块,用于根据存储管理模块的存储操作以及判断模块的判断结果对存储单元标识索引关系表进行设置。优选地,i殳置才莫块可用于对于前N-1个存^f诸单元,将当前存储单元的存储单元标识对应的索引设置为当前存储单元中存储的PDU的下一PDU所在的存储单元标识;以及用于对于第N个存储单元,将当前存储单元的存储单元标识对应的索引设置为当前存储单元的存储单元标识;其中,N表示多个PDU的数量,且为大于1的整数。优选地,存储管理模块可以包括查找子模块,用于在存储器中查找空闲存储单元;管理子模块,连接至查找子模块和接收模块,用于在查找子模块查找到的多个空闲存储单元中存储多个PDU,或者用于在根据接收模块接收到的指令中指定的存储单元中存储第一个PDU,在查找子模块查找到的N-1个空闲存储单元中存储其余的N-1个PDU,其中,N表示多个PDU的凄t量,且为大于1的整数;反馈模块还用于在查找子模块查找不到空闲存储单元的情况下,返回失败信息;设置模块还用于在查找子模块查找不到空闲存储单元的情况下,将索引关系表还原到存储所述第一个PDU之前的状况。优选地,该存储管理装置还可以包括读取才莫块,连接至接收模块和对应关系模块,用于根据接收模块接收到的指令和对应关系模块中的索引关系表从存储器中读取多个PDU,其中,指令中携带有第一个PDU的存储单元标识;緩存模块,连接至读取模块,用于将读取模块读取的多个PDU进行緩存。优选地,反馈模块还可以用于将緩存模块緩存的多个PDU返回给上层。才艮据本发明的另一个方面,提供了一种存储系统。才艮据本发明存储系统包括存储管理装置,具有面向存储器的单协议数据单元即PDU接口和面向上层的多PDU接口,用于管理对包括多个协议数据单元即PDU的长短消息在存储器中的存储,包括接收模块,用于接收来自上层的长短消息的多个PDU和/或指令;存储管理模块,连接至接收模块,用于在存储器的多个存储单元中依次存储接收才莫块接收到的多个PDU;对应关系维护模块,连接至存储管理模块,用于根据存储管理模块的存储操作,通过记录当前PDU的下一PDU的存储位置来建立PDU与存储单元间的对应关系;记录模块,连接至存储管理模块,用于记录多个PDU中第一个PDU的存储单元标识;反馈模块,连接至记录模块,用于将记录模块记录的第一个PDU的存储单元标识返回给上层;存储器,具有单PDU接口,连接至存储管理装置,用于根据存储管理装置的指令对长短消息进行存储,以及被存储管理装置访问。借助于本发明的上述^支术方案,通过在存储多条PDU时建立PDU与存J诸单元的只于应关系,并向上层返回第一条PDU的存4诸单元标识,能够将包括多条PDU的长短消息完整、有效地存储在存储器中,并且本发明的技术方案无需对存储空间进行划分或者基于不同的短消息协议进行不同的操作,解决了相关技术中无法在存储器中有效地存储长短消息的问题,从而能够充分利用存储空间,实现对长短消息的灵活存储、以及实现在协议指定的位置存储,并且能够提高用户体验。本发明的其它特征和优点将在随后的iJt明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。此处所i兌明的附图用来4是供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其i兌明用于解释本发明,并不构成对本发明的不当限定。在附图中图1是根据本发明装置实施例的存储管理装置的结构框图;图2是^^据本发明装置实施例的存储管理装置中存储管理模块的结构框图;图3是根据本发明装置实施例的存储管理装置中对应关系维护模块的结构框图;图4是根据本发明装置实施例的存储管理装置的另一结构框图;图5是根据本发明优选实施例的存储管理装置的结构框图;图6是根据本发明系统实施例的存储系统的结构框图;图7是图6所示存储系统实现长短消息存储的流程图;图8是才艮据本发明方法实施例的长短消息的存储方法的流程图;图9是根据本发明方法实施例的长短消息的存储方法的具体实施的流禾呈图;图10是根据本发明方法实施例的长短消息的存储方法的具体实施的另一流程图。具体实施方式功能扭克述针对相关技术中存在的无法在存储器中有效地存储长短消息的问题,本发明实施例提出了一种长短消息的存储机制,其中,通过在存储多条PDU时建立PDU与存储单元的对应关系,并向上层返回第一条PDU的存储单元标识,能够将包括多条PDU的长短消息完整、有效地存储在存储器中。其主要思想就是基于普通短消息的存储机制实现长短消息的存储,使得从上层用户看来长短消息和普通短消息没有区别,不会给上层用户的使用带来任何不便。下面结合附图对本发明的实施例进行说明。装置实施例根据本实施例,提供了一种存储管理装置,用于管理对包括多个PDU的长短消息的存4诸,具有面向存4诸器的单PDU^妄口和面向上层的多PDU4妻口。图1示出了根据本发明装置实施例的存储管理装置的结构,如图1所示,该存储管理装置还包括接收模块10、存储管理模块12、对应关系维护模块14、记录模块16、反馈模块18。下面结合图1详细描述上述纟莫块的功能。(一)接收模块10接收模块10用于接收来自上层的长短消息的多个PDU(这里提到的上层可以是诸如对短消息进行接收、发送以及PDU编码/解码的功能模块),还可以接收来自上层的指令(这里提到的上层可以是协议),其中,此处接收到的多个PDU是已经由上层按照协议封装并且顺序排序的多个PDU,这里提到的指令可以用于指示上层协议指定的第一个PDU的存储单元标识(需要i兌明的是,存储单元也可以-故称为记录,存〗诸单元标识也可以一皮称为记录号),也可以包括需要从存储器中读取长短消息时给出的第一个PDU的存储单元标识。(二)存储管理模块12存储管理模块12连接至接收模块10,用于在存储器的多个存储单元中依次存储接收模块10接收到的多个PDU。图2示出了根据本发明装置实施例的存储管理装置中存储管理模块的结构,如图2所示,该存储管理模块12可以包括查找子模块120、管理子才莫块122。下面结合图2详细说明该存储管理才莫块12的功能。为达到对接收到的多个PDU进行完整存储的目的,首先查找子模块120在存储器中依次查找空闲存储单元(优选地,查找的操作可以根据下文提到的存储单元标识索引表记录的情况进行),在找到的多个空闲存储单元中,管理子模块122将多个PDU依次存储到其中;或者如果上层指定了PDU存储位置,例如,可以通过指令的形式来指定,则管理子模块122可以在接收模块IO接收到的指令中的指定位置指定的存储单元存入第一个PDU,接着在查找子模块120依次查找到的N-1个空闲存^f诸单元中顺序存储其余的N-1个PDU,这里所述的"N"表示多个PDU的数量,且为大于1的整数。可以看出,本发明实施例提供的存储管理装置既可以实现本地的自主存储,也可以实现上层的指定存储。查找子才莫块120在依次查找空闲存卡者单元的过程中,可能会出现存储器满的情况(即,存储器中没有空闲存储单元),在这种情况下,管理子^t块122可能已经在存储器中存储了多个PDU中的一个或几个PDU,此时,反馈模块18向上层发送失败信息以告知上层该次长短消息的存储操作不能继续,例如返回"存储器满"的错误信息,上层可根据该消息做出相应的操作,并且此时下述对应'关系维护模块14中的设置模块144会将下述存储单元标识索引关系表还原到存4诸第一个PDU前的状态。(三)对应关系维护模块14对应关系维护模块14,连接至存储管理模块12,用于根据存储管理模块12的存储操作,通过记录当前PDU的下一PDU的存储位置来建立PDU与存储单元间的对应关系。图3示出了根据本发明装置实施例的存储管理装置中对应关系维护模块的结构,如图3所示,对应关系维护模块14可以包括建立模块140、判断模块142、设置模块144。下面结合图3详细说明该对应关系维护模块14的功能。为了达到对接收到的多个PDU进行有效存储的目的,建立模块140预先建立一个存4诸单元标识索引关系表,该表可如表1所示,表1通过记录当前PDU的存储单元对应的存储单元标识与其下一条与存^诸单元间的乂十应关系,其中,SIM、ME、SR、BM为不同类型的存储器,1到255为存储器中存储单元对应的存储单元标识(或者可以称为记录号),此外,SIM、ME、SR、BM存储器均支持普通短消息存储机制,并且,只能对单个PDU进行读写操作。表1<table>tableseeoriginaldocumentpage16</column></row><table>0如表l所示,上述对应关系可以设定为存储单元标识对应的索引的内容为0:表示该存储单元标识对应的存储单元为空记录,记录的内容为存4诸单元标识本身表示该存^诸单元标识对应的存储单元中存储的PDU为多个PDU的最后一个PDU或者该PDU为普通短消息的PDU,记录的内容为其它存储单元标识表示存储单元标识对应的存4诸单元中存4诸的PDU的下个PDU存储在该其它存4诸单元标识对应的存储单元中。这样,在建立模块140首次建立的存储单元标识索引关系表中,只有两种情况,即,存4诸单元标识下记录的内容为0或者存^f诸单元标识本身。在存储管理模块12存储多个PDU的过程中,对应关系维护模块14遵从上述对应关系的失见定,在判断才莫块142判断当前PDU不是最后一个PDU时,i殳置才莫块144将当前存储单元的存储单元标识对应的索引设置为当前存储单元中存储的PDU的下一PDU所在的存储单元标识,在判断才莫块142判断当前PDU是最后一个PDU时,设置模块144将当前存储单元的存储单元标识对应的索引设置为当前存储单元的存储单元标识;其中,N表示多个PDU的数量,且为大于1的整4lt。当存储器中存储了完整的长短消息后,索引关系表表示的PDU与存储单元间的对应关系可如表2所示。例如,SIM卡的存储单元标识3下记录的值为5表示存储单元标识为3的存储单元中存储了一个PDU,并且该PDU的下个PDU存4诸在存储单元标识为5的存储单元中,存储单元5中存储的PDU的下个PDU存储在存储单元标识为6的存储单元中,存储单元6中的PDU的下个PDU存储在存储单元标识为8的存储单元中,存储单元8中的PDU没有下个PDU,则可知一个长短消息的4个PDU分别存储在存4诸单元标识为3、5、6、8的存4诸单元中。表2<table>tableseeoriginaldocumentpage17</column></row><table>0(四)记录才莫块16记录模块16,根据存储管理模块12的存储操作,记录多个PDU中第一个PDU的存4诸单元标识。(五)反馈模块18反馈模块18,连接至记录模块16,根据记录模块16记录操作,将第一个PDU的存4诸单元标识返回给上层。上面描述的是存储管理装置中的对长短消息进行存储的功能单元,另一方面,存储管理装置中的对长短消息进行读取的功能单元还可以如图4所示,其中包括读取才莫块20和緩存才莫块22。如图4所示,读取^莫块20连4姿至4矣收才莫块10和对应关系维护模块14,用于根据接收模块IO接收到的来自于上层的指令中携带的第一个PDU的存储单元标识,从存储器中读取第一个PDU,读取对应关系维护模块14中的索引关系表,并根据索引关系表读取其余的PDU;緩存模块22,连接至读取模块20,用于将读取模块20读取的多个PDU进4亍緩存。此外,反4贵才莫块18还可以进一步用于将緩存模块20緩存的多个PDU返回给上层。图5示出了根据本发明优选实施例的存储管理装置的结构,该装置的包括接收模块10、存储管理模块12、对应关系维护模块14、记录冲莫块16、反々贵才莫块18、读取模块20、緩存才莫块22,以及存储管理模块12包括查找子模块120、管理子模块122,对应关系维护模块14包括建立模块140、判断模块142、设置模块144。该装置的功能与上述图1至图4中所示的装置或模块的功能类似,这里不再赘述。使用本实施例提供的技术方案,通过在存储多条PDU时建立PDU与存^f诸单元的只十应关系,并向上层返回第一条PDU的存i诸单元标识,能够将包括多条PDU的长短消息完整、有效地存4诸在存储器中。系纟充实施例根据本实施例,提供了一种存储系统。图6示出了根据本发明系统实施例的存储系统的结构,如图6所示,根据本发明系统实施例的存储系统包括存储管理装置60和存储器62。下面结合图6详细描述上述装置的功能。存储管理装置60,具有面向存储器60的单PDU接口和面向上层的多PDU接口,用于管理对包括多个PDU的长短消息在存储器62中的存储,该存储管理装置60可以是如图1所示的存储管理装置,包括接收模块600、存储管理才莫块602、对应关系维护模块604、记录模块606、反馈模块608,优选地,该存储管理装置60也可以是如图1或图4所示的装置与图2或图3所示的模块的任意组合。存储器62,具有单PDU接口,连接至存储管理装置,用于根据存储管理装置60的指令对长短消息进行存储,以及被存储管理装置访问。如上所述,存储器62可以是多种类型的存储器,例如SIM、ME、SR、BM存储器,并且存储器62支持普通短消息存储机制、只能对单个PDU进行读写操作。图7示出了图6所示存储系统实现长短消息的存储的流程,该流程包括对长短消息进行存储以及从存储器中读取长短消息的处理,如图7所示,该流程包4舌如下处理过程步骤702,存储管理装置60接收到来自上层的长短消息的多个PDU和/或上层指定的第一个PDU的存储单元标识;步骤704,存储管理装置60将多个PDU存储到存储器62中;步骤706,存储管理装置60记录第一个PDU的存储单元标识;步骤708,存储管理装置60建立PDU与存储单元的对应关系;步骤710,存储管理装置60将第一个PDU的存储单元标识返回纟合上层;步骤712,存储管理装置60接收到来自上层的第一个PDU的存〈诸单元标识;步骤714,存储管理装置60从存储器62中读取第一个PDU并緩存;步艰i716,存4诸管理装置60才艮据PDU与存A者单元的对应关系从存储器62中读耳又其余的PDU并緩存;步骤718,存储管理装置60将緩存的所有PDU返回给上层。使用本实施例提供的技术方案,过在存储多条PDU时建立PDU与存^f诸单元的对应关系,并向上层返回第一条PDU的存储单元标识,能够将包括多条PDU的长短消息完整、有效地存储在存储器中。方法实施例根据本实施例,提供了一种长短消息的存储方法。图8示出了根据本发明方法实施例的长短消息的存储方法的处理流程,需要说明的是,在以下方法中描述的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在图8中示出了逻辑顺序,^f旦是在某些情况下,可以以不同于此处的顺序^Vf亍所示出或描述的步骤。如图8所示,该方法包括以下所述的步骤S802-S806:步骤S802,接收上层发送的长短消息的多个PDU;步骤S804,在存储器的多个存储单元中依次存储多个PDU,通过记录当前PDU的下一PDU的存储位置来建立PDU与存储单元间的只十应关系;步艰《S806,i己录多个PDU中的第一个PDU的存^f诸单元标识,并向上层返回第一个PDU的存4诸单元标识。下面详细i兌明上述处理过程的细节。在步骤S804中,可以通过两种方案在存储器中存储第一个PDU:方案一,由存储管理装置自主在本地查找空闲存储单元中存储第一个PDU,查找不到空闲存储单元的情况下,返回失败;方案二,由上层通过指令的形式指定存储单元中存储第一个PDU。在存储其余PDU时,继续由存储管理装置在本地自主查找空闲存储单元并存储其余PDU,在查找不到空闲存储单元的情况下,返回失败,并将索引关系表还原到存储第一个PDU之前的状态。可以看出,本发明实施例提供的长短消息的存储方法既可以实现本地的自主存储,也可以实现上层的指定存储,这样,实现了对长短消息进行完整存储的目的。在步骤S804中,要达到对多个PDU有效存^f诸的目的,就要通过i己录当前PDU的下一PDU的存4诸4立置来来建立PDU与存4诸单元间的对应关系,这一操作具体包括步骤1,首先调用根据存储器已有的存^f诸状况预先建立的存4诸单元标识索引关系表,在该表中通过记录PDU的存4渚单元对应的存j诸单元标识与其下一条PDU的存储单元对应的存储单元标识之间的索引关系来实现PDU与存储单元间的对应关系;优选地,在索引关系表中,可以将空闲存储单元对应的存储单元标识对应的索引设置为空闲标志,例如,将存储单元标识对应的索引设置为0表示存储单元标识对应的存储单元为空闲存储单元(或者称为空记录);步骤2,对于存储不是最后一个PDU的存4诸单元,将当前存储单元的存储单元标识对应的索引设置为当前存储单元中存储的当前PDU的下一PDU所在的存储单元标识;对于存储最后一个PDU的存储单元,将当前存储单元的存储单元标识对应的索引i殳置为当前存4诸单元的存储单元标识。通过上述步骤1和步骤2有效地建立了PDU与存储单元间的关系,这样,在对长短消息进行完整存储的基础上进一步地实现了有效存储,不仅标识了单个PDU的存储位置,更标识了PDU之间的存储链接关系。使用本实施例提供的技术方案,过在存储多条PDU时建立PDU与存〗诸单元的对应关系,并向上层返回第一条PDU的存4诸单元标识,能够将包括多条PDU的长短消息完整、有效地存储在存储器中。图9示出了根据本发明方法实施例的长短消息的存储方法的具体实施的流程,在具体实施之前,已经建立了存储单元标识索引关系表,如图9所示,该处理流程包括步骤步骤902,设置指针Index,Index记录短消息在存储器中的地址,Index的值为存^f诸单元标识,设置指4十Curlndex,Curlndex记录存储多个PDU的过程中存储当前PDU的存储单元对应的存储单元冲示iK,Index禾口Curlndex4刀^台^直啫卩为0;步骤904,i殳置指4十Emptylndex,Emptylndexi己录查找到的空i己录的存々者单元才示i只;步骤906,判断指针Emptylndex当前所指的存储单元标识在索引关系表中对应的值是否为0,为0时,处理进行到步骤908,否贝'J,进4亍到步骤910;步骤908,如果Emptylndex为0,表示没有找到空记录,返回错误信息"存储器满",并还原索引关系表到此次存储操作前的状况;步骤910,如果Emptylndex不为0,判断Curlndex的^直是否为0,在判断为0时,处理进4亍到912,否则,进4亍到914;步骤912,Curlndex为0表示Emptylndex用来存i文第一条PDU,此时,令Index=EmptyIndex;步骤914,Curlndex不等于0表示Curlndex所指的当前存储单元已经存放了PDU,此时,令Emptylndex所指的存储单元用来存放下条PDU,并修改PDU索引表,在索引关系表中令Curlndex所指的存4诸单元标识的表项为Emptylndex,即,PduTable[CurIndex]=EmptyIndex;步骤916,令CurIndex=EmptyIndex,即,将新的空记录作为当前存储单元标识;步艰《918,在当前存4诸单元标识对应的存4诸单元中写PDU;步骤920,判断当前PDU是否还有后续PDU,在有的情况下,处理返回到步骤904,否则,进行到步骤922;步驶朵922,如果没有后续PDU,^修改索引关系表,Curlndex对应的表项为Curlndex,返回短消息第一段PDU存储的位置(即Index)给上层。以上描述的是将多个PDU存储到存储器中的处理过程,另一方面,从存储器中读取多个PDU的方法还包括步骤l,根据上层提供的第一个PDU的存储单元标识,从存储单元标识对应的第一存储单元中读取第一个PDU,并获取第一存储单元的第一存储单元标识;步骤2,读取存+者单元标识索引关系表,查找第一存储单元标识对应的索引,从索引对应的第二存储单元中读取第二个PDU;步骤3,继续遍历存储单元标识索引关系表,直到读取所有PDU;步骤4,緩存并返回读耳又到的所有PDU。图10示出了才艮据本发明方法实施例的长短消息的存储方法的具体实施的另一流程,如图IO所示,该处理流程包括如下步艰《步骤1002,另Curlndex指向上层指定的存储第一个PDU的存储单元对应的存储单元标识;步骤1004,读出Curlndex所指的存l诸单元中的PDU并緩存;步骤1006,根据索引关系表判断当前Curlndex所指的存储单元标识是否有后续的存储单元标识,即,判断当前的PDU是否有后续PDU,在有后续PDU的时,处理进4于到步骤1008,否则,进4亍到步骤1010;步骤1008,获取存储下个PDU的存储单元对应的存储标识,处理返回到步驶《1004;步骤1010,将緩存的所有PDU返回给上层。综上所述,借助于本发明的4支术方案,通过在存4诸多条PDU时建立PDU与存4诸单元的对应关系,并向上层返回第一条PDU的存储单元标识,能够基于普通短消息的存储模式将包括多条PDU的长短消息完整、有效地存储在存储器中,并且本发明的技术方案无需对存储空间进行划分或者基于不同的短消息协议进行不同的操从而能够充分利用存储空间,实现在协议指定的位置存储,并且能够提高用户体验。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。权利要求1.一种长短消息的存储方法,用于存储包括多个协议数据单元即PDU的长短消息,其特征在于,所述方法包括接收上层发送的长短消息的多个PDU;在存储器的多个存储单元中依次存储所述多个PDU,通过记录当前PDU的下一PDU的存储位置来建立PDU与存储单元间的对应关系;记录所述多个PDU中的第一个PDU的存储单元标识,并向上层返回所述第一个PDU的存储单元标识。2.才艮据权利要求1所述的方法,其特4正在于,通过记录当前PDU的下一PDU的存储位置来建立PDU与存^诸单元间的对应关系包括调用预先建立的存储单元标识索引关系表;对于前N-1个存4诸单元,将当前存4诸单元的存^f诸单元标识对应的索引设置为所述当前存4诸单元中存储的当前PDU的下一PDU所在的存4诸单元标识;对于第N个存4诸单元,将当前存储单元的存储单元标识对应的索引i殳置为所述当前存4诸单元的存4诸单元标识;其中,N表示所述多个PDU的数量,且为大于1的整数。3.根据权利要求2所述的方法,其特征在于,在所述索引关系表中,将空闲存储单元对应的存储单元标识对应的索引设置为空闲木亍志。4.根据权利要求3所述的方法,其特征在于,在所述存储器的所述多个存储单元中依次存储所述多个PDU包括在所述存储器中查找空闲存储单元,存储所述第一个PDU,在查找不到空闲存储单元的情况下,返回失败;在存储了所述第一个PDU之后,继续查找空闲存储单元用于存储其余PDU,在查找不到空闲存储单元的情况下,返回失败,并将所述索引关系表还原到存4诸所述第一个PDU之前的状态。5.根据权利要求2所述的方法,其特征在于,在所述存储器的所述多个存储单元中依次存储所述多个PDU包括在所述上层指定的存储单元存储所述第一个PDU;在存储了所述第一个PDU之后,继续查找空闲存储单元用于存储其余PDU,在查找不到空闲存储单元的情况下,返回失败,并将所述索引关系表还原到存储所述第一个PDU之前的状况。6.才艮据权利要求2所述的方法,其特征在于,还包括根据上层提供的所述第一个PDU的存储单元标识,从所述存4诸单元标识对应的第一存〗诸单元中读耳又所述第一个PDU;读取所述存储单元标识索引关系表,查找所述第一存储单元标识对应的索引,从所述索引对应的第二存储单元中读耳又第二个PDU;继续遍历所述存储单元标识索引关系表,直到读耳又所有PDU;IC存并返回读耳又到的所述所有PDU。7.—种存储管理装置,用于管理对包括多个PDU的长短消息的存储,具有面向存储器的单PDU接口和面向上层的多PDU接口,其特征在于,所述存储管理装置还包括接收模块,用于接收来自上层的长短消息的多个PDU和/或指令;存储管理模块,连接至所述接收模块,用于在存储器的多个存储单元中依次存储所述接收模块接收到的所述多个PDU;对应关系维护模块,连接至所述存储管理模块,用于根据所述存储管理模块的存储操作,通过记录当前PDU的下一PDU的存储位置来建立PDU与存储单元间的对应关系;记录模块,连接至所述存储管理模块,用于记录所述多个PDU中第一个PDU的存储单元标识;反馈模块,连接至所述记录模块,用于将所述记录模块记录的第一个PDU的存4诸单元标识返回纟会上层。8.根据权利要求7所述的存储管理装置,其特征在于,所述对应关系维护模块进一步包括建立模块,用于建立存储单元标识索引关系表;判断模块,用于判断当前PDU是否是最后一个PDU;设置模块,用于根据所述存储管理模块的存储操作以及所述判断模块的判断结果对所述存储单元标识索引关系表进行设置。9.根据权利要求8所述的存储管理装置,其特征在于,所述设置才莫块用于对于前N-1个存储单元,将当前存储单元的存储单元标识对应的索引^殳置为所述当前存4诸单元中存4诸的PDU的下一PDU所在的存储单元标识;以及用于对于第N个存储单元,将当前存储单元的存储单元标识对应的索引i殳置为所述当前存储单元的存储单元标识;其中,N表示所述多个PDU的数量,且为大于l的整数。10.根据权利要求7所述的存储管理装置,其特征在于,所述存储管理模块进一步包括查找子模块,用于在所述存储器中查找空闲存储单元;管理子模块,连接至查找子模块和接收模块,用于在查找才莫块查找到的多个空闲存储单元中存^f渚所述多个PDU,或者用于在根据接收模块接收到的所述指令中指定的存储单元中存储第一个PDU,在所述查找子模块查找到的N-1个空闲存储单元中存储其余的N-1个PDU,其中,N表示所述多个PDU的数量,且为大于1的整数;所述反馈模块还用于在所述查找子模块查找不到空闲存爿賭单元的情况下,返回失败信息;所述设置模块还用于在所述查找子模块查找不到空闲存储单元的情况下,将所述索引关系表还原到存储所述第一个PDU之前的状况。11.根据权利要求7所述的存储管理装置,其特征在于,还包括读取模块,连接至所述接收模块和所述对应关系维护模块,用于根据所述接收模块接收到的所述指令和所述对应关系维护模块中的所述索引关系表从所述存储器中读取所述多个PDU,其中,所述指令中携带有第一个PDU的存储单元标识;緩存模块,连接至读取模块,用于将所述读取模块读取的所述多个PDU进行緩存;所述反馈模块还用于将所述緩存模块緩存的所述多个PDU返回给所述上层。12.—种存储系统,其特征在于,包括存储管理装置,具有面向存储器的单协议数据单元即PDU^妾口和面向上层的多PDU^妾口,用于管理只十包"^多个协议数据单元即PDU的长短消息在存储器中的存储,包括接收模块,用于接收来自上层的长短消息的多个PDU和/或指令;存储管理模块,连接至所述接收模块,用于在存储器的多个存储单元中依次存储所述接收模块接收到的所述多个PDU;对应关系维护模块,连接至所述存储管理模块,用于根据所述存储管理模块的存储操作,通过记录当前PDU的下一PDU的存4诸位置来建立PDU与存4诸单元间的对应关系;记录模块,连接至所述存储管理;漠块,用于记录所述多个PDU中第一个PDU的存4渚单元标识;反馈模块,连接至所述记录模块,用于将所述记录模块记录的第一个PDU的存储单元标识返回给上层;所述存储器,具有单PDU接口,连接至所述存储管理装置,用于根据所述存储管理装置的指令对所述长短消息进行存储,以及被所述存储管理装置访问。全文摘要本发明公开了一种长短消息的存储方法、存储管理装置以及存储系统,其中,上述方法包括接收上层发送的长短消息的多个PDU;在存储器的多个存储单元中依次存储多个PDU,通过记录当前PDU的下一PDU的存储位置来建立PDU与存储单元间的对应关系;记录多个PDU中的第一个PDU的存储单元标识,并向上层返回第一个PDU的存储单元标识。通过本发明,能够充分利用存储空间,实现对长短消息的灵活存储、以及实现在协议指定的位置存储,并且能够提高用户体验。文档编号H04W8/22GK101404797SQ200810175589公开日2009年4月8日申请日期2008年11月7日优先权日2008年11月7日发明者良叶,佳唐,蒋兆春,陈光华申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1