CN108491260A - 通信设备多任务测试方法及装置 - Google Patents

通信设备多任务测试方法及装置 Download PDF

Info

Publication number
CN108491260A
CN108491260A CN201810325769.9A CN201810325769A CN108491260A CN 108491260 A CN108491260 A CN 108491260A CN 201810325769 A CN201810325769 A CN 201810325769A CN 108491260 A CN108491260 A CN 108491260A
Authority
CN
China
Prior art keywords
task
sequence
queue
new
communication equipment
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.)
Pending
Application number
CN201810325769.9A
Other languages
English (en)
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.)
Maipu Communication Technology Co Ltd
Original Assignee
Maipu Communication Technology Co Ltd
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 Maipu Communication Technology Co Ltd filed Critical Maipu Communication Technology Co Ltd
Priority to CN201810325769.9A priority Critical patent/CN108491260A/zh
Publication of CN108491260A publication Critical patent/CN108491260A/zh
Pending legal-status Critical Current

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
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)

Abstract

本发明涉及通信设备技术。本发明解决了目前通信设备工装测试时只采用并行运行方式时测试准确性不高或只采用串行运行方式时效率较低的问题,提供了一种通信设备多任务测试方法及装置,其技术方案可概括为:首先将工装测试任务划分为需要独占处理器运行的独立任务、可并行执行的并发任务及需要依赖某任务测试结果的依赖任务三种类型,然后建立至少两个任务序列,每个任务序列中包含至少一个并行执行的任务队列,每个任务队列中包含串行执行的至少一个任务,所有任务序列串行执行,再将各任务根据其类型分别置于所述任务序列中,最后执行所述任务序列中的任务。本发明的有益效果是:提高检测效率的同时保证准确性,适用于通信设备测试系统。

Description

