移动软件系统应用请求并行处理方法及系统的制作方法

文档序号:6494327阅读:203来源:国知局
移动软件系统应用请求并行处理方法及系统的制作方法
【专利摘要】本发明实施例提供一种移动软件系统应用请求并行处理方法,根据基带处理子系统CP基带功能在无线接口层RIL虚拟出多个应用模块收到框架层发起的应用处理请求,把请求分发送到对应的应用模块,并加入到各个应用模块的请求队列;RIL将请求队列封装为自定义AT指令,将自定义AT指令发送到CP,;将CP处理结果内容封装成自定义AT指令,将自定义AT指令发送给RIL;根据头字节,判断属于哪个应用模块,把处理结果内容返回给该应用模块;还提供一种移动软件系统应用请求并行处理系统;本发明不需要AP和CP增加额外的CMUX处理模块,在不增加额外开销成本的同时,完成了CMUX协议同样的功能,减少产品开发和测试周期。
【专利说明】移动软件系统应用请求并行处理方法及系统
【技术领域】
[0001]本发明涉及通信信息【技术领域】,特别涉及一种移动软件系统应用请求并行处理方法及系统。
【背景技术】
[0002]移动软件系统主要由Application Processor应用处理子系统(简称AP)和Communication Processor基带处理子系统(简称CP)构成。AP子系统主要包括操作系统,负责完成与用户交互的智能终端软件功能;CP子系统主要包括基带模块和驱动模块,负责完成基带软件的无线接入功能。两者通过USB、串口等物理设备连接完成相互通信。AP子系统通常分为应用层、框架层、Radio Interface Layer无线接口层(简称RIL)和驱动模块,应用层包括各种应用软件供用户使用,框架层提供各种功能接口给应用层调用,RIL层是框架层无线通信相关功能的具体实现,驱动模块用于发送和接收物理设备上的数据,结构如图1所示。RIL层向上通过套接字SOCKET与框架层进行通信,向下负责封装和解析AT指令,通过设备驱动与基带模块通信。在现有技术中,框架层发起的请求在RIL层进行串行处理,当请求过多时极有可能在RIL层造成阻塞,无法保证语音等功能的实时性,不能带给用户良好的体验。
[0003]为解决以上问题,业界通常采用多路复用协议CMUX,见3GPP协议GSM07.10,在AP子系统和CP子系统两边分别增加CMUX协议处理模块,如图2所示。CMUX协议处理模块负责对底层物理端口进行管理,虚拟出多个独立并行的逻辑通信通道,RIL层在不同的逻辑通道上传输AT指令。由于需要在AP子系统和CP子系统分别增加对应的处理模块,修改模块较多,开发周期长,不利于产品升级维护和快速推出市场。

【发明内容】

[0004]为解决以上问题,本发明提供移动软件系统应用请求并行处理方法及系统,不需要AP和CP增加额外的CMUX处理模块,在不增加额外开销成本的同时,完成了 CMUX协议同样的功能,减少产品开发和测试周期。
[0005]本发明提供一种移动软件系统应用请求并行处理方法,包括:
[0006]根据基带处理子系统CP基带功能在无线接口层RIL虚拟出多个应用模块,将各个应用模块对应于不同的线程;
[0007]RIL收到框架层发起的应用处理请求,把请求分发送到对应的应用模块,并加入到各个应用模块的请求队列;
[0008]RIL将请求队列封装为自定义AT指令,将自定义AT指令发送到CP,等待CP返回所述自定义AT指令处理结果;
[0009]CP完成相应模块的处理请求后,将处理结果内容封装成自定义AT指令,将自定义AT指令发送给RIL,返回处理结果;
[0010]RIL根据收到的处理结果的自定义AT指令的头字节,判断属于哪个应用模块,把处理结果内容返回给该应用模块;
[0011 ] 应用模块把结果转化为框架层需要的数据,传送给框架层。
[0012]本发明提供一种移动软件系统应用请求并行处理系统,包括应用子系统AP和基带处理子系统CP,所述应用子系统AP包括无线接口层RIL ;所述基带处理子系统CP包括基带模块:
[0013]所述无线接口层RIL进一步包括:应用模块虚拟单元、应用请求控制单元、自定义AT指令封装和识别单元A、数据接口 A ;
[0014]所述应用模块虚拟单元,用于根据基带功能虚拟出多个应用模块,将各个应用模块对应于不同的线程;
[0015]所述应用请求控制单元,用于接收框架层发起的应用处理请求,把请求分发送到对应的应用模块,并加入到各个应用模块的请求队列;根据头字节判断属于哪个应用模块,向该应用模块传送处理结果内容;
[0016]所述自定义AT指令封装和识别单元A,用于将请求队列封装为自定义AT指令,识别CP返回结果的自定义AT指令;
[0017]所述数据接口 A,用于将自定义AT指令发送到CP,接收CP发送的自定义AT指令;
[0018]所述基带模块进一步包括:应用请求处理单元、自定义AT指令封装和识别单元B、数据接口 B ;
[0019]所述应用请求处理单元,用于CP完成相应应用模块的处理请求,生成处理结果内容
[0020]所述自定义AT指令封装和识别单元B:将处理结果内容封装成自定义AT指令,识别RIL发送的自定义AT指令;
[0021 ] 所述数据接口 B,用于将自定义AT指令发送给RIL,接收RIL发送的自定义AT指令。
[0022]本发明在RIL层虚拟出多个应用模块,各应用模块均处于不同的线程中,便于实现并发处理,通过设置头字节得到自定义AT指令,头字节的设置可以区分出在对应物理通道上传输的数据所属的应用模块。与现有技术相比,AP和CP不需要增加额外的CMUX处理模块,只需修改RIL层,在不增加额外开销成本的同时,完成了 CMUX协议同样的功能,减少产品开发和测试周期。
【专利附图】

