一种通讯装置的多任务器系统及其运行方法,一般无线通讯装置与智能手持式通讯装置(Smart phone,PDA),其主要结构包含有一个主处理器与一个通讯模块,之间利用一组实体的RS232接口连接,因为硬件资源的限制,数据封包的接收与传送是循序完成,无法同时进行,因此,利用数个线程来控制通讯模块与用户程序间的数据封包的传输顺序,利用多任务排程法使每个用户程序对应的数据封包能获得接收或传送的机会。
【技术实现步骤摘要】
本专利技术是为一种有关于移动通讯装置的多任务器的数据处理系统,特别是利用数个线程处理用户程序对应的数据封包,并利用多任务排程法安排数据封包的处理顺序。
技术介绍
移动电话、无线通讯装置及智能于持式通讯装置等,其主要硬件架构通常是由一个主处理器与一个通讯模块(例如,GSM模块,CDMA模块,WiFi模块等)所构成,主处理器与通讯模块之间往往由一组标准的RS232 DTE-DCE接口连接。但是,在硬件资源有限的条件下,要使一组实体的RS232接口让多个使用者程序使用,必须导入多任务器协议(multiplexer protocol)的观念(例如,GSM07.10多任务器协议),即利用所谓的会议(session)的观念来实现。请参考图1,图1是多任务器协议系统架构图,如图1所示,在多任务器协议系统10中,主要包含主处理器15与通讯模块16两个部分。在主处理器15的部分包含有数个用户程序14(例如,无线电接口层(Radio Interface Layer,RIL)的语音通讯程序、点对点协议(Point to Point Protocol,PPP)的数据传输程序及短消息服务(Short Message Service,SMS)程序等),用户程序14经由通讯端口界面13耦合多任务器12。主处理器15端的多任务器12与通讯模块16端的多任务器17通过多任务器协议沟通,以进行数据封包的传送与接收。此外,主处理器15端包含有一个串行驱动程序11(serial driver),串行驱动程序11具有一个缓冲区(buffer),用以储存通过多任务器协议沟通的数据封包。因此,主处理器15端可传送数据封包至通讯模块16端,或接收通讯模块16端所传送的数据封包,其运行方法说明如下当主处理器端15端要接收通讯模块16端所传送的数据封包到达时,通过多任务器12的多任务器协议,串行驱动程序11可获得通讯模块16的数据封包,将所获得的数据封包译码为数据流,经由对应的通讯端口界面13,将数据流传送给对应的用户程序14。同样地,当主处理器15端要传送数据封包到通讯模块16端时,将用户程序14要传送的数据流编码成为数据封包,经由对应的通讯端口界面13,将数据封包传送给串行驱动程序11,通过多任务器12的多任务器协议,数据封包即可传送到通讯模块16。因此,单工处理上述的两个动作时,这两个动作是循序完成而无法同时进行(即单工处理)。也就是说,当有一个用户程序正在传送(接收)数据封包时,另一个用户程序必须等候正在执行的用户程序传送(接收)完毕后才能开始传送(接收)数据封包。单工处理在只有一个重度的用户程序时,确实能发挥强大的功效,但是,其它用户程序有传送(接收)的要求时,却会导致轻度的用户程序无法得到传送(接收)的权限,造成整体的传输效能变差。举例来说,当移动通讯装置经由GPRS系统连接上网际网络(Internet)时,其下载(downlink)的数据封包非常庞大(以GPRS class 8来说,理论值最快可达40 Kbps),单工处理的方法会导致多任务器忙于处理点对点协议的用户程序的数据封包,导致其它用户程序的数据封包的接收(传送)要求无法顺利进行。另一方面,如果用户程序正在传送数据封包时,此时点对点协议涌入大量的数据封包,容易造成串行驱动程序的缓冲区发生溢出(buffer overflow)的问题,此问题虽然可以由RS232本身的溢出控制机制解决,避免数据封包遭受破坏,但却严重影响到数据传输的效率。
技术实现思路
鉴于上述问题,本专利技术所提出的具体方法为利用数个线程控制多任务器系统,同时处理数个用户程序的数据封包传输工作。而本专利技术所提到的线程可利用信号沟通了解彼此的状态,或指示其它线程开始执行。包含有排程线程与处理线程,其中处理线程可分为接收线程与传送线程,分别对应一个用户程序,以负责用户程序的数据封包的接收或传送工作。排程线程利用多任务排程法,例如轮作法(Round Robin),分别安排各处理线程轮流执行一段时间,或分别安排各处理线程轮流处理指定数据量,使每个用户程序的数据封包能公平地获得接收与传送的机会,进而改善整体传输效率。所以为达上述目的,本专利技术所提到的移动通讯装置的多任务器系统中,数据封包的传输工作可分成两个部分,第一部份,接收通讯模块的数据封包,并传送给相对应的用户程序(接收线程);第二部份,将用户程序的数据封包传送至通讯模块(传送线程)。利用若干个线程控制多任务器的运作,让不同用户程序的数据封包的传输工作能同时进行。本专利技术所提到的若干个线程包含有排程线程、接收线程及传送线程,其中排程线程,用以利用多任务排程法,安排接收线程与传送线程的处理顺序,并指示接收线程与传送线程轮流执行一段时间,或轮流处理指定数据量;接收线程,用以接收通讯模块的数据封包,译码所接收的数据封包成为数据流,然后将数据流传送给对应的用户程序;传送线程,用以接收用户程序的数据流,编码所接收的数据流成为数据封包,然后将数据封包传送至通讯模块。本专利技术所提到的移动通讯装置的多任务器系统的运行方法,是利用若干个线程控制多任务器,以处理通讯模块与用户程序间的数据封包,各线程间可利用信号沟通彼此状态,或指示其它线程开始执行,其运行方法包含有下列步骤 执行排程线程,指示各处理线程轮流执行一段时间;当处理线程为接收线程时,开始接收通讯模块的数据封包,译码数据封包成为数据流,将数据流传送给对应的用户程序;当处理线程为接收线程时,开始接收用户程序的数据流,编码数据流成为数据封包,将数据封包传送至通讯模块;及执行一段时间后,执行另一个处理线程。另外,本专利技术所提到的移动通讯装置的多任务器系统的运行方法,其运行方法包含有下列步骤执行排程线程,安排各处理线程顺序,使各处理线程轮流处理指定数据量;当处理线程为接收线程时,开始接收通讯模块的数据封包,译码数据封包成为数据流,将数据流传送给对应的用户程序;当处理线程为接收线程时,开始接收用户程序的数据流,编码数据流成为数据封包,将数据封包传送至通讯模块;及处理指定数据量后,执行另一个处理线程。有关本专利技术的特征与实施,配合附图说明如下。附图说明图1为多任务器协议系统的架构2为移动通讯装置的架构3-a至图3-c为本专利技术所提到的移动的线程示意4是本专利技术所提到的移动第一实施例的流程5是本专利技术所提到的移动第二实施例的流程图具体实施方式请参考图2,图2是本专利技术所提到的移动通讯装置的多任务器系统的硬件架构图,如图2所示,移动通讯装置20包含一个总线24(Bus),用以传送数据封包与线程的沟通信号,总线24耦合主处理器21、通讯模块22及内存23。主处理器21可执行不同的用户程序,通讯模块22是无线通讯模块(例如,GSM、CDMA及WiFi等模块),用以从移动通讯装置20外部接收语音或数据的数据封包,通过多任务器协议,将所接收的数据封包传送至内存23(串行驱动程序的缓冲区)。或将要传送至移动通讯装置20外部的数据封包,从内存23传送至通讯模块。图3-a至图3-c是本专利技术所提到的移动的线程示意图。利用若干个线程处理用户程序与通讯模块间的通讯,如图3-a所示,包含有排程线程(S)32与处理线程33(接收线程(Ri)34及传送线程(Ti)36),各处理线程33对应本文档来自技高网...
【技术保护点】
一种移动通讯装置的多任务器系统,利用多任务器协议,处理一通讯模块与一用户程序间的通讯,该多任务器系统包含:一接收模块,用以接收该通讯模块的一数据封包,译码该数据封包成为一数据流,并将该数据流传送给该用户程序;一传送模块,用以接收该用户程序的该数据流,编码该数据流成为该数据封包,并将该数据封包传送给该通讯模块;及一排程模块,用以产生对应该接收模块与该传送模块的复数个线程,并安排该线程轮流执行一段时间。
【技术特征摘要】
【专利技术属性】
技术研发人员:黄裕修,
申请(专利权)人:佛山市顺德区顺达电脑厂有限公司,神达电脑股份有限公司,
类型:发明
国别省市:44[中国|广东]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。