通信设备多任务测试方法及装置
技术领域
本发明涉及通信设备的技术,特别涉及通信设备工装测试的技术。
背景技术
工装测试主要是在通信设备装配完成后进行出厂检验的测试,工装测试任务一般针对某种应用场景采用并行运行方式或者串行运行方式,其分别有如下缺陷:1)工装测试任务并行运行,其执行效率高,但是对于某些具有复杂任务关系的任务则可能会降低测试的准确性,这是因为其无法评估其他运行中的任务对该任务造成的影响;2)工装测试任务串行运行,其操作相对简单、稳定,但是不够灵活,而且效率较并行运行方式低下。且传统的工装测试任务调度只针对某一类任务进行设计,例如对于高并发任务队列有相应的大量任务队列设计等,但其并没有针对所有类型任务进行调度设计。
发明内容
本发明的目的就是为了解决目前通信设备工装测试时只采用并行运行方式时测试准确性不高或只采用串行运行方式时效率较低的问题,提供一种通信设备多任务测试方法及装置。
本发明解决其技术问题,采用的技术方案是,通信设备多任务测试方法,其特征在于,包括以下步骤:
步骤1、将工装测试任务划分为需要独占处理器运行的独立任务、可并行执行的并发任务及需要依赖某任务测试结果的依赖任务三种类型;
步骤2、建立至少两个任务序列,每个任务序列中包含至少一个并行执行的任务队列,每个任务队列中包含串行执行的至少一个任务,所有任务序列串行执行;
步骤3、将各任务根据其类型分别置于所述任务序列中;
步骤4、执行所述任务序列中的任务。
具体的,步骤2中,每一个所述任务序列都设置有唯一的任务序列号,每一个任务序列中的任务队列设置有任务队列号,每一个任务队列中的任务设置有任务序号。
进一步的,步骤3中,将各任务根据其类型分别置于所述任务序列是指:
针对独立任务,将其置入一个任务序列的一个任务队列中,该任务序列中仅有一个任务队列;
针对并发任务,将其置入独立任务所在任务序列之外的任何一个任务序列的一个任务队列中即可;
针对依赖任务,将其置入与被其所依赖的任务所在的任务队列中,且在该任务队列中排列于被其所依赖的任务后方。
具体的,步骤3中,还包括:为每个任务建立一个任务结构体。
再进一步的,所述任务结构体,用于保存任务名称、任务序列号、任务队列号、任务序号、任务类型、任务状态及任务执行结果信息。
具体的,所述任务执行结果信息包括任务退出码及任务执行结果值。
再进一步的,在步骤4之前,还包括以下步骤:
建立监控任务,该监控任务在所述任务序列中的任务开始执行时执行,用于监控所有任务的任务状态及任务执行结果信息,并控制所有任务序列中各任务的执行及停止,且能够根据所有任务序列生成相应的任务拓扑结构。
具体的,步骤4包括以下步骤:
步骤401、执行监控任务,根据所有任务序列生成相应的任务拓扑结构,按照任务序列及对应的任务队列开始逐一执行任务;
步骤402、任一任务发现自身的任务状态变化时,通知监控任务;
步骤403、监控任务接收到某一任务的任务状态变化通知时,更新任务拓扑结构;
步骤404、任一任务执行完成后,更新自身的任务执行结果信息,并通知监控任务;
步骤405、监控任务接收到某一任务的任务执行完成通知,获取其任务执行结果信息,根据任务执行结果信息判断该任务是否执行成功,若成功则更新任务拓扑结构,并控制执行下一任务或下一任务队列或下一任务序列,否则停止当前所有任务,并更新任务拓扑结构。
再进一步的,步骤4中,还包括以下步骤:
任务执行过程中,还能够添加新任务和/或移除未执行的任务,添加新任务的具体过程为:
若所需要添加的新任务是独立任务,则直接在最后一个任务序列后添加一个新的任务序列,将该新任务置入该新的任务序列的一个任务队列中,该任务序列中只创建这一个任务队列;
若所需添加的新任务是并发任务,则遍历所有任务序列,查看是否有未执行的任务序列,如果有未执行的任务序列,同时还要判断该任务序列是否是置入独立任务的任务序列(查看该任务序列的当前任务队列中是否有独立任务),如果不是置入独立任务的任务序列,再判断该任务序列的当前任务队列数是否达到最大任务队列数,若判断该任务序列的当前任务队列数未达到最大任务队列数,则在该任务序列中新建一个任务队列,并置入该新任务,若没有未执行的任务序列或者未执行的所有任务序列都已达到最大任务队列数,则在当前最后一个任务序列后添加一个新的任务序列,将该新任务置入该新的任务序列的一个任务队列中;
若所需添加的新任务是依赖任务,则根据任务拓扑结构查找到被其所依赖的任务,将该新任务直接顺序添加进该被其所依赖的任务所在的任务队列中。
具体的,所述任务拓扑结构中每一个任务序列都采用二维数组的结构。
通信设备多任务测试装置,其特征在于,包括:
任务划分模块,用于将工装测试任务划分为需要独占处理器运行的独立任务、可并行执行的并发任务及需要依赖某任务测试结果的依赖任务三种类型;
任务建立模块,用于建立至少两个任务序列,每个任务序列中包含至少一个并行执行的任务队列,每个任务队列中包含串行执行的至少一个任务,所有任务序列串行执行;
任务置入模块,用于将任务划分模块划分出的各任务根据其类型分别置于所述任务序列中;
任务执行模块,用于执行所述任务序列中的任务。
具体的,还包括监控任务模块,用于建立监控任务,该监控任务在所述任务序列中的任务开始执行时执行,用于监控所有任务的任务状态及任务执行结果信息,并控制所有任务序列中各任务的执行及停止,且能够根据所有任务序列生成相应的任务拓扑结构。
本发明的有益效果是,通过上述通信设备多任务测试方法,能够结合并行执行方式与串行执行方式,提高检测效率的同时保证准确性,且调度不再局限于某一类型的任务,工装测试变得更加灵活,并可实时添加新任务或删除未执行的任务,还可将某些大型任务拆分为几个依赖任务执行,降低原本任务的复杂度。
附图说明
图1是本发明实施例中整个测试任务采用三级表形式表达的示意图。
图2是本发明实施例中通信设备多任务测试装置的结构框图。
具体实施方式
下面结合实施例及附图,详细描述本发明的技术方案。
本发明的通信设备多任务测试方法,具体为:首先将工装测试任务划分为需要独占处理器运行的独立任务、可并行执行的并发任务及需要依赖某任务测试结果的依赖任务三种类型,然后建立至少两个任务序列,每个任务序列中包含至少一个并行执行的任务队列,每个任务队列中包含串行执行的至少一个任务,所有任务序列串行执行,再将各任务根据其类型分别置于所述任务序列中,最后执行所述任务序列中的任务。
本发明的通信设备多任务测试装置,包括:任务划分模块,用于将工装测试任务划分为需要独占处理器运行的独立任务、可并行执行的并发任务及需要依赖某任务测试结果的依赖任务三种类型;任务建立模块,用于建立至少两个任务序列,每个任务序列中包含至少一个并行执行的任务队列,每个任务队列中包含串行执行的至少一个任务,所有任务序列串行执行;任务置入模块,用于将任务划分模块划分出的各任务根据其类型分别置于所述任务序列中;任务执行模块,用于执行所述任务序列中的任务。
实施例
本发明实施例的通信设备多任务测试方法,包括以下步骤:
步骤1、将工装测试任务划分为需要独占处理器运行的独立任务、可并行执行的并发任务及需要依赖某任务测试结果的依赖任务三种类型。
步骤2、建立至少两个任务序列,每个任务序列中包含至少一个并行执行的任务队列,每个任务队列中包含串行执行的至少一个任务,所有任务序列串行执行。
本步骤中,为便于后期管理及查询,优选为每一个所述任务序列都设置有唯一的任务序列号,每一个任务序列中的任务队列设置有任务队列号,每一个任务队列中的任务设置有任务序号。
步骤3、将各任务根据其类型分别置于所述任务序列中。
本步骤中,将各任务根据其类型分别置于所述任务序列是指:
针对独立任务,将其置入一个任务序列的一个任务队列中,该任务序列中仅有一个任务队列;
针对并发任务,将其置入独立任务所在任务序列之外的任何一个任务序列的一个任务队列中即可;
针对依赖任务,将其置入与被其所依赖的任务所在的任务队列中,且在该任务队列中排列于被其所依赖的任务后方。
这里,为便于查找及管理,还可为每个任务建立一个任务结构体,用于保存任务名称、任务序列号、任务队列号、任务序号、任务类型、任务状态及任务执行结果信息等,而任务执行结果信息可包括任务退出码及任务执行结果值等。
步骤4、执行所述任务序列中的任务。
在本步骤之前,还可以包含如下步骤:
建立监控任务,该监控任务在所述任务序列中的任务开始执行时执行,用于监控所有任务的任务状态及任务执行结果信息,并控制所有任务序列中各任务的执行及停止,且能够根据所有任务序列生成相应的任务拓扑结构。
则当执行步骤4时,可具体为:
步骤401、执行监控任务,根据所有任务序列生成相应的任务拓扑结构,按照任务序列及对应的任务队列开始逐一执行任务;
步骤402、任一任务发现自身的任务状态变化时,通知监控任务;
步骤403、监控任务接收到某一任务的任务状态变化通知时,更新任务拓扑结构;
步骤404、任一任务执行完成后,更新自身的任务执行结果信息,并通知监控任务;
步骤405、监控任务接收到某一任务的任务执行完成通知,获取其任务执行结果信息,根据任务执行结果信息判断该任务是否执行成功,若成功则更新任务拓扑结构,并控制执行下一任务或下一任务队列或下一任务序列,否则停止当前所有任务,并更新任务拓扑结构。
这样,即可由监控任务控制每一个任务的执行及停止,并输出任务拓扑结构以方便工作人员查看,且测试全程可不需要工作人员的控制。
在执行所述任务序列中的任务时,还可以包括以下步骤:
任务执行过程中,还能够添加新任务和/或移除未执行的任务,添加新任务的具体过程为:
若所需要添加的新任务是独立任务,则直接在最后一个任务序列后添加一个新的任务序列,将该新任务置入该新的任务序列的一个任务队列中,该任务序列中其他任务队列不置入其他任务;
若所需添加的新任务是并发任务,则遍历所有任务序列,查看是否有未执行的任务序列,如果有未执行的任务序列,同时还要判断该任务序列是否是置入独立任务的任务序列(查看该任务序列的当前任务队列中是否有独立任务),如果不是置入独立任务的任务序列,再判断该任务序列的当前任务队列数是否达到最大任务队列数,若判断该任务序列的当前任务队列数是否达到最大任务队列数,若未达到最大任务队列数,则在该任务序列中新建一个任务队列,并置入该新任务,若没有未执行的任务序列或者未执行的所有任务序列都已达到最大任务队列数,则在当前最后一个任务序列后添加一个新的任务序列,将该新任务置入该新的任务序列的一个任务队列中;
若所需添加的新任务是依赖任务,则根据任务拓扑结构查找到被其所依赖的任务,将该新任务直接顺序添加进该被其所依赖的任务所在的任务队列中。
本发明实施例中,任务拓扑结构中每一个任务序列都可采用二维数组的结构。
本发明实施例中应用上述通信设备多任务测试方法所建立的通信设备多任务测试装置,其结构框图参见图2,包括:任务划分模块,用于将工装测试任务划分为需要独占处理器运行的独立任务、可并行执行的并发任务及需要依赖某任务测试结果的依赖任务三种类型;任务建立模块,用于建立至少两个任务序列,每个任务序列中包含至少一个并行执行的任务队列,每个任务队列中包含串行执行的至少一个任务,所有任务序列串行执行;任务置入模块,用于将任务划分模块划分出的各任务根据其类型分别置于所述任务序列中;任务执行模块,用于执行所述任务序列中的任务。
与方法相对应的,其还可以包括监控任务模块,用于建立监控任务,该监控任务在所述任务序列中的任务开始执行时执行,用于监控所有任务的任务状态及任务执行结果信息,并控制所有任务序列中各任务的执行及停止,且能够根据所有任务序列生成相应的任务拓扑结构。
具体举例如下:
采用任务结构体来完整的描述一个任务,任务结构体这个结构体包含下面信息:任务名称、任务序列号(TS_NUM)、任务队列号(TQ_NUM)、任务序号(TQS_NUM)、任务类型、任务状态及任务执行结果信息。任务执行结果信息包含任务退出码和任务结果值,任务退出码表示任务执行情况,例如执行成功或执行失败等,任务结果值表示任务执行过程中或执行完成后的生成值(例如:端口收发包测试任务执行过程中或执行完成后生成的各个端口的收发包数量);任务状态表示任务运行情况,例如未运行或正在运行或运行完成等。任务序列号(TS_NUM)、任务队列号(TQ_NUM)及任务序号(TQS_NUM)这三者合起来可称为任务标识码(TID),可唯一标识一个任务。
开始测试的时候,可率先启动一个0号任务序列,0号任务序列里只有一个0号任务队列的0号任务,即监控任务,该任务会自动执行,它将监控所有任务的任务状态以及描述任务拓扑结构,收集所有任务的测试结果,并根据测试结果终止任务队列的执行或者执行任务队列中的下一个任务。
除了0号任务序列以外,所有的任务序列都是按照序列号从小到大串行执行,比如先执行1号任务序列的任务,等1号任务序列的所有任务执行完毕以后,再执行2号任务序列,以此类推。某个任务序列下的所有任务队列是并行执行的,例如1号任务序列下有n个任务队列,那么这n个任务队列是并行执行的,也就是说测试在运行时最多也就只有n个并行执行的任务,只是每个任务队列里面可能不止一个任务,任务队列里面的任务是按照任务序号依次执行。
参见图1,可采用三级表的形式表示所有任务,其中,任务序列0的任务队列0中的任务0即代表监控任务,其余的,任务序列1、任务序列2……代表各顺序排列的任务序列,各任务序列间为串行执行,任务队列0、任务队列1……代表对应任务序列中各顺序排列的任务队列,在同一任务序列中各任务队列并行执行,任务0、任务1……代表对应任务队列中各顺序排列的任务,在同一任务队列中各任务串行执行。而关于三级表的设计,任务序列是按照串行方式执行,任务序列里面的各任务队列是按照并行方式执行的,这样就可以很方便的在串行任务和并行任务之间切换,不止如此,如果有任务之间的依赖关系,例如任务二依赖任务一的执行结果,这样就可以把这两个任务依次放到同一个任务队列里面执行,所以才会有这样的三级表设计。
所有任务的拓扑由所有任务序列的拓扑集描述,每个任务序列的拓扑集的描述,可以用一个二维数组的结构,参见表1。
表1某任务序列拓扑集的描述
其中,Finished表示任务完成,Running表示正在运行,Unexecuted表示还未执行,Null表示任务不存在。上述任务数组表示该任务序列下有三个任务队列,0号任务队列有3个任务,正在执行1号任务;1号任务队列有4个任务,正在执行2号任务;2号任务队列有1个任务,正在执行0号任务。如果需要在当前运行情况下插入某个任务,不允许在Running状态任务之前插入任务。每个任务序列都可有这样一张表来表示当前的状态。
至于如何将任务放置到任务序列中,首先需要将整个任务集划分为三大类,需要独占处理器执行的独立任务,可以并行执行的并发任务以及依赖某个任务的测试结果的依赖任务。对于通信设备的测试任务而言,端口类收发包任务因为要检验端口的收发包性能所以是需要独立执行的任务,存储器件或者信号线读写任务是可以并行执行的任务等,依赖任务是某个任务需要依赖另一个任务的测试结果,但是出于结构化考虑又不希望将这两个任务合并成一个任务,所以分化为两个具有依赖关系的任务。
由于嵌入式设备使用的处理器的处理能力不同,那么可并发执行的任务数量也会有所不同,因此假定某个任务序列下最大任务队列数(也就是最多同时运行的任务数量)为k,整个任务集中并发任务数为x,独立任务数为y,依赖任务数位z,则任务总集中的任务总数有s=x+y+z。整个测试任务的任务序列数p有:
若x余k为0,p=x/k+y个任务序列;
若x余k不为0,p=x/k+1+y个任务序列。
最后将依赖任务添加到对应的所依赖任务的任务队列的后面,这里使用任务序列号、任务队列号以及任务序号三者来唯一标识一个任务序列中的任务,假设任务标识码(TID)这样表示,从高位开始使用i位来表示任务序列号,j位来表示任务队列号,k位来表示任务序号,则有:
TID=TS_NUM×2(k+j)+TQ_NUM×2k+TQS_NUM×20
其中,0≤TQS_NUM≤2k,0≤TQ_NUM×2i,0<TS_NUM×2(k+j)
如果这里有两个任务,其中任务1的TID为TID1,而任务2依赖于任务1,则只需要将TID2=TID1+1就可以了,如果TID+1已经存在于任务序列,则将TID2=TID+2即可,在满足上述约束条件下以此类推。判断某个任务是否存在于某一任务序列中,只要查看任务拓扑结构就可得知。这样整个任务队列就完整的添加到了对应的任务序列里面。
关于测试任务结果处理,任务在执行结束以后,写入测试结果到任务结构体的测试结果信息中,并通知0号任务(即上述监控任务)。0号任务在拿到测试结果以后会做简单判断,对于测试而言如果某个任务执行失败了应该停止所有任务并拷贝当前任务拓扑结构,如果执行成功,就执行当前任务队列的下一条任务,如果没有下一条任务,则该任务队列整个执行结束,如果当前任务序列的所有任务队列都执行结束,则会开始下一任务序列,如果没有下一任务序列,则整个测试任务执行完成。
在任务的测试过程中,如果有新任务加入测试任务,将按照当前任务拓扑结构加入到正确的任务队列中,当然也能移除未执行的任务。新添加的任务也按照分类进行添加:
a.如果新任务是独立任务则直接在最后一个任务序列后新增一个任务序列,并在该任务序列中添加一个任务队列,最后将该任务放入该任务队列;
b.如果新任务是并发任务,则遍历整个测试任务查看是否有未执行的任务序列中包含的任务队列数未达到最大任务队列数,如果有则在该序列任务中新建一个任务队列,将该任务放置到该任务队列中;如果没有未执行的任务序列或者未执行的所有任务序列都已达到最大任务队列数,则在当前测试任务的最后一个任务序列后新增一个新的任务序列,并在该任务序列中添加一个任务队列,最后将该任务放入该任务队列。
c.如果新任务是依赖任务,则找到被依赖的那个任务,根据任务标识码(TID)直接添加到任务队列即可。例如被依赖任务标识码为TID1,则查看TID1+1是否存在任务序列中,如果不存在直接添加,如果存在查看TID+2是否存在任务序列中,以此类推。

