CN1571376A - 实现嵌入式系统中任务间自适应通讯的方法 - Google Patents

实现嵌入式系统中任务间自适应通讯的方法 Download PDF

Info

Publication number
CN1571376A
CN1571376A CN 03139900 CN03139900A CN1571376A CN 1571376 A CN1571376 A CN 1571376A CN 03139900 CN03139900 CN 03139900 CN 03139900 A CN03139900 A CN 03139900A CN 1571376 A CN1571376 A CN 1571376A
Authority
CN
China
Prior art keywords
message
task
communication
formation
timer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 03139900
Other languages
English (en)
Other versions
CN1314238C (zh
Inventor
张华强
杨新
蒋鲲鹏
危才华
缪敬
王陈
芦东昕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CNB031399002A priority Critical patent/CN1314238C/zh
Publication of CN1571376A publication Critical patent/CN1571376A/zh
Application granted granted Critical
Publication of CN1314238C publication Critical patent/CN1314238C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明属于对计算机操作系统性能所作的改进,具体涉及一种实现嵌入式系统任务间自适应通讯的方法,尤其涉及一种实现嵌入式系统由通讯守护任务向其它任务发送消息的方法。本发明所述方法包括:为通讯守护任务以外的每个任务定义一个消息缓冲队列;估算出每种通讯方式的最大消息流量和平均消息流量的波动范围,根据消息流量确定消息的发送方式。本发明可根据消息流量,自适应调整通讯守护任务发送消息的频率,减少因消息发送、接收、任务切换所带来的开销。采用本发明所述的方法,可以减少通讯中任务切换的次数,大大提高通讯的效率和系统的整体性能。所述方法具有适用范围广、可靠性高、实时性强的特点。

Description

实现嵌入式系统中任务间自适应通讯的方法
技术领域
本发明属于对计算机操作系统性能所作的改进,涉及的是一种实现嵌入式系统任务间自适应通讯的方法,具体是一种实现嵌入式系统和实时系统任务间消息发送的方法,尤其涉及一种实现嵌入式系统由通讯守护任务向其它任务发送消息的方法。
背景技术
一个典型的通讯系统通常为多CPU的分布式系统,每个单板上分布着若干个任务,执行特定的工作。从上层应用的角度来看,单板内的任务和单板间的任务通过消息的方式进行交互。对于板间通讯,设计者通常会设计一个通讯守护任务,负责从底层驱动接收板间来的数据,按照消息格式构造成消息后分发到各任务。同时也负责从本板上的各任务接收消息,转发给底层驱动,通过物理链路把消息发送到其它单板上的任务。
在一个通讯系统中,有些单板的板间通讯流量非常大,通讯守护任务被频繁调度,收到板间来的消息后,调用操作系统提供的消息发送接口把消息发送到目的任务。在操作系统内部,消息发送首先是把消息拷贝到目的任务的任务邮箱里,再释放信号量引起任务的调度,使处于阻塞态的目的任务跃迁到运行态。可见,通讯守护任务每发送一次消息,都会引起一次任务的切换。消息流量越大,任务切换的次数就越多,由此带来的系统开销就会越大。
有些单板会同时与其它多个单板存在板间的通讯,根据需求的不同,就会同时存在多种的通讯物理链路,例如10/100M以太网、232/485串口、双口RAM等,而采用的通讯协议也会不同,例如TCP/IP、HDLC、用户自定义的协议等。在这种情况下,一个单板就会有多个通讯守护任务,每个守护任务对应一种通讯协议。在实际情况中,有些单板间的通讯流量会一直维持很高,有些会一直很低,还有些会上下波动,流量的变化量可能会很大。通讯守护任务按照前面所述的转发消息的方式,对小流量的通讯方式,这种方式对系统性能不会有任何影响。但是,如前所述,大通讯流量会造成频繁的任务切换,导致任务处理消息的能力大大降低。对于通讯流量上下波动的情况,通讯任务的这种处理方式也不够灵活,造成不必要的CPU资源浪费。
发明内容
本发明的目的是提出了一种实现嵌入式系统任务间自适应通讯的方法,具体是一种实现嵌入式系统和实时系统任务间消息发送的方法,用于提高任务间的消息发送效率,特别针对嵌入式系统中的通讯守护任务向其它任务发送消息的情况。
本发明是这样实现的:
一种实现嵌入式系统任务间自适应通讯的方法,其特征在于还包括以下步骤:
定义消息缓冲队列,为通讯守护任务以外的每个任务定义一个消息缓冲队列;
估算消息流量,估算出每种通讯方式的最大消息流量和平均消息流量的波动范围,根据消息流量确定消息的发送方式,估算方式采用预设定时器,并在定时时间内对收到的消息计数,即可初步确定该通信方式的消息流量。
所述消息缓冲队列为一个全局的消息结构指针数组,该数组的每个元素都是一个地址,用于存放某一个任务对应的消息缓冲队列头指针;
在消息结构的定义中增加一个指向下一条消息结构的指针域,该指针在源任务向目的任务发送消息时被初始化为NULL。
当通信守护任务收到一条板间消息时,若发现目的任务对应的队列头指针为空,则将该消息指针直接赋给目的任务对应的队列头指针,并置其下一条消息指针域为空,否则将其赋给队列中最后一条消息的下一条消息指针域,同时置其下一条消息指针域为空。
所述估算消息流量:
为某种通讯方式的最大消息流量对本系统来说较小,并且平均消息流量不会随时间有较大的波动,则通讯守护任务在收到底层驱动传来的消息数据后,加上消息头,把该消息插入消息缓冲队列,并立刻调用操作系统提供的消息发送函数,把消息发送到目的任务。
所述估算消息流量:
为某种通讯方式的最大消息流量对本系统而言较大,并且平均消息流量不会随时间有较大的波动,则采用下述的步骤处理:
第一步.在通讯守护任务入口处申请一个定时器,用于定时地从通讯守护任务向其它任务发送消息,定时器时长由估算或经验获得;
第二步.通讯守护任务收到底层驱动传来的消息数据后,根据该消息的目的任务号,把消息插入对应的消息缓冲队列,此时并不调用操作系统提供的消息发送函数;
第三步.定时器到时后,遍历每个消息缓冲队列,如果队列中有消息,则把该队列的头指针发送到目的任务;
第四步.目的任务收到该消息后,依次从消息缓冲队列中取出消息,进行处理。
所述估算消息流量:
为某种通讯方式的平均消息流量随时间有较大的波动,则采用下述的步骤处理:
第一步.申请一个定时器,该定时器用于定时地从守护任务向其它任务发送消息,初始定时器时长可以设置为10毫秒;
第二步.声明一个全局的消息计数变量,用于记录一个定时周期内守护任务收到的消息数;
第三步.通讯守护任务收到底层驱动传来的消息数据后,根据该消息的目的任务号把消息插入对应的消息缓冲队列,并把消息计数变量递增,此时并不调用操作系统提供的消息发送函数;
第四步.定时器到时后,遍历每个消息缓冲队列,如果队列中有消息,则把该队列的头指针发送到目的任务;
第五步.查看消息计数变量,并除以定时器时长转换为单位时间的消息个数,如果该值的变化不大,说明在这个定时周期内消息流量变化不大,此时定时器的时长保持不变,如果单位时间的消息数有较大的变化,定时器时长就需要调整,调整的策略是若消息流量显著增大,则将定时器时长增加50%,反之则减少50%,如此经过几次反复的收敛后所设定的定时器时长必然会符合该通信流量的要求;
第六步.对消息变量计数值清零;
第七步.目的任务收到该消息后,依次从消息缓冲队列中取出消息,进行处理。
实现嵌入式系统任务间自适应通讯的方法,对应消息流量较小,包括下列步骤:
第一步创建通讯守护任务:根据本系统与外界通讯方式的种类,为每种通讯方式创建一个通讯守护任务,并为每个守护任务创建一个任务邮箱;
第二步定义消息缓冲队列:为通讯守护任务以外的每个任务定义一个消息缓冲队列;
第三步估算消息流量:当通讯方式的最大消息流量对本系统来说较小,并且平均消息流量不会随时间有较大的波动,那么通讯守护任务在收到底层驱动传来的消息数据后,加上消息头,把该消息插入消息缓冲队列,并立刻调用操作系统提供的消息发送函数,把消息发送到目的任务。
所述实现嵌入式系统任务间自适应通讯的方法,对应消息流量较大,包括下列步骤:
第一步创建通讯守护任务:根据本系统与外界通讯方式的种类,为每种通讯方式创建一个通讯守护任务,并为每个守护任务创建一个任务邮箱;
第二步定义消息缓冲队列:为通讯守护任务以外的每个任务定义一个消息缓冲队列;
第三步估算消息流量:当通讯方式的最大消息流量对本系统而言较大,并且平均消息流量不会随时间有较大的波动,采用下述的步骤处理:
(1)在通讯守护任务入口处申请一个定时器,该定时器用于定时地从守护任务向其它任务发送消息,定时器时长由估算或经验获得,
(2)通讯守护任务收到底层驱动传来的消息数据后,根据该消息的目的任务号,把消息插入对应的消息缓冲队列,此时并不调用操作系统提供的消息发送函数,
(3)定时器到时后,遍历每个消息缓冲队列,如果队列中有消息,则把该队列的头指针发送到目的任务,
(4)目的任务收到该消息后,依次从消息缓冲队列中取出消息,进行处理。
所述实现嵌入式系统任务间自适应通讯的方法,对应消息流量波动,包括下列步骤:
第一步创建通讯守护任务:根据本系统与外界通讯方式的种类,为每种通讯方式创建一个通讯守护任务,并为每个守护任务创建一个任务邮箱;
第二步定义消息缓冲队列:为通讯守护任务以外的每个任务定义一个消息缓冲队列,该队列的实现可以参见图2的详细描述;
第三步估算消息流量:当通讯方式的平均消息流量随时间有较大的波动,采用下述的步骤处理:
(1)申请一个定时器,该定时器用于定时地从守护任务向其它任务发送消息,初始定时器时长可以设置为10毫秒,
(2)声明一个全局的消息计数变量,用于记录一个定时周期内守护任务收到的消息数,
(3)通讯守护任务收到底层驱动传来的消息数据后,根据该消息的目的任务号把消息插入对应的消息缓冲队列,并把消息计数变量递增,此时并不调用操作系统提供的消息发送函数,
(4)定时器到时后,遍历每个消息缓冲队列,如果队列中有消息,则把该队列的头指针发送到目的任务,
(5)查看消息计数变量,并除以定时器时长转换为单位时间的消息个数,如果该值的变化不大,说明在这个定时周期内消息流量变化不大,此时定时器的时长保持不变,如果单位时间的消息数有较大的变化,定时器时长就需要调整。调整的策略是若消息流量显著增大,则将定时器时长增加50%,反之则减少50%,如此经过几次反复的收敛后所设定的定时器时长必然会符合该通信流量的要求,
(6)对消息变量计数值清零,
(7)目的任务收到该消息后,依次从消息缓冲队列中取出消息,进行处理。
所述从消息缓冲队列中取出消息后进行的处理:
在任务的入口函数中,进入一个无限循环,阻塞在操作系统提供的消息接收函数上,当有消息到来时,任务跃迁到运行态,从任务邮箱中取出消息,该消息数据为一个指针,指向本任务对应的消息缓冲队列头;
任务从缓冲队列中取出第一条消息,并调整队列头指针,使之指向队列的下一条消息;
随即任务转入消息处理例程,处理结束后,又从缓冲队列中取出下一条消息进行处理,如此循环直至缓冲队列中没有消息;
任务又进入下一次循环。
本发明可根据消息流量,自适应调整通讯守护任务发送消息的频率,减少因消息发送、接收、任务切换所带来的开销。采用本发明所述的方法,可以减少通讯中任务切换的次数,大大提高通讯的效率和系统的整体性能。所述方法具有适用范围广、可靠性高、实时性强的特点。
附图说明
图1是通常采用的通讯守护任务流程;
图2是消息缓冲队列结构;
图3是通讯守护任务在小通讯流量情况下的消息发送流程;
图4是通讯守护任务在大通讯流量情况下的消息发送流程;
图5是通讯守护任务在通讯流量波动情况下的消息发送流程;
图6是目的任务接收消息流程。
具体实施方式
下面结合附图对技术方案的实施作进一步的详细描述:
图1介绍了通常采用的通讯守护任务流程。在通讯守护任务的入口函数中,任务进入一个无限循环,调用操作系统提供的消息接收函数,等待从底层驱动传来的板间消息,此时通讯守护任务处于阻塞态。一旦有消息到来,通讯守护任务跃迁到运行态,从任务邮箱中取出收到的消息,根据该消息的目的任务,调用操作系统提供的消息发送函数,把消息转发到目的任务。然后通讯守护任务进入下一次循环。
图2介绍了消息缓冲队列的实现方法。在消息结构的定义中增加一个指向下一条消息结构的指针域,该指针在源任务向目的任务发送消息时被初始化为NULL。
申请一个全局的消息结构指针数组,该数组的每个元素都是一个地址,存放某一个任务对应的消息缓冲队列头指针。
当通信守护任务收到一条板间消息时,若发现目的任务对应的队列头指针为空,则将该消息指针直接赋给目的任务对应的队列头指针,并置其下一条消息指针域为空,否则将其赋给队列中最后一条消息的下一条消息指针域,同时置其下一条消息指针域为空。如此就形成了图2所示的消息缓冲队列。在此过程中完全无内存的拷贝过程,因此对系统的性能无任何影响。
图3介绍了通讯守护任务在小通讯流量情况下的消息发送流程。在通讯守护任务的入口函数中,任务进入一个无限循环,调用操作系统提供的消息接收函数,等待从底层驱动传来的板间消息,此时通讯守护任务处于阻塞态一旦有消息到来,通讯守护任务跃迁到运行态,从任务邮箱中取出收到的消息,根据该消息的目的任务,把消息插入到对应的缓冲队列尾,调用操作系统提供的消息发送函数,把消息发送到目的任务。然后通讯守护任务进入下一次循环。
图4介绍了通讯守护任务在大通讯流量情况下的消息发送流程。在通讯守护任务的入口函数中,首先申请一个定时器,该定时器用于定时地从通讯守护任务向其它任务发送消息,定时器时长由估算或经验获得。随即任务进入无限循环中,调用操作系统提供的消息接收函数,等待从底层驱动传来的板间消息,此时通讯守护任务处于阻塞态,一旦有消息到来,通讯守护任务跃迁到运行态,从任务邮箱中取出收到的消息,根据该消息的目的任务,把消息插入到对应的缓冲队列尾,然后通讯守护任务进入下一次循环。
定时器到时后,遍历每个消息缓冲队列,如果队列中有消息,则把该队列的头指针发送到目的任务。
申请一个新的定时器,定时器时长保持不变。
图5介绍了通讯守护任务在通讯流量波动情况下的消息发送流程。首先申请一个全局的消息计数变量,用于记录一个定时周期内通讯守护任务收到的消息数。
在通讯守护任务的入口函数中,全局消息计数变量置零,申请一个定时器,该定时器用于定时地从通讯守护任务向其它任务发送消息,定时器初始时长由估算或经验获得。
任务进入一个无限循环,调用操作系统提供的消息接收函数,等待从底层驱动传来的板间消息,此时通讯守护任务处于阻塞态。一旦有消息到来,通讯守护任务跃迁到运行态,从任务邮箱中取出收到的消息,根据该消息的目的任务,把消息插入到对应的缓冲队列尾,并且把消息变量计数变量递增,然后通讯守护任务进入下一次循环。
定时器到时后,遍历每个消息缓冲队列,如果队列中有消息,则把该队列的头指针发送到目的任务。
查看消息计数变量,如果该变量的值变化不大,说明在这个定时周期内消息流量变化不大,此时定时器的时长保持不变。如果消息计数变量的值有较大的变化,定时器时长就需要调整。定时器时长的调整策略由用户决定。
申请一个新的定时器,定时器时长为调整以后的值。
消息变量计数变量清零。
图6介绍了目的任务接收消息的流程。在任务的入口函数中,进入一个无限循环,阻塞在操作系统提供的消息接收函数上,当有消息到来时,任务跃迁到运行态,从任务邮箱中取出消息,该消息数据为一个指针,指向本任务对应的消息缓冲队列头。任务从缓冲队列中取出第一条消息,并调整队列头指针,使之指向队列的下一条消息。随即任务转入消息处理例程,处理结束后,又从缓冲队列中取出下一条消息进行处理,如此循环直至缓冲队列中没有消息。任务又进入下一次循环。

Claims (10)

1、一种实现嵌入式系统中任务间自适应通讯的方法,其特征在于还包括以下步骤:
定义消息缓冲队列,为通讯守护任务以外的每个任务定义一个消息缓冲队列;
估算消息流量,估算出每种通讯方式的最大消息流量和平均消息流量的波动范围,根据消息流量确定消息的发送方式,估算方式采用预设定时器,并在定时时间内对收到的消息计数,即可初步确定该通信方式的消息流量。
2、如权利要求1所述实现嵌入式系统中任务间自适应通讯的方法,其特征在于:
所述消息缓冲队列为一个全局的消息结构指针数组,该数组的每个元素都是一个地址,用于存放某一个任务对应的消息缓冲队列头指针;
在消息结构的定义中增加一个指向下一条消息结构的指针域,该指针在源任务向目的任务发送消息时被初始化为NULL。
3、如权利要求1所述实现嵌入式系统中任务间自适应通讯的方法,其特征在于:
当通信守护任务收到一条板间消息时,若发现目的任务对应的队列头指针为空,则将该消息指针直接赋给目的任务对应的队列头指针,并置其下一条消息指针域为空,否则将其赋给队列中最后一条消息的下一条消息指针域,同时置其下一条消息指针域为空。
4、如权利要求1所述实现嵌入式系统中任务间自适应通讯的方法,其特征在于所述估算消息流量:
为某种通讯方式的最大消息流量对本系统来说较小,并且平均消息流量不会随时间有较大的波动,则通讯守护任务在收到底层驱动传来的消息数据后,加上消息头,把该消息插入消息缓冲队列,并立刻调用操作系统提供的消息发送函数,把消息发送到目的任务。
5、如权利要求1所述实现嵌入式系统中任务间自适应通讯的方法,其特征在于所述估算消息流量:
为某种通讯方式的最大消息流量对本系统而言较大,并且平均消息流量不会随时间有较大的波动,则采用下述的步骤处理:
第一步.在通讯守护任务入口处申请一个定时器,用于定时地从通讯守护任务向其它任务发送消息,定时器时长由估算或经验获得;
第二步.通讯守护任务收到底层驱动传来的消息数据后,根据该消息的目的任务号,把消息插入对应的消息缓冲队列,此时并不调用操作系统提供的消息发送函数;
第三步.定时器到时后,遍历每个消息缓冲队列,如果队列中有消息,则把该队列的头指针发送到目的任务;
第四步.目的任务收到该消息后,依次从消息缓冲队列中取出消息,进行处理。
6、如权利要求1所述实现嵌入式系统中任务间自适应通讯的方法,其特征在于所述估算消息流量:
为某种通讯方式的平均消息流量随时间有较大的波动,则采用下述的步骤处理:
第一步.申请一个定时器,该定时器用于定时地从守护任务向其它任务发送消息,初始定时器时长可以设置为10毫秒;
第二步.声明一个全局的消息计数变量,用于记录一个定时周期内守护任务收到的消息数;
第三步.通讯守护任务收到底层驱动传来的消息数据后,根据该消息的目的任务号把消息插入对应的消息缓冲队列,并把消息计数变量递增,此时并不调用操作系统提供的消息发送函数;
第四步.定时器到时后,遍历每个消息缓冲队列,如果队列中有消息,则把该队列的头指针发送到目的任务;
第五步.查看消息计数变量,并除以定时器时长转换为单位时间的消息个数,如果该值的变化不大,说明在这个定时周期内消息流量变化不大,此时定时器的时长保持不变,如果单位时间的消息数有较大的变化,定时器时长就需要调整,调整的策略是若消息流量显著增大,则将定时器时长增加50%,反之则减少50%,如此经过几次反复的收敛后所设定的定时器时长必然会符合该通信流量的要求;
第六步.对消息变量计数值清零;
第七步.目的任务收到该消息后,依次从消息缓冲队列中取出消息,进行处理。
7、如权利要求1所述实现嵌入式系统中任务间自适应通讯的方法,包括下列步骤:
第一步创建通讯守护任务:根据本系统与外界通讯方式的种类,为每种通讯方式创建一个通讯守护任务,并为每个守护任务创建一个任务邮箱;
第二步定义消息缓冲队列:为通讯守护任务以外的每个任务定义一个消息缓冲队列;
第三步估算消息流量:当通讯方式的最大消息流量对本系统来说较小,并且平均消息流量不会随时间有较大的波动,那么通讯守护任务在收到底层驱动传来的消息数据后,加上消息头,把该消息插入消息缓冲队列,并立刻调用操作系统提供的消息发送函数,把消息发送到目的任务。
8、如权利要求1所述实现嵌入式系统中任务间自适应通讯的方法,包括下列步骤:
第一步创建通讯守护任务:根据本系统与外界通讯方式的种类,为每种通讯方式创建一个通讯守护任务,并为每个守护任务创建一个任务邮箱;
第二步定义消息缓冲队列:为通讯守护任务以外的每个任务定义一个消息缓冲队列;
第三步估算消息流量:当通讯方式的最大消息流量对本系统而言较大,并且平均消息流量不会随时间有较大的波动,采用下述的步骤处理:
(1)在通讯守护任务入口处申请一个定时器,该定时器用于定时地从守护任务向其它任务发送消息,定时器时长由估算或经验获得,
(2)通讯守护任务收到底层驱动传来的消息数据后,根据该消息的目的任务号,把消息插入对应的消息缓冲队列,此时并不调用操作系统提供的消息发送函数,
(3)定时器到时后,遍历每个消息缓冲队列,如果队列中有消息,则把该队列的头指针发送到目的任务,
(4)目的任务收到该消息后,依次从消息缓冲队列中取出消息,进行处理。
9、如权利要求1所述实现嵌入式系统中任务间自适应通讯的方法,包括下列步骤:
第一步创建通讯守护任务:根据本系统与外界通讯方式的种类,为每种通讯方式创建一个通讯守护任务,并为每个守护任务创建一个任务邮箱;
第二步定义消息缓冲队列:为通讯守护任务以外的每个任务定义一个消息缓冲队列;
第三步估算消息流量:当通讯方式的平均消息流量随时间有较大的波动,采用下述的步骤处理:
(1)申请一个定时器,该定时器用于定时地从守护任务向其它任务发送消息,初始定时器时长可以设置为10毫秒,
(2)声明一个全局的消息计数变量,用于记录一个定时周期内守护任务收到的消息数,
(3)通讯守护任务收到底层驱动传来的消息数据后,根据该消息的目的任务号把消息插入对应的消息缓冲队列,并把消息计数变量递增,此时并不调用操作系统提供的消息发送函数,
(4)定时器到时后,遍历每个消息缓冲队列,如果队列中有消息,则把该队列的头指针发送到目的任务,
(5)查看消息计数变量,并除以定时器时长转换为单位时间的消息个数,如果该值的变化不大,说明在这个定时周期内消息流量变化不大,此时定时器的时长保持不变,如果单位时间的消息数有较大的变化,定时器时长就需要调整。调整的策略是若消息流量显著增大,则将定时器时长增加50%,反之则减少50%,如此经过几次反复的收敛后所设定的定时器时长必然会符合该通信流量的要求,
(6)对消息变量计数值清零,
(7)目的任务收到该消息后,依次从消息缓冲队列中取出消息,进行处理。
10、如权利要求7至9中任意一项所述实现嵌入式系统中任务间自适应通讯的方法,其特征在于所述从消息缓冲队列中取出消息后进行的处理:
在任务的入口函数中,进入一个无限循环,阻塞在操作系统提供的消息接收函数上,当有消息到来时,任务跃迁到运行态,从任务邮箱中取出消息,该消息数据为一个指针,指向本任务对应的消息缓冲队列头;
任务从缓冲队列中取出第一条消息,并调整队列头指针,使之指向队列的下一条消息;
随即任务转入消息处理例程,处理结束后,又从缓冲队列中取出下一条消息进行处理,如此循环直至缓冲队列中没有消息;任务又进入下一次循环。
CNB031399002A 2003-07-16 2003-07-16 实现嵌入式系统中任务间自适应通讯的方法 Expired - Lifetime CN1314238C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB031399002A CN1314238C (zh) 2003-07-16 2003-07-16 实现嵌入式系统中任务间自适应通讯的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB031399002A CN1314238C (zh) 2003-07-16 2003-07-16 实现嵌入式系统中任务间自适应通讯的方法

Publications (2)

Publication Number Publication Date
CN1571376A true CN1571376A (zh) 2005-01-26
CN1314238C CN1314238C (zh) 2007-05-02

Family

ID=34470766

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB031399002A Expired - Lifetime CN1314238C (zh) 2003-07-16 2003-07-16 实现嵌入式系统中任务间自适应通讯的方法

Country Status (1)

Country Link
CN (1) CN1314238C (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101847107A (zh) * 2010-03-30 2010-09-29 南京恩瑞特实业有限公司 基于消息队列的外界数据接收方法
WO2016134634A1 (zh) * 2015-02-27 2016-09-01 中兴通讯股份有限公司 报文接收方法、装置、设备、计算机存储介质及中央处理器
CN108696447A (zh) * 2018-08-03 2018-10-23 中国航空工业集团公司雷华电子技术研究所 一种自适应调节dsp间数据流负载的方法
CN109388501A (zh) * 2018-08-31 2019-02-26 平安科技(深圳)有限公司 基于人脸识别请求的通信匹配方法、装置、设备及介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5388238A (en) * 1992-07-24 1995-02-07 At&T Corp. System and method for monitoring the validity of circulating pointers in a FIFO memory
US5909443A (en) * 1997-01-03 1999-06-01 International Business Machines Corporation ATM network congestion control system using explicit rate cell marking
JPH10327175A (ja) * 1997-05-26 1998-12-08 Mitsubishi Electric Corp スイッチ及びスイッチング方法
JP2000049788A (ja) * 1998-05-27 2000-02-18 Matsushita Electric Ind Co Ltd フロ―制御方法ならびにそれを実行する通信要素および通信端末

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101847107A (zh) * 2010-03-30 2010-09-29 南京恩瑞特实业有限公司 基于消息队列的外界数据接收方法
CN101847107B (zh) * 2010-03-30 2012-07-04 南京恩瑞特实业有限公司 基于消息队列的外界数据接收方法
WO2016134634A1 (zh) * 2015-02-27 2016-09-01 中兴通讯股份有限公司 报文接收方法、装置、设备、计算机存储介质及中央处理器
CN105991475A (zh) * 2015-02-27 2016-10-05 中兴通讯股份有限公司 报文接收方法、装置及中央处理器
CN105991475B (zh) * 2015-02-27 2020-01-07 中兴通讯股份有限公司 报文接收方法、装置及中央处理器
CN108696447A (zh) * 2018-08-03 2018-10-23 中国航空工业集团公司雷华电子技术研究所 一种自适应调节dsp间数据流负载的方法
CN109388501A (zh) * 2018-08-31 2019-02-26 平安科技(深圳)有限公司 基于人脸识别请求的通信匹配方法、装置、设备及介质
CN109388501B (zh) * 2018-08-31 2024-03-05 平安科技(深圳)有限公司 基于人脸识别请求的通信匹配方法、装置、设备及介质

Also Published As

Publication number Publication date
CN1314238C (zh) 2007-05-02

Similar Documents

Publication Publication Date Title
CN1725732A (zh) 一种报文限速方法
CN1778079A (zh) 用于协调tcp/ip网络与其他网络之间的流控制的方法和设备
CN1801778A (zh) 一种网络数据流的多维队列调度与管理系统
CN1886667A (zh) 可靠多播通信
CN1878144A (zh) 一种多队列流量控制的方法
CN1812367A (zh) 一种多协议标签交换网络的数据传输方法及系统
CN1846409A (zh) 用于基于传输控制协议话务流特征进行超高速缓存查找的设备和方法
CN1787483A (zh) 一种流量控制方法
CN100351799C (zh) 嵌入式实时操作系统中基于消息对象的任务间通信方法
CN1177451C (zh) 通信系统中多优先级缓冲传输方法
CN1905492A (zh) 一种多数据链路监测维护的方法
CN1633796A (zh) 针对广播或无线网络修改tcp/ip
CN1248465C (zh) 网络通信中数据发送/接收缓冲区的管理方法
CN1314238C (zh) 实现嵌入式系统中任务间自适应通讯的方法
CN1798098A (zh) 区分多业务的抗ip组播数据流冲击通信系统的方法
CN101035130A (zh) 一种基于浏览器/服务器结构的信息分配方法及系统
CN1617525A (zh) 一种保证通用路由封装隧道传输可靠的方法
CN1852285A (zh) 一种承载可变比特率业务的永久虚通路调度方法
CN1518296A (zh) 一种支持多业务的综合队列调度的实现方法
CN1705308A (zh) 一种用户面数据处理方法
CN1571418A (zh) 一种流控传输协议中数据传输实现方法及系统
CN101060489A (zh) 报文转发方法及装置
CN1694435A (zh) 帧到信元的通信量调度
CN1905513A (zh) 一种对ppp多链路协议报文进行按序重组的方法
CN1705295A (zh) 具有优先级的包传输系统及其方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20070502