【附图说明】
[0023]图1是现有技术移动软件系统框架示意图;
[0024]图2是现有技术多路复用协议CMUX框架不意图;
[0025]图3是本发明应用请求并行处理方法实施例流程示意图;
[0026]图4是本发明移动软件系统框架示意图;
[0027]图5是本发明各个应用模块的请求队列实施例结构示意图;
[0028]图6是本发明实施例语音模块请求示意图;
[0029]图7是本发明实施例语首模块处理不意图;
[0030]图8是本发明应用请求并行处理系统实施例结构示意图。【具体实施方式】
[0031]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明做进一步详细说明。
[0032]本发明提供一种移动软件系统应用请求并行处理方法,作为一个实施例,如图3所示,包括:
[0033]301、获取CP基带功能,根据所述基带功能在RIL层虚拟出多个应用模块,将各个应用模块对应于不同的线程。
[0034]如图4所示,在RIL层虚拟出语音、电话簿、短信、数据业务、网络、附加业务、天关基带等应用模块,这些应用模块分别处于不同的线程,互不干扰,便于并行处理框架层请求,比如语音对应于线程1、电话簿对应于线程2、短信对应用于线程3等等,虚拟出的应用模块与线程的对应关系不是固定的,以上只是举例说明一种可能的对应关系,还存在其它对应关系,不再 列举。
[0035]现有技术中RIL采用串行处理框架层请求,一个请求的流程包括封装AT指令、发送AT指令、接收回复、返回结果给框架层,等一个请求处理完后才能继续处理下一个请求。如果第一个请求处理时间长,后面的请求就都会很明显地被阻塞。本发明在RIL层虚拟出多个应用模块,将各个应用模块对应于不同的线程,RIL采用多线程处理框架层请求,每个线程负责一类应用请求,比如语音、短信等,不同的线程可以并行进行,比如正在发短信的时候可以处理来电,达到应用请求可以并行处理的目的。
[0036]302,RIL收到框架层发起的应用处理请求,把请求分发送到对应的应用模块,并加入到各个应用模块的请求队列;
[0037]所述框架层发起应用处理请求可以是只发起一个请求,即发起以上应用模块的任意一个请求,也可以发起任意多个请求。例如,框架层可以单独发起一个语音请求,也可以同时发起语音请求、短信请求等多个(一个以上)请求,相应地,RIL同时收到一个以上应用处理请求。
[0038]当RIL收到框架层发起的应用处理请求后,根据上述应用模块分类,把请求发送到对应的应用模块,并加入到各个应用模块的请求队列,如图5所示。
[0039]框架层的请求经过分类后发送到每个应用模块,每个应用模块内部采用队列的形式来保存这些同类的请求,比如应用层短时间连续两次发送短信,从框架层传送来的是两个发送短信的请求,均保存在短信模块的请求队列中,第一个请求处理完了再处理第二个请求,虽然在每个线程内部的多个请求也可能会阻塞,但经过实验评估发现,每个线程内部的阻塞不会影响用户体验。当然,如果请求是与短信不同的打电话请求,那么就将打电话的请求放到语音模块的请求队列中。
[0040]303、RIL将请求队列封装为自定义AT指令,将自定义AT指令发送到CP,等待CP返回所述自定义AT指令处理结果;
[0041]所述RIL将请求队列封装为自定义AT指令包括:RIL从请求队列中取出一个或多个请求,首先封装为AT指令,然后在指令前面增加一个头字节,形成自定义AT指令;本实施例采用自定义AT指令以区分各个应用模块。
[0042]所头字节用于说明AT指令对应的应用模块,由系统定义,RIL层每个应用模块都有不同于其它应用模块的头字节,例如语音模块的头子节可以是1,短信模块的头子节可以耳9坐坐
TH乙寸寸ο
[0043]以语音模块为例,如图6所示,RIL从语音模块的请求队列中取出一个请求,比如是拨号,拨打10086的AT指令是“ATD10086 ”,在指令前面增加一个头字节,形成自定义指令为“1ATD10086;”。
[0044]类似地,RIL层中其它应用模块也按照上述方式获取请求,封装成自定义AT指令,再发送到CP,然后等待CP返回结果。
[0045]304,CP完成相应模块的处理请求后,将处理结果内容封装成自定义AT指令,将自定义AT指令发送给RIL,返回处理结果;
[0046]所述将处理结果内容封装成自定义AT指令包括,将处理结果内容前面加上一个头字节,组装成自定义AT指令,返回处理结果;
[0047]所述头字节用于说明AT指令对应的应用模块,由系统定义,RIL层每个应用模块都有不同于其它应用模块的头字节,例如语音模块的头子节可以是1,短信模块的头子节可以是2等等。本实施例采用自定义AT指令以区分各个应用模块。
[0048]以以上语音模块为例,CP完成相应模块的处理请求,反馈确认信息,把确认信息组装成自定义AT指令“ 10K”,然后把自定义AT指令处理结果“ 10K”返回给RIL ;
[0049]305、RIL根据收到的处理结果的自定义AT指令的头字节,判断属于哪个应用模块,把处理结果内容返回给该应用模块;
[0050]以以上语音模块为例,如图7所示,RIL根据头字节“I”判断属于语音模块,从而把结果返回给语音模块。
[0051]306、所述应用模块把结果转化为框架层需要的数据,传送给框架层。
[0052]以以上语音模块为例,语音模块经过解析和处理把结果转化为框架层需要的数据,最终返回给框架层,完成整个拨号请求流程。
[0053]需要说明的是,RIL层中其他应用模块也可按上述303 — 306步骤进行请求处理,特别地,RIL层中各应用模块可以并行地按上述上述303 - 306步骤进行请求处理,通过AT指令并发,避免RIL层请求阻塞,改善用户体验。
[0054]本发明在RIL层虚拟出多个应用模块,各应用模块均处于不同的线程中,便于实现并发处理,通过设置头字节得到自定义AT指令,头字节的设置可以区分出在对应物理通道上传输的数据所属的应用模块。AP和CP不需要增加额外的CMUX处理模块,只需修改RIL层,在不增加额外开销成本的同时,完成了 CMUX协议同样的功能,减少产品开发和测试周期。
[0055]本发明提供一种移动软件系统应用请求并行处理系统,包括应用子系统AP和基带处理子系统CP,所述应用子系统AP包括无线接口层RILlO ;所述基带处理子系统CP包括基带模块20;如图8所示;
[0056]所述无线接口层RILlO包括:应用模块虚拟单元101、应用请求控制单元102、自定义AT指令封装和识别单元103、数据接口 104 ;
[0057]应用模块虚拟单元101,用于根据基带功能虚拟出多个应用模块,将各个应用模块对应于不同的线程。
[0058]如图4所示,虚拟出语音、电话簿、短信、数据业务、网络、附加业务、天关基带等应用模块,这些应用模块分别处于不同的线程,互不干扰,便于并行处理框架层请求,比如语音对应于线程1、电话簿对应于线程2、短信对应用于线程3等等,虚拟出的应用模块与线程的对应关系不是固定的,以上只是举例说明一种可能的对应关系,还存在其它对应关系,不再 列举。
[0059]现有技术中RIL采用串行处理框架层请求,一个请求的流程包括封装AT指令、发送AT指令、接收回复、返回结果给框架层,等一个请求处理完后才能继续处理下一个请求。如果第一个请求处理时间长,后面的请求就都会很明显地被阻塞。本发明应用模块虚拟单元根据基带功能虚拟出多个应用模块,将各个应用模块对应于不同的线程,RIL采用多线程处理框架层请求,每个线程负责一类应用请求,比如语音、短信等,不同的线程可以并行进行,比如正在发短信的时候可以处理来电,达到应用请求可以并行处理的目的。
[0060]应用请求控制单元102,用于接收框架层发起的应用处理请求,把请求分发送到对应的应用模块,并加入到各个应用模块的请求队列;根据头字节判断属于哪个应用模块,向该应用模块传送处理结果内容。
[0061]所述框架层发起应用处理请求可以是只发起一个请求,即发起以上应用模块的任意一个请求,也可以发起任意多个请求。例如,框架层可以单独发起一个语音请求,也可以同时发起语音请求、短信请求等多个请求。
[0062]所头字节用于说明AT指令对应的应用模块,由系统定义,RIL层每个应用模块都有不同于其它应用模块的头字节,例如语音模块的头子节可以是1,短信模块的头子节可以是2等等,本单元的头子节由自定义AT指令封装和识别单元103识别CP返回结果的自定义AT指令而得到。
[0063]应用请求控制单元102收到框架层发起的应用处理请求后,根据上述应用模块分类,把请求发送到对应的应用模块,并加入到各个应用模块的请求队列,如图5所示。
[0064]框架层的请求经过分类后发送到每个应用模块,每个应用模块内部采用队列的形式来保存这些同类的请求,比如应用层短时间连续两次发送短信,从框架层传送来的是两个发送短信的请求,均保存在短信模块的请求队列中,第一个请求处理完了再处理第二个请求,虽然在每个线程内部的多个请求也可能会阻塞,但经过实验评估发现,每个线程内部的阻塞不会影响用户体验。当然,如果请求是与短信不同的打电话请求,那么就将打电话的请求放到语音模块的请求队列中。
[0065]自定义AT指令封装和识别单元103,用于将请求队列封装为自定义AT指令,识别CP返回结果的自定义AT指令;
[0066]所述将请求队列封装为自定义AT指令包括:RIL从请求队列中取出一个请求,首先封装为AT指令,然后在指令前面增加一个头字节,形成自定义AT指令;本实施例采用自定义AT指令以区分各个应用模块。
[0067]所头字节用于说明AT指令对应的应用模块,由系统定义,RIL层每个应用模块都有不同于其它应用模块的头字节,例如语音模块的头子节可以是1,短信模块的头子节可以
阜ο坐坐
TH乙寸寸ο
[0068]以语音模块为例,如图6所示,RIL从语音模块的请求队列中取出一个请求,比如是拨号,拨打10086的AT指令是“ATD10086 ”,在指令前面增加一个头字节,形成自定义指令为“1ATD10086;”。
[0069]类似地,RIL层中其它应用模块也按照上述方式获取请求,封装成自定义AT指令。[0070]所述识别CP返回结果的自定义AT指令包括识别CP发送的处理结果的自定义AT指令的头子节;
[0071]以以上语音模块为例,如图7所示,识别CP发送的处理结果的自定义AT指令的头字节“I”;
[0072]数据接口 104,用于将自定义AT指令发送到CP,接收CP发送的自定义AT指令;
[0073]所述基带模块包括:应用请求处理单元202、自定义AT指令封装和识别单元203、数据接口 204
[0074]应用请求处理单元202,用于CP完成相应应用模块的处理请求,生成处理结果内容;
[0075]自定义AT指令封装和识别单元203:将处理结果内容封装成自定义AT指令,识别RIL发送的自定义AT指令。
[0076]所述将处理结果内容封装成自定义AT指令包括,将处理结果内容前面加上一个头字节,组装成自定义AT指令,返回处理结果;
[0077]所述头字节用于说明AT指令对应的应用模块,由系统定义,RIL层每个应用模块都有不同于其它应用模块的头字节,例如语音模块的头子节可以是1,短信模块的头子节可以是2等等。本实施例采用自定义AT指令以区分各个应用模块。
[0078]以以上语音模块为例,CP完成相应模块的处理请求,反馈确认信息,把确认信息组装成自定义AT指令“10K”;
[0079]数据接口 204用于将自定义AT指令发送给RIL10,接收RILlO发送的自定义AT指令;
[0080]需要说明的是,上述装置结构可对RIL层中各应用模块进行单个模块的请求处理,也可以对RIL层中各应用模块进行多个模块的请求处理,通过AT指令并发,避免RIL层请求阻塞,改善用户体验。
[0081]本发明在应用模块虚拟单元虚拟出多个应用模块,各应用模块均处于不同的线程中,便于实现并发处理,通过自定义AT指令封装和识别单元设置头字节得到自定义AT指令,头字节的设置可以区分出在对应物理通道上传输的数据所属的应用模块。AP和CP不需要增加额外的CMUX处理模块,只需修改RIL层,在不增加额外开销成本的同时,完成了 CMUX协议同样的功能,减少产品开发和测试周期。
[0082]本发明所举实施方式或者实施例对本发明的目的、技术方案和优点进行了进一步的详细说明,所应理解的是,以上所举实施方式或者实施例仅为本发明的优选实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.移动软件系统应用请求并行处理方法,其特征在于,包括: 根据基带处理子系统CP基带功能在无线接口层RIL虚拟出多个应用模块,将各个应用模块对应于不同的线程; RIL收到框架层发起的应用处理请求,把请求分发送到对应的应用模块,并加入到各个应用模块的请求队列; RIL将请求队列封装为自定义AT指令,将自定义AT指令发送到CP,等待CP返回所述自定义AT指令处理结果; CP完成相应模块的处理请求后,将处理结果内容封装成自定义AT指令,将自定义AT指令发送给RIL,返回处理结果; RIL根据收到的处理结果的自定义AT指令的头字节,判断属于哪个应用模块,把处理结果内容返回给该应用模块; 应用模块把结果转化为框架层需要的数据,传送给框架层。
2.根据权利要求1所述应用请求并行处理方法,其特征在于,所述收到框架层发起的应用处理请求包括同时收到一个以上应用处理请求。
3.根据权利要求 1或2所述应用请求并行处理方法,其特征在于,所述RIL将请求队列封装为自定义AT指令包括:RIL从请求队列中取出请求,首先封装为AT指令,然后在指令前面增加一个头字节,形成自定义AT指令。
4.根据权利要求1或2所述应用请求并行处理方法,其特征在于,所述将处理结果内容封装成自定义AT指令包括,将处理结果内容前面加上一个头字节,组装成自定义AT指令。
5.移动软件系统应用请求并行处理系统,包括应用子系统AP和基带处理子系统CP,所述应用子系统AP包括无线接口层RIL ;所述基带处理子系统CP包括基带模块,其特征在于: 所述无线接口层RIL进一步包括:应用模块虚拟单元、应用请求控制单元、自定义AT指令封装和识别单元A、数据接口 A ; 所述应用模块虚拟单元,用于根据基带功能虚拟出多个应用模块,将各个应用模块对应于不同的线程; 所述应用请求控制单元,用于接收框架层发起的应用处理请求,把请求分发送到对应的应用模块,并加入到各个应用模块的请求队列;根据头字节判断属于哪个应用模块,向该应用模块传送处理结果内容; 所述自定义AT指令封装和识别单元A,用于将请求队列封装为自定义AT指令,识别CP返回结果的自定义AT指令; 所述数据接口 A,用于将自定义AT指令发送到CP,接收CP发送的自定义AT指令;所述基带模块进一步包括:应用请求处理单元、自定义AT指令封装和识别单元B、数据接口 B ; 所述应用请求处理单元,用于CP完成相应应用模块的处理请求,生成处理结果内容所述自定义AT指令封装和识别单元B:将处理结果内容封装成自定义AT指令,识别RIL发送的自定义AT指令; 所述数据接口 B,用于将自定义AT指令发送给RIL,接收RIL发送的自定义AT指令。
6.根据权利要求5所述应用请求并行处理系统,其特征在于,所述收到框架层发起的应用处理请求包括同时收到一个以上应用处理请求。
7.根据权利要求5所述应用请求并行处理系统,其特征在于,所述RIL将请求队列封装为自定义AT指令包括:RIL从请求队列中取出请求,首先封装为AT指令,然后在指令前面增加一个头字节,形成自定义AT指令。
8.根据权利要求5所述应用请求并行处理系统,其特征在于,所述将处理结果内容封装成自定义AT指令包括,将处理结果内容前面加上一个头字节,组装成自定义AT指令。
【文档编号】G06F9/38GK103914281SQ201210591976
【公开日】2014年7月9日 申请日期:2012年12月29日 优先权日:2012年12月29日
【发明者】邓翔宇 申请人:重庆重邮信科通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1