Claims (10)

1.通信设备多任务测试方法,其特征在于,包括以下步骤:
步骤1、将工装测试任务划分为需要独占处理器运行的独立任务、可并行执行的并发任务及需要依赖某任务测试结果的依赖任务三种类型;
步骤2、建立至少两个任务序列,每个任务序列中包含至少一个并行执行的任务队列,每个任务队列中包含串行执行的至少一个任务,所有任务序列串行执行;
步骤3、将各任务根据其类型分别置于所述任务序列中;
步骤4、执行所述任务序列中的任务。
2.如权利要求1所述的通信设备多任务测试方法,其特征在于,步骤2中,每一个所述任务序列都设置有唯一的任务序列号,每一个任务序列中的任务队列设置有任务队列号,每一个任务队列中的任务设置有任务序号。
3.如权利要求2所述的通信设备多任务测试方法,其特征在于,步骤3中,将各任务根据其类型分别置于所述任务序列是指:
针对独立任务,将其置入一个任务序列的一个任务队列中,该任务序列中仅有一个任务队列;
针对并发任务,将其置入独立任务所在任务序列之外的任何一个任务序列的一个任务队列中即可;
针对依赖任务,将其置入与被其所依赖的任务所在的任务队列中,且在该任务队列中排列于被其所依赖的任务后方。
4.如权利要求2所述的通信设备动态实时多任务测试方法,其特征在于,步骤3中,还包括:为每个任务建立一个任务结构体。
5.如权利要求4所述的通信设备多任务测试方法,其特征在于,所述任务结构体,用于保存任务名称、任务序列号、任务队列号、任务序号、任务类型、任务状态及任务执行结果信息。
6.如权利要求5所述的通信设备多任务测试方法,其特征在于,在步骤4之前,还包括以下步骤:
建立监控任务,该监控任务在所述任务序列中的任务开始执行时执行,用于监控所有任务的任务状态及任务执行结果信息,并控制所有任务序列中各任务的执行及停止,且能够根据所有任务序列生成相应的任务拓扑结构。
7.如权利要求6所述的通信设备多任务测试方法,其特征在于,步骤4包括以下步骤:
步骤401、执行监控任务,根据所有任务序列生成相应的任务拓扑结构,按照任务序列及对应的任务队列开始逐一执行任务;
步骤402、任一任务发现自身的任务状态变化时,通知监控任务;
步骤403、监控任务接收到某一任务的任务状态变化通知时,更新任务拓扑结构;
步骤404、任一任务执行完成后,更新自身的任务执行结果信息,并通知监控任务;
步骤405、监控任务接收到某一任务的任务执行完成通知,获取其任务执行结果信息,根据任务执行结果信息判断该任务是否执行成功,若成功则更新任务拓扑结构,并控制执行下一任务或下一任务队列或下一任务序列,否则停止当前所有任务,并更新任务拓扑结构。
8.如权利要求1-7任一项所述的通信设备多任务测试方法,其特征在于,步骤4中,还包括以下步骤:
任务执行过程中,还能够添加新任务和/或移除未执行的任务,添加新任务的具体过程为:
若所需要添加的新任务是独立任务,则直接在最后一个任务序列后添加一个新的任务序列,将该新任务置入该新的任务序列的一个任务队列中,该任务序列中其他任务队列不置入其他任务;
若所需添加的新任务是并发任务,则遍历所有任务序列,查看是否有未执行的任务序列,如果有未执行的任务序列,同时还要判断该任务序列是否是置入独立任务的任务序列,如果不是置入独立任务的任务序列,再判断该任务序列的当前任务队列数是否达到最大任务队列数,若判断该任务序列的当前任务队列数未达到最大任务队列数,则在该任务序列中新建一个任务队列,并置入该新任务,若没有未执行的任务序列或者未执行的所有任务序列都已达到最大任务队列数,则在当前最后一个任务序列后添加一个新的任务序列,将该新任务置入该新的任务序列的一个任务队列中;
若所需添加的新任务是依赖任务,则根据任务拓扑结构查找到被其所依赖的任务,将该新任务直接顺序添加进该被其所依赖的任务所在的任务队列中。
9.通信设备多任务测试装置,其特征在于,包括:
任务划分模块,用于将工装测试任务划分为需要独占处理器运行的独立任务、可并行执行的并发任务及需要依赖某任务测试结果的依赖任务三种类型;
任务建立模块,用于建立至少两个任务序列,每个任务序列中包含至少一个并行执行的任务队列,每个任务队列中包含串行执行的至少一个任务,所有任务序列串行执行;
任务置入模块,用于将任务划分模块划分出的各任务根据其类型分别置于所述任务序列中;
任务执行模块,用于执行所述任务序列中的任务。
10.如权利要求9所述的通信设备多任务测试装置,其特征在于,还包括监控任务模块,用于建立监控任务,该监控任务在所述任务序列中的任务开始执行时执行,用于监控所有任务的任务状态及任务执行结果信息,并控制所有任务序列中各任务的执行及停止,且能够根据所有任务序列生成相应的任务拓扑结构。
CN201810325769.9A 2018-04-12 2018-04-12 通信设备多任务测试方法及装置 Pending CN108491260A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810325769.9A CN108491260A (zh) 2018-04-12 2018-04-12 通信设备多任务测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810325769.9A CN108491260A (zh) 2018-04-12 2018-04-12 通信设备多任务测试方法及装置

