CN101976208B - 信息投递的方法和装置 - Google Patents

信息投递的方法和装置 Download PDF

Info

Publication number
CN101976208B
CN101976208B CN201010518285.XA CN201010518285A CN101976208B CN 101976208 B CN101976208 B CN 101976208B CN 201010518285 A CN201010518285 A CN 201010518285A CN 101976208 B CN101976208 B CN 101976208B
Authority
CN
China
Prior art keywords
task
kernel
goal task
goal
multiple nucleus
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.)
Expired - Fee Related
Application number
CN201010518285.XA
Other languages
English (en)
Other versions
CN101976208A (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 CN201010518285.XA priority Critical patent/CN101976208B/zh
Publication of CN101976208A publication Critical patent/CN101976208A/zh
Priority to RU2013121783/08A priority patent/RU2566953C2/ru
Priority to TR2018/06949T priority patent/TR201806949T4/tr
Priority to US13/881,018 priority patent/US9207974B2/en
Priority to BR112013010079-6A priority patent/BR112013010079A2/pt
Priority to PCT/CN2011/075893 priority patent/WO2012055248A1/zh
Priority to EP11835522.1A priority patent/EP2634694B1/en
Application granted granted Critical
Publication of CN101976208B publication Critical patent/CN101976208B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/502Proximity

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种信息投递的方法和装置,其装置包括:接收模块,用于接收源任务发送的待投递信息和目标任务名称;查找模块,用于根据目标任务名称在预设全局关系表中查找与目标任务名称对应的内核号;发送模块,用于根据内核号在多核系统中查找对应的内核,并将待投递信息发送至所述内核内与目标任务名称对应的任务中。本发明提供的信息投递的方法和装置,可实现多核系统内或多核系统间信息的投递,信息投递可靠性高。

Description

信息投递的方法和装置
技术领域
本发明涉及多核技术领域,尤其是涉及一种信息投递的方法和装置。
背景技术
在现有的多核系统中,每个处理器是由多个内核组成,每个内核包含有一个或多个硬件线程。在通信设备中由于业务的复杂性,由多种业务模块、控制模块和交换单板组成,每个单板采用一个或多个多核处理器。
在现有的多核系统中的信息通信方式如图1所示,该信息通信方式沿用传统的单核处理系统模式,单板间和单板内的任务通过IPC方式实现信息通信。IPC方式基于TCP/IP或共享内存的方式实现信息通信,然而在多核系统中,这种信息通信方式无法体现出多核系统的优势。随着多核系统中内核数量的增加,以内核为基本信息通信单元的机制复杂度大大增加,同时该IPC方式也无法实现多核系统处理的负载均衡,当大量信息汇聚到控制面单板需处理时,可能造成控制面单板处理能力过载,同时也无法实现多核系统中任务多实例时的高效通信。
发明内容
本发明的主要目的在于提供一种的信息投递的方法和装置,实现多核系统内或多核系统间信息的投递。
本发明提出一种信息投递的方法,其包括步骤:
接收源任务发送的待投递信息和目标任务名称;
根据目标任务名称在预设全局关系表中查找与目标任务名称对应的内核号;
根据内核号在多核系统中查找对应的内核,并将待投递信息发送至所述内核内与目标任务名称对应的任务中;
所述源任务与目标任务包括在同一多核系统的同一内核内、或包括在同一多核系统的不同内核内、或包括在不同多核系统的内核内;
当目标任务包括多个目标任务实例,根据以下就近原则选择目标任务实例作为待投递信息的目标任务:优先选择与源任务处于同一内核的目标任务实例作为待投递信息的目标任务;若没有与源任务处于同一内核的目标任务实例,则优先选择与源任务处于同一多核系统的目标任务实例作为待投递信息的目标任务;若没有与源任务处于同一内核,也没有与源任务处于同一多核系统的目标任务实例,则选择与源任务处于不同多核系统的目标任务实例作为待投递信息的目标任务;
当根据上述就近原则无法选择,则根据多个目标任务实例是否异常或负载高低的情况进行选择,将运行正常、负载较低的目标任务实例作为待投递信息的目标任务。
优选地,所述预设全局关系表包含:多核系统中的任务名称与该任务所在内核的内核号对应关系。
优选地,所述目标任务包括一个或多个目标任务实例;多个目标任务实例包括在同一多核系统的同一内核内、或包括在同一多核系统的不同内核内、或包括在不同多核系统的内核内。
本发明另提出一种信息投递的装置,其包括:
接收模块,用于接收源任务发送的待投递信息和目标任务名称;
查找模块,用于根据目标任务名称在预设全局关系表中查找与目标任务名称对应的内核号;
发送模块,用于根据内核号在多核系统中查找对应的内核,并将待投递信息发送至所述内核内与目标任务名称对应的任务中;
所述源任务与目标任务包括在同一多核系统的同一内核内、或包括在同一多核系统的不同内核内、或包括在不同多核系统的内核内;
当目标任务包括多个目标任务实例,根据以下就近原则选择目标任务实例作为待投递信息的目标任务:优先选择与源任务处于同一内核的目标任务实例作为待投递信息的目标任务;若没有与源任务处于同一内核的目标任务实例,则优先选择与源任务处于同一多核系统的目标任务实例作为待投递信息的目标任务;若没有与源任务处于同一内核,也没有与源任务处于同一多核系统的目标任务实例,则选择与源任务处于不同多核系统的目标任务实例作为待投递信息的目标任务;
当根据上述就近原则无法选择,则根据多个目标任务实例是否异常或负载高低的情况进行选择,将运行正常、负载较低的目标任务实例作为待投递信息的目标任务。
优选地,所述预设全局关系表包含:多核系统中的任务名称与该任务所在内核的内核号对应关系。
优选地,所述目标任务包括一个或多个目标任务实例;多个目标任务实例包括在同一多核系统的同一内核内、或包括在同一多核系统的不同内核内、或包括在不同多核系统的内核内。
由上可知,利用本发明提供的信息投递的方法和装置,可实现多核系统内或多核系统间信息的投递,信息投递可靠性高。
附图说明
图1是现有技术中单核系统间的结构示意图;
图2是本发明的信息投递的方法一实施例流程图;
图3是本发明的多核系统结构示意图;
图4是本发明的多核系统间的结构示意图;
图5是本发明的信息投递的装置结构示意图;
图6是本发明的多核系统的另一结构示意图;
图7是本发明的多核系统间的另一结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参见图2,提出本发明的信息投递的方法一实施例,其包括:
步骤S101、接收源任务发送的待投递信息和目标任务名称;
步骤S102、根据目标任务名称在预设全局关系表中查找与目标任务名称对应的内核号;
步骤S103、根据内核号在多核系统中查找对应的内核,并将待投递信息发送至所述内核内与目标任务名称对应的任务中。
所述内核内与目标任务名称对应的任务即为目标任务。
进一步地,上述信息投递的方法实施例中,所述预设全局关系表包含:多核系统中的任务名称与该任务所在内核的内核号对应关系。
上述信息投递的方法应用在多核系统中,所述任务名称与该任务所在内核的内核号对应关系,是指多核系统内所有任务名称与该任务名称所在内核的内核号对应关系,或通讯连接的所有多核系统中的所有任务名称与该任务所在内核的内核号对应关系。
进一步地,上述信息投递的方法实施例中,所述源任务与目标任务包括在同一多核系统的同一内核内、或包括在同一多核系统的不同内核内、或包括在不同多核系统的内核内。
进一步地,上述信息投递的方法实施例,其中,所述目标任务包括一个或多个目标任务实例;多个目标任务实例包括在同一多核系统的同一内核内、或包括在同一多核系统的不同内核内、或包括在不同多核系统的内核内。
参见图3,设多核系统1为独立的多核系统,该多核系统1内包括有:内核①、内核②和内核③。其中,内核①包括有任务A-1和任务C-1;内核②包括有任务A-2和任务B-1。内核③包括有任务D-1和E-1。其预设全局关系表包括有如下任务名称与该任务所在内核的内核号对应关系:A-1→①、A-2→②、B-1→②、C-1→①、D-1→③、E-1→③。
参见图4,设多核系统1、2和3为相互通讯的多核系统,其中多核系统1包括有内核ⅰ,内核ⅰ包括有任务a-1和b-1。多核系统2包括有内核ⅱ和内核ⅲ,内核ⅱ包括有任务a-2和d-1;内核ⅲ包括有任务a-3和c-1。多核系统3包括有内核ⅳ和内核ⅴ,内核ⅳ包括有b-2和d-2;内核ⅴ包括e-1和f-1。其预设全局关系表包括有如下任务名称与该任务所在内核的内核号对应关系:a-1→ⅰ、a-2→ⅱ、a-3→ⅲ、b-1→ⅰ、b-2→ⅳ、c-1→ⅲ、d-1→ⅱ、d-2→ⅳ、e-1→ⅴ、f-1→ⅴ。
进一步地,上述信息投递的方法实施例中,当目标任务只有一个目标任务实例,则直接将待投递信息发送至该目标任务实例中。
进一步地,上述信息投递的方法实施例中,当目标任务包括多个目标任务实例时,根据就近原则选择目标任务实例作为待投递信息的目标任务。所述就近原则如下:优先选择与源任务处于同一内核的目标任务实例作为待投递信息的目标任务;若没有与源任务处于同一内核的目标任务实例,则优先选择与源任务处于同一多核系统的目标任务实例作为待投递信息的目标任务;若没有与源任务处于同一内核,也没有与源任务处于同一多核系统的目标任务实例,则选择与源任务处于不同多核系统的目标任务实例作为待投递信息的目标任务。
另外,若源任务和目标任务在不同的多核系统中;或在同一多核系统中,但位于不同内核中,则可根据目标任务中的多个目标任务实例的负载情况和是否异常的具体情况选择某一目标任务实例作为待投递信息的目标任务。
以图4为例,设任务d-1为源任务,任务d-1需向任务a发送待投递信息,任务a包括有a-1、a-2、a-3三个任务实例。其中,任务a-2处于内核ⅰi内,任务a-3处于内核iii内,任务a-1处于内核i内;任务d-1处于内核ⅱ内,根据上述的就近原则,优选选择与源任务d-1由于处于同一内核的目标任务实例a-2作为待投递信息的目标任务。若被选为目标任务的目标任务实例出现异常或负载较高的情况,则按照同样原理在其他的目标任务实例中选择一个作为待投递信息的目标任务。即若目标任务实例a-2异常或负载较高,则优先选择与源任务d-1处于同一多核系统的目标任务实例a-3作为待投递信息的目标任务;若目标任务实例a-2和a-3都异常或负载较高,则与源任务处于不同多核系统的目标任务实例a-1作为待投递信息的目标任务。
以图4为例,设任务c-1为源任务,任务c-1需向任务d发送待投递信息。其中,任务d包括有d-1和d-2两个任务实例;任务源任务c-1和任务d-1处于同一多核系统2内;任务d-2处于多核系统3内;根据上述的就近原则,优选选择任务d-1作为待投递信息的目标任务;若任务d-1异常或负载较高,则选择任务d-2作为待投递信息的目标任务。
以图4为例,设任务d-2为源任务,任务d-2需向任务a发送待投递信息。其中,任务a包括有a-1、a-2和a-3三个任务实例。任务a的所有实例a-1、a-2、a-3和源任务d-2不处于同一多核系统内;任务a-1处于多核系统1内,而任务a-2和a-3处于多核系统2内。根据上述就近原则无法选择,此时需根据任务a三个任务实例是否异常或负载高低的情况进行选择,将运行正常,且负载较低的任务实例作为待投递信息的目标任务。
通过上述就近原则的选择方式,可以提高信息投递的速度和效率,可避免信息投递失败现象发生,同时还可保证同一任务中的不同任务实例的负载均衡。
另外,上述信息投递的方法实施例,当目标任务包括多个目标任务实施例时,还可不根据就近原则而直接查找负载最低的目标任务实例,将该目标任务实例作为待投递信息的目标任务。以图4为例,设任务a-1为源任务,任务a-1需向任务b发送待投递信息,任务b包括有b-1和b-2两个任务实例,任务b-1负载大,任务b-2负载低,因此任务b-2为待投递信息的目标任务,将待投递信息发送至内核ⅳ内的任务b-2中。若被选为目标任务的目标任务实例出现异常情况,则按照同样原理在其他的目标任务实例中选择一个作为待投递信息的目标任务,以保证同一任务中的不同任务实例的负载均衡,同时还可避免信息投递失败现象发生。
以上所述信息投递的方法实施例,可实现多核系统内或多核系统间信息的投递,信息投递可靠性高,提高了信息投递的速度和效率、实现了多核系统中任务实例的负载均衡,同时还可防止信息投递的失败。
参见图5,提出本发明的信息投递的装置10一实施例,其包括:接收模块11、查找模块12和发送模块13。其中,接收模块11,用于接收源任务发送的待投递信息和目标任务名称;查找模块12,用于根据目标任务名称在预设全局关系表中查找与目标任务名称对应的内核号;发送模块13,用于根据内核号在多核系统中查找对应的内核,并将待投递信息发送至所述内核内与目标任务名称对应的任务中。
所述内核内与目标任务名称对应的任务即为目标任务。
进一步地,上述信息投递的装置实施例中,所述预设全局关系表包含:多核系统中的任务名称与该任务所在内核的内核号对应关系。
上述信息投递的装置10应用在多核系统中,所述任务名称与该任务所在内核的内核号对应关系,是指多核系统内所有任务名称与该任务名称所在内核的内核号对应关系,或通讯连接的所有多核系统中的所有任务名称与该任务所在内核的内核号对应关系。
进一步地,上述信息投递的装置实施例,其中,所述源任务与目标任务包括在同一多核系统的同一内核内、或包括在同一多核系统的不同内核内、或包括在不同多核系统的内核内。
进一步地,上述信息投递的装置实施例,其中,所述目标任务包括一个或多个目标任务实例;多个目标任务实例包括在同一多核系统的同一内核内、或包括在同一多核系统的不同内核内、或包括在不同多核系统的内核内。
参见图6,设多核系统1为独立的多核系统,该多核系统配置有本发明的信息投递的装置10。该多核系统1内包括有:内核①、内核②和内核③。其中,内核①包括有任务A-1和任务C-1;内核②包括有任务A-2和任务B-1。内核③包括有任务D-1和E-1。其预设全局关系表包括有如下任务名称与该任务所在内核的内核号对应关系:A-1→①、A-2→②、B-1→②、C-1→①、D-1→③、E-1→③。源任务需要发送待投递信息时,首先将待投递信息和目标任务名称发送给信息投递的装置10,信息投递的装置10则根据目标任务名称在预设全局关系表中与该目标任务名称对应的内核号,然后在多核系统1中查找与内核号对应的内核,并将待投递信息发送到该内核中与目标任务名称对应的任务中。
参见图7,设多核系统1、2和3为相互通讯的多核系统,每个多核系统中分别配置有本发明的信息投递的装置10。其中多核系统1包括有内核ⅰ,内核ⅰ包括有任务a-1和b-1。多核系统2包括有内核ⅱ和内核ⅲ,内核ⅱ包括有任务a-2和d-1;内核ⅲ包括有任务a-3和c-1。多核系统3包括有内核ⅳ和内核ⅴ,内核ⅳ包括有b-2和d-2;内核ⅴ包括e-1和f-1。其预设全局关系表包括有如下任务名称与该任务所在内核的内核号对应关系:a-1→ⅰ、a-2→ⅱ、a-3→ⅲ、b-1→ⅰ、b-2→ⅳ、c-1→ⅲ、d-1→ⅱ、d-2→ⅳ、e-1→ⅴ、f-1→ⅴ。同理,源任务需要发送待投递信息时,首先将待投递信息和目标任务名称发送给信息投递的装置10,信息投递的装置10则根据目标任务名称在预设全局关系表中与该目标任务名称对应的内核号,然后在多核系统1、2和3中查找与内核号对应的内核,并将待投递信息发送到该内核中与目标任务名称对应的任务中。
进一步地,上述信息投递的装置实施例中,当目标任务只有一个目标任务实例,则直接将待投递信息发送至该目标任务实例中。
进一步地,上述信息投递的装置实施例中,所述查找模块12,还用于当目标任务包括多个目标任务实例时,根据就近原则选择目标任务实例作为待投递信息的目标任务。所述就近原则如下:优先选择与源任务处于同一内核的目标任务实例作为待投递信息的目标任务;若没有与源任务处于同一内核的目标任务实例,则优先选择与源任务处于同一多核系统的目标任务实例作为待投递信息的目标任务;若没有与源任务处于同一内核,也没有与源任务处于同一多核系统的目标任务实例,则选择与源任务处于不同多核系统的目标任务实例作为待投递信息的目标任务。
另外,若源任务和目标任务在不同的多核系统中;或在同一多核系统中,但位于不同内核中,信息投递的装置10可根据目标任务中的多个目标任务实例的负载情况和是否异常的具体情况选择某一目标任务实例作为待投递信息的目标任务。
以图7为例,设任务d-1为源任务,任务d-1需向任务a发送待投递信息,任务a包括有a-1、a-2、a-3三个任务实例。首先任务d-1将待投递信息和目标任务名称a发送给信息投递的装置10,信息投递的装置10根据目标任务名称a在预设全局关系表中查找与该目标任务名称a对应的内核号有i、ⅱ和iii(包括目标任务a的内核号)。然后在多核系统1、2和3中查找与内核号i、ⅱ和iii对应的内核i、ⅱ和iii。任务a-2处于内核ⅰi内,任务a-3处于内核iii内,任务a-1处于内核i内;任务d-1处于内核ⅱ内,根据上述的就近原则,信息投递的装置10优选选择与源任务d-1由于处于同一内核的目标任务实例a-2作为待投递信息的目标任务,然后将待投递信息发送至内核ⅱ内的任务a-2中。若被选为目标任务的目标任务实例a-2出现异常或负载较高的情况,则按照同样原理在其他的目标任务实例中选择一个作为待投递信息的目标任务。即若目标任务实例a-2异常或负载较高,则信息投递的装置10优先选择与源任务d-1处于同一多核系统的目标任务实例a-3作为待投递信息的目标任务,然后将待投递信息发送至内核iii内的任务a-3中;若目标任务实例a-2和a-3都异常或负载较高,则信息投递的装置10选择与源任务处于不同多核系统的目标任务实例a-1作为待投递信息的目标任务,然后将待投递信息发送至内核i内的任务a-1中。即若被选为目标任务的目标任务实例出现异常和负载较高情况,且除被选目标任务实例还有两个或两个以上目标任务实例,则按照同样原理在剩余的目标任务实例中选择一个作为待投递信息的目标任务,以提高信息投递的速度和效率,同时还可避免信息投递失败现象发生。
以图7为例,设任务c-1为源任务,任务c-1需向任务d发送待投递信息,任务d包括有d-1和d-2两个任务实例。首先任务c-1将待投递信息和目标任务名称d发送给信息投递的装置10,信息投递的装置10根据目标任务名称d在预设全局关系表中查找与该目标任务名称d对应的内核号有ⅱ和ⅳ(包括目标任务d的内核号)。然后在多核系统1、2和3中查找与内核号ⅱ和ⅳ对应的内核ⅱ和ⅳ。任务源任务c-1处于内核iii和任务d-1处于内核ⅱ,内核ⅱ和内核iii处于同一多核系统2内;任务d-2处于多核系统3内的内核ⅳ中;根据上述的就近原则,信息投递的装置10优选选择任务d-1作为待投递信息的目标任务,然后将待投递信息发送至任务d-1;若任务d-1异常或负载较高,信息投递的装置10则选择任务d-2作为待投递信息的目标任务,然后将待投递信息发送至任务d-2。
以图7为例,设任务d-2为源任务,任务d-2需向任务a发送待投递信息。其中,任务a包括有a-1、a-2和a-3三个任务实例。首先任务d-2将待投递信息和目标任务名称a发送给信息投递的装置10,信息投递的装置10根据目标任务名称a在预设全局关系表中查找与该目标任务名称a对应的内核号有i、ⅱ和iii(包括目标任务a的内核号)。然后在多核系统1、2和3中查找与内核号i、ⅱ和iii对应的内核i、ⅱ和iii。任务a的所有实例a-1、a-2、a-3和源任务d-2不处于同一内核内,也不处于同一多核系统内;任务a-1处于多核系统1内,而任务a-2和a-3处于多核系统2内。信息投递的装置10无法根据上述就近原则进行选择,此时需根据任务a三个任务实例是否异常或负载高低的情况进行选择,将运行正常,且负载较低的任务实例作为待投递信息的目标任务。
信息投递的装置10通过上述就近原则进行目标任务的选择,可以提高信息投递的速度和效率,可避免信息投递失败现象发生,同时还可保证同一任务中的不同任务实例的负载均衡。
另外,上述信息投递的装置10实施例,当目标任务包括多个目标任务实施例时,还可不根据就近原则而直接查找负载最低的目标任务实例,将该目标任务实例作为待投递信息的目标任务。以图7为例,设任务a-1为源任务,任务a-1需向任务d发送待投递信息,首先任务a-1将待投递信息和目标任务名称d发送给信息投递的装置10,信息投递的装置10根据目标任务名称d在预设全局关系表中查找与该目标任务名称d对应的内核号有ⅱ和ⅳ(包括目标任务d的内核号)。然后在多核系统1、2和3中查找与内核号ⅱ、ⅳ对应的内核ⅱ和ⅳ,任务d的d-1和d-2两个任务实例,其中任务d-1处于内核ⅱ内和任务d-2处于内核ⅳ内,任务d-1负载大,任务d-2负载低,因此内核ⅳ的任务d-2为待投递信息的目标任务,信息投递的装置10则将待投递信息发送至内核ⅳ内的任务d-2中。若被选为目标任务的目标任务实例d-2出现异常情况,则信息投递的装置将待投递信息发送至内核ⅱ的任务d-1中。若被选为目标任务的目标任务实例出现异常情况,且除被选目标任务实例还有两个或两个以上目标任务实例,则按照同样原理在其他的目标任务实例中选择一个作为待投递信息的目标任务,以保证同一任务中的不同任务实例的负载均衡,同时还可避免信息投递失败现象发生。
以上所述信息投递的装置实施例,可实现多核系统内或多核系统间信息的投递,信息投递可靠性高,提高了信息投递的速度和效率、实现了多核系统中任务实例的负载均衡,同时还可防止信息投递的失败。
本发明中,当多核系统为单独的多核系统,则配置在该多核系统的信息投递的装置独立维护一张预设全局关系表。当多核系统为多个互为通讯连接多核系统,每个多核系统分别配置信息投递的装置,每个信息投递的装置可以分别维护一张预设全局关系表,也可以选择其中一个信息投递的装置维护一张预设全局关系表。若每个信息投递的装置分别维护一张预设全局关系表,则需保持每个信息投递的装置中预设全局关系表信息同步。
应当理解的是,以上仅为本发明的优选实施例,不能因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (6)

1.一种信息投递的方法,其特征在于,包括步骤:
接收源任务发送的待投递信息和目标任务名称;
根据目标任务名称在预设全局关系表中查找与目标任务名称对应的内核号;
根据内核号在多核系统中查找对应的内核,并将待投递信息发送至所述内核内与目标任务名称对应的任务中;
所述源任务与目标任务包括在同一多核系统的同一内核内、或包括在同一多核系统的不同内核内、或包括在不同多核系统的内核内;
当目标任务包括多个目标任务实例,根据以下就近原则选择目标任务实例作为待投递信息的目标任务:优先选择与源任务处于同一内核的目标任务实例作为待投递信息的目标任务;若没有与源任务处于同一内核的目标任务实例,则优先选择与源任务处于同一多核系统的目标任务实例作为待投递信息的目标任务;若没有与源任务处于同一内核,也没有与源任务处于同一多核系统的目标任务实例,则选择与源任务处于不同多核系统的目标任务实例作为待投递信息的目标任务;
当根据上述就近原则无法选择,则根据多个目标任务实例是否异常或负载高低的情况进行选择,将运行正常、负载较低的目标任务实例作为待投递信息的目标任务。
2.根据权利要求1所述的信息投递的方法,其特征在于,
所述预设全局关系表包含:多核系统中的任务名称与该任务所在内核的内核号对应关系。
3.根据权利要求1至2任一项所述的信息投递的方法,其特征在于,
所述目标任务包括一个或多个目标任务实例;多个目标任务实例包括在同一多核系统的同一内核内、或包括在同一多核系统的不同内核内、或包括在不同多核系统的内核内。
4.一种信息投递的装置,其特征在于,包括:
接收模块,用于接收源任务发送的待投递信息和目标任务名称;
查找模块,用于根据目标任务名称在预设全局关系表中查找与目标任务名称对应的内核号;
发送模块,用于根据内核号在多核系统中查找对应的内核,并将待投递信息发送至所述内核内与目标任务名称对应的任务中;
所述源任务与目标任务包括在同一多核系统的同一内核内、或包括在同一多核系统的不同内核内、或包括在不同多核系统的内核内;
当目标任务包括多个目标任务实例,根据以下就近原则选择目标任务实例作为待投递信息的目标任务:优先选择与源任务处于同一内核的目标任务实例作为待投递信息的目标任务;若没有与源任务处于同一内核的目标任务实例,则优先选择与源任务处于同一多核系统的目标任务实例作为待投递信息的目标任务;若没有与源任务处于同一内核,也没有与源任务处于同一多核系统的目标任务实例,则选择与源任务处于不同多核系统的目标任务实例作为待投递信息的目标任务;
当根据上述就近原则无法选择,则根据多个目标任务实例是否异常或负载高低的情况进行选择,将运行正常、负载较低的目标任务实例作为待投递信息的目标任务。
5.根据权利要求4所述的信息投递的装置,其特征在于,
所述预设全局关系表包含:多核系统中的任务名称与该任务所在内核的内核号对应关系。
6.根据权利要求4至5任一项所述的信息投递的装置,其特征在于,
所述目标任务包括一个或多个目标任务实例;多个目标任务实例包括在同一多核系统的同一内核内、或包括在同一多核系统的不同内核内、或包括在不同多核系统的内核内。
CN201010518285.XA 2010-10-25 2010-10-25 信息投递的方法和装置 Expired - Fee Related CN101976208B (zh)

Priority Applications (7)

Application Number Priority Date Filing Date Title
CN201010518285.XA CN101976208B (zh) 2010-10-25 2010-10-25 信息投递的方法和装置
RU2013121783/08A RU2566953C2 (ru) 2010-10-25 2011-06-17 Способ и устройство для доставки информации
TR2018/06949T TR201806949T4 (tr) 2010-10-25 2011-06-17 Bilgi iletim yöntemi ve cihazı.
US13/881,018 US9207974B2 (en) 2010-10-25 2011-06-17 Information delivery method and device
BR112013010079-6A BR112013010079A2 (pt) 2010-10-25 2011-06-17 método e dispositivo de fornecimento de informação
PCT/CN2011/075893 WO2012055248A1 (zh) 2010-10-25 2011-06-17 信息投递的方法和装置
EP11835522.1A EP2634694B1 (en) 2010-10-25 2011-06-17 Method and device for information delivery

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010518285.XA CN101976208B (zh) 2010-10-25 2010-10-25 信息投递的方法和装置

Publications (2)

Publication Number Publication Date
CN101976208A CN101976208A (zh) 2011-02-16
CN101976208B true CN101976208B (zh) 2014-08-13

Family

ID=43576095

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010518285.XA Expired - Fee Related CN101976208B (zh) 2010-10-25 2010-10-25 信息投递的方法和装置

Country Status (7)

Country Link
US (1) US9207974B2 (zh)
EP (1) EP2634694B1 (zh)
CN (1) CN101976208B (zh)
BR (1) BR112013010079A2 (zh)
RU (1) RU2566953C2 (zh)
TR (1) TR201806949T4 (zh)
WO (1) WO2012055248A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101976208B (zh) 2010-10-25 2014-08-13 中兴通讯股份有限公司 信息投递的方法和装置
CN102681905A (zh) * 2011-03-09 2012-09-19 新奥特(北京)视频技术有限公司 一种任务之间的相互通讯方法及系统
CN104572315B (zh) * 2013-10-23 2018-12-25 华为技术有限公司 实现子系统间通信的方法、通信实体及分布式通信系统
CN107786544B (zh) * 2017-09-29 2018-08-17 贵州白山云科技有限公司 一种消息的任务状态处理方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1921457A (zh) * 2006-09-18 2007-02-28 杭州华为三康技术有限公司 一种网络设备和基于多核处理器的报文转发方法
CN101262425A (zh) * 2008-04-28 2008-09-10 艾诺通信系统(苏州)有限责任公司 基于网络地址转换的多播转发的方法
CN101403982A (zh) * 2008-11-03 2009-04-08 华为技术有限公司 一种多核处理器的任务分配方法、系统及设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7234139B1 (en) * 2000-11-24 2007-06-19 Catharon Productions, Inc. Computer multi-tasking via virtual threading using an interpreter
JP2004334537A (ja) * 2003-05-07 2004-11-25 Sony Corp プログラム処理システム及びプログラム処理方法、並びにコンピュータ・プログラム
CA2643095A1 (en) * 2006-02-24 2007-08-30 Mbda Uk Limited Real-time distributed processor environment
CN100543687C (zh) * 2007-09-04 2009-09-23 杭州华三通信技术有限公司 一种多核系统的资源管理方法和控制核
JP5182792B2 (ja) * 2007-10-07 2013-04-17 アルパイン株式会社 マルチコアプロセッサ制御方法及び装置
CN101634953A (zh) 2008-07-22 2010-01-27 国际商业机器公司 搜索空间计算方法和装置及自适应线程调度方法和系统
US20100287320A1 (en) * 2009-05-06 2010-11-11 Lsi Corporation Interprocessor Communication Architecture
US8601556B2 (en) * 2009-06-22 2013-12-03 Citrix Systems, Inc. Systems and methods for handling SSL session not reusable across multiple cores
CN101976208B (zh) 2010-10-25 2014-08-13 中兴通讯股份有限公司 信息投递的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1921457A (zh) * 2006-09-18 2007-02-28 杭州华为三康技术有限公司 一种网络设备和基于多核处理器的报文转发方法
CN101262425A (zh) * 2008-04-28 2008-09-10 艾诺通信系统(苏州)有限责任公司 基于网络地址转换的多播转发的方法
CN101403982A (zh) * 2008-11-03 2009-04-08 华为技术有限公司 一种多核处理器的任务分配方法、系统及设备

Also Published As

Publication number Publication date
RU2013121783A (ru) 2014-12-10
US20130227580A1 (en) 2013-08-29
CN101976208A (zh) 2011-02-16
EP2634694A4 (en) 2016-05-25
US9207974B2 (en) 2015-12-08
RU2566953C2 (ru) 2015-10-27
TR201806949T4 (tr) 2018-06-21
EP2634694B1 (en) 2018-04-04
EP2634694A1 (en) 2013-09-04
WO2012055248A1 (zh) 2012-05-03
BR112013010079A2 (pt) 2020-07-07

Similar Documents

Publication Publication Date Title
CN101976208B (zh) 信息投递的方法和装置
CN102025616B (zh) 一种实现双向转发检测的方法、装置及交换机
US9281997B2 (en) Building baseband unit, baseband processing panel, and failure processing method for baseband processing panel
CN103970214A (zh) 一种异构加速刀片式计算机系统架构
CN101996087A (zh) 多核处理器阵列程序的动态加载系统及方法
CN103885860A (zh) 一种应用ipmi命令实现bmc双管理热冗余的方法
CN101964509A (zh) 防止电器设备功率超标的方法、装置和电器设备
CN103607360A (zh) 一种报文处理方法、线卡及交换设备
CN105868030A (zh) 日志数据的通讯处理装置、方法以及移动终端
CN103685480A (zh) 一种传输控制协议网络实现方法以及一种服务器
CN104125150A (zh) 一种协议报文处理方法、装置及系统
CN101945342A (zh) 用户端设备及其无线组播转单播业务的实现方法
CN102404786B (zh) 一种控制业务阻塞的方法及装置
CN103500153A (zh) 一种串联供电装置的基于控制模块的串行通讯架构
CN102761608A (zh) Udp会话复用的方法和负载均衡设备
CN102231126B (zh) 一种实现多核处理器中核间备份的方法及系统
CN105450697A (zh) 一种多设备同屏共享方法、装置及服务器
CN101662351B (zh) 热备冗余计算机通过冗余网络与其它设备进行通信的方法
CN103647622A (zh) 一种实现跨机房数据传输的方法、装置和系统
CN102694727A (zh) 实现网络数据包转发加速的方法及装置
CN105471598A (zh) 一种虚拟以太网端口归属单板动态分配方法及系统
JP2010284072A (ja) 複数の回路遮断器からのデジタル入力信号の処理装置及び方法
CN107070955A (zh) 一种电力系统数据的传输方法及装置
CN204103751U (zh) 一种基于多dsp加cpld的三电平变流器的驱动结构
CN103166659B (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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140813

Termination date: 20191025

CF01 Termination of patent right due to non-payment of annual fee