Publications (1)

Publication Number Publication Date
CN108491260A true CN108491260A (zh) 2018-09-04

Family

ID=63315891

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810325769.9A Pending CN108491260A (zh) 2018-04-12 2018-04-12 通信设备多任务测试方法及装置

Country Status (1)

Country Link
CN (1) CN108491260A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112486638A (zh) * 2019-09-11 2021-03-12 百度时代网络技术(北京)有限公司 用于执行处理任务的方法、装置、设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1577305A (zh) * 2003-07-28 2005-02-09 华为技术有限公司 一种并行处理的方法及系统
US20160154678A1 (en) * 2014-11-28 2016-06-02 Canon Kabushiki Kaisha Reverting tightly coupled threads in an over-scheduled system
CN107015861A (zh) * 2016-11-07 2017-08-04 珠江水利委员会珠江水利科学研究院 一种基于Fork/Join框架的梯级水库群优化调度多核并行计算设计方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1577305A (zh) * 2003-07-28 2005-02-09 华为技术有限公司 一种并行处理的方法及系统
US20160154678A1 (en) * 2014-11-28 2016-06-02 Canon Kabushiki Kaisha Reverting tightly coupled threads in an over-scheduled system
CN107015861A (zh) * 2016-11-07 2017-08-04 珠江水利委员会珠江水利科学研究院 一种基于Fork/Join框架的梯级水库群优化调度多核并行计算设计方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
XIE MAN-DE: "A Serial and Parallel Scheduling Algorithm for Mobile P2P Streaming Media System", 《2009 SECOND INTERNATIONAL CONFERENCE ON INTELLIGENT COMPUTATION TECHNOLOGY AND AUTOMATION》 *
丁秋林: "《企业信息化咨询》", 31 January 2003, 华夏出版社 *
董学军 等: "航天器发射多任务并行调度模型及算法", 《系统工程与电子技术》 *
郑鹏 等: "《计算机操作系统 第二版》", 31 July 2014, 武汉大学出版社 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112486638A (zh) * 2019-09-11 2021-03-12 百度时代网络技术(北京)有限公司 用于执行处理任务的方法、装置、设备和存储介质

Similar Documents

Publication Publication Date Title
EP2447838B1 (en) Technique for efficient parallelization of software analysis in a distributed computing environment through intelligent dynamic load balancing
JP5978401B2 (ja) 分散システムにおいてユーザリクエストの実行を監視するための方法及びシステム
CN106970880B (zh) 一种分布式自动化软件测试方法及系统
CN106980636A (zh) 保单数据处理方法和装置
EP2447841B1 (en) Scheduling policy for efficient parallelization of software analysis in a distributed computing environment
CN105912387A (zh) 数据处理作业调度方法及装置
CN103699432B (zh) 一种异构环境下的多任务运行时协同调度系统
CN110673936B (zh) 编排业务的断点续作方法、装置、存储介质及电子设备
CN111563014A (zh) 接口服务性能测试方法、装置、设备和存储介质
CN111367786B (zh) 一种符号执行方法、电子设备以及存储介质
CN112433944A (zh) 业务测试方法、装置、计算机设备和存储介质
CN112631919A (zh) 一种对比测试方法、装置、计算机设备及存储介质
CN109726126A (zh) 一种分布式并行fuzz方法及系统
CN110489317A (zh) 基于工作流的云系统任务运行故障诊断方法与系统
EP2447839B1 (en) Efficient partial computation for the parallelization of software analysis in a distributed computing environment
CN108491260A (zh) 通信设备多任务测试方法及装置
CN116577639A (zh) 一种cis芯片测试方法及测试系统
CN105868957A (zh) 一种持续集成方法及装置
CN113626288B (zh) 故障处理方法、系统、装置、存储介质和电子设备
CN111459984B (zh) 基于流式处理的日志数据处理系统及方法
JP3710534B2 (ja) 工程制御方法
CN104572834B (zh) 一种过程元模型构建方法及装置
Qian et al. A strategy for multi-target paths coverage by improving individual information sharing
CN112882910A (zh) 工作流引擎的接口压力测试方法及装置
CN111694728A (zh) 脚本的自动化生成方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20180904

RJ01 Rejection of invention patent application after publication