CN108717378A - 一种探空仪的任务处理方法及装置 - Google Patents
一种探空仪的任务处理方法及装置 Download PDFInfo
- Publication number
- CN108717378A CN108717378A CN201810360235.XA CN201810360235A CN108717378A CN 108717378 A CN108717378 A CN 108717378A CN 201810360235 A CN201810360235 A CN 201810360235A CN 108717378 A CN108717378 A CN 108717378A
- Authority
- CN
- China
- Prior art keywords
- thread
- task
- priority
- target priority
- sonde
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4818—Priority circuits therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G08—SIGNALLING
- G08C—TRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
- G08C17/00—Arrangements for transmitting signals characterised by the use of a wireless electrical link
- G08C17/02—Arrangements for transmitting signals characterised by the use of a wireless electrical link using a radio link
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L5/00—Arrangements affording multiple use of the transmission path
- H04L5/14—Two-way operation using the same type of signal, i.e. duplex
- H04L5/16—Half-duplex systems; Simplex/duplex switching; Transmission of break signals non-automatically inverting the direction of transmission
Abstract
本发明实施例公开了一种探空仪的任务处理方法及装置,方法包括:主线程创建探空仪的定位导航线程、数据采集线程、无线接收线程和无线发射线程;获取就绪任务链表数组中第一个优先级不为零的目标优先级,并确定所述目标优先级下的各任务对应的目标线程;根据时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务;其中,所述目标线程为所述定位导航线程、所述数据采集线程、所述无线接收线程或所述无线发射线程的任意组合。本发明实施例通过创建四个及以上子线程,能够同时处理多项任务,通过确定目标优先级下的各任务对应的目标线程并根据时间片调度运行目标线程,能够在合理调度线程的前提下提高探空仪的任务处理效率。
Description
技术领域
本发明实施例涉及计算机技术领域,具体涉及一种探空仪的任务处理方法及装置。
背景技术
高空运动状态(风向、风速)和气象要素(气压、温度、湿度)的收集、整理对研究大气中各种物理过程及天气预报服务是非常重要的。随着气象科学事业的高度发展,气象业务对探测高度的要求越来越高,它是天气预报、气候分析、科学研究、国际交换、气象情报和资料的主要来源。为了使天气预报和气候分析工作能够获得更多的依据,这就需要通过“释放探空仪”,并开展各种相关的高空气象探测实验来获得不同条件下的探测数据。
现有的无线电探空仪内部均含有若干个微处理器,负责对探测数据与定位数据的采集、处理和传输等工作。而微处理器由内部运行的嵌入式软件控制来执行相关操作。因此探空仪具体的软件执行就像是探空仪的灵魂,对于探空仪正常工作起到了非常关键的核心控制作用。由于多方面原因,现有的无线电探空仪内部的嵌入式软件架构主要采用“前后台系统”,即软件主要由一个主循环程序和若干个中断服务程序构成。主循环程序中调用API函数完成所需的操作,这个大循环就叫做后台系统。中断服务程序用于处理系统的异步事件,也就是前台系统。前台是中断级,后台是任务级,同一时刻只处理一个任务,当无线电探空仪需处理的任务量较大时,极大影响了探空仪的任务处理效率。
发明内容
由于现有方法存在上述问题,本发明实施例提出一种探空仪的任务处理方法及装置。
第一方面,本发明实施例提出一种探空仪的任务处理方法,包括:
创建探空仪的定位导航线程、数据采集线程、无线接收线程和无线发射线程;
获取就绪任务链表数组中第一个优先级不为零的目标优先级,并确定所述目标优先级下的各任务对应的目标线程;
根据时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务;
其中,所述目标线程为所述定位导航线程、所述数据采集线程、所述无线接收线程或所述无线发射线程的任意组合。
可选地,所述根据时间片调度运行所述目标线程,以执行所述目标优先级下的各任务,具体包括:
若所述目标优先级下的任务的数量为一个,则根据时间片运行所述目标线程;
若所述目标优先级下的任务的数量大于一个,则根据时间片采用轮换调度算法轮流运行所述目标线程,以执行所述目标优先级下的各任务。
可选地,所述根据时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务,具体包括:
若所述目标优先级下的任务的数量大于一个,则根据所述目标线程中各线程的优先级和时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务;
其中,所述定位导航线程的优先级最高,实时更新定位信息并保存在对应的数据缓冲区内;所述数据采集线程的优先级最低。
可选地,所述无线发射线程用于等待PPS信号量发生后,先发出一个启动数据测量信号量,随后将定位信息缓冲区内的定位导航信息与测量数据合成为数据包并进行数据调制,并根据预先设置的信道复用方式,以频分复用模式或频分复用+时分复用模式将所述数据包以无线电波的形式发射出去;
所述无线接收线程用于实时监测无线数据的接收信号量,当监测接收到无线数据后,将数据依次读出存储于专用缓冲区内,并结合所述无线发射线程形成半双工的无线收发功能。
可选地,所述根据时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务,具体包括:
根据毫秒级时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务;
其中,每个线程占用相同的运行时间片。
第二方面,本发明实施例还提出一种探空仪的任务处理装置,包括:
线程创建模块,用于创建探空仪的定位导航线程、数据采集线程、无线接收线程和无线发射线程;
线程确定模块,用于获取就绪任务链表数组中第一个优先级不为零的目标优先级,并确定所述目标优先级下的各任务对应的目标线程;
线程调度模块,用于根据时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务;
其中,所述目标线程为所述定位导航线程、所述数据采集线程、所述无线接收线程或所述无线发射线程的任意组合。
可选地,所述线程调度模块具体包括:
第一判断单元,用于若所述目标优先级下的任务的数量为一个,则根据时间片运行所述目标线程;
第二判断单元,用于若所述目标优先级下的任务的数量大于一个,则根据时间片采用轮换调度算法轮流运行所述目标线程,以执行所述目标优先级下的各任务。
可选地,所述线程调度模块具体用于若所述目标优先级下的任务的数量大于一个,则根据所述目标线程中各线程的优先级和时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务;
其中,所述定位导航线程的优先级最高,实时更新定位信息并保存在对应的数据缓冲区内;所述数据采集线程的优先级最低。
第三方面,本发明实施例还提出一种电子设备,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行上述方法。
第四方面,本发明实施例还提出一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述方法。
由上述技术方案可知,本发明实施例通过创建至少四个子线程,能够同时处理多项任务,通过确定目标优先级下的各任务对应的目标线程并根据时间片调度运行目标线程,能够在合理调度线程的前提下提高探空仪的任务处理效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。
图1为本发明一实施例提供的一种探空仪的任务处理方法的流程示意图;
图2为本发明一实施例提供的探空仪各线程的任务处理流程示意图;
图3为本发明另一实施例提供的一种探空仪的任务处理方法的流程示意图;
图4为本发明一实施例提供的一种探空仪的任务处理装置的结构示意图;
图5为本发明一实施例提供的电子设备的逻辑框图。
具体实施方式
下面结合附图,对本发明的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
图1示出了本实施例提供的一种探空仪的任务处理方法的流程示意图,包括:
S101、创建探空仪的定位导航线程、数据采集线程、无线接收线程和无线发射线程。
具体地,探空仪在通电工作后首先由主程序分别创建四个线程,再由操作系统根据优先级进行调度,保证每个线程都能得到合理的CPU使用时间,省去了人为编写专用代码进行任务调度的负担,也有利于加快软件开发进度。四个线程的任务处理流程如图2所示。
所述定位导航线程采用GNSS定位导航处理线程,实时更新定位信息并保存在相关数据缓冲区内,以保证定位信息的及时性和准确性。
所述数据采集线程当监测到由无线数据发射线程发出的“启动TPU(温度、气压、湿度)测量信号量”后,依次启动一轮温度测量、湿度测量和气压测量工作,得到初步的测量值。再利用探空仪内部存储器内的“传感器校正数据”将初步测量值加以校正,从而得到最终测量值并存储于专用缓冲区内。TPU测量功能最多支持配置5个温度传感器和2个湿度传感器,相比传统探空仪支持更多的传感器,可获得更多的测量数据,有助于实验数据的对比和分析工作。
所述无线发射线程用于等待PPS信号量发生后,先发出一个启动数据测量信号量(TPU数据的信号量,如温度、气压、湿度数据的信号量),随后将定位信息缓冲区内的定位导航信息与测量数据合成为数据包并进行数据调制,并根据预先设置的信道复用方式,以频分复用模式或频分复用+时分复用模式将所述数据包以无线电波的形式发射出去。
所述无线接收线程用于实时监测无线数据的接收信号量,当监测接收到无线数据后,将数据依次读出存储于专用缓冲区内,并结合所述无线发射线程形成半双工的无线收发功能。
S102、获取就绪任务链表数组中第一个优先级不为零的目标优先级,并确定所述目标优先级下的各任务对应的目标线程。
其中,所述目标线程为所述定位导航线程、所述数据采集线程、所述无线接收线程或所述无线发射线程的任意组合。
S103、根据时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务。
其中,所述时间片为将时间划分为等长的时间段,将各等长的时间段分别分配给不同的线程,以使每个线程都能运行,实现线程的合理调度。
具体地,本实施例在探空仪的任务处理方法中引入了“RTOS(Real Time OS,即实时操作系统)”架构,在RTOS中,我们可以把要实现的功能划分为多个任务,每个任务负责实现其中的一部分,在宏观上任务可以同时运行。RTOS的内核通过多线程机制管理所有的任务,内核决定了运行哪个任务,何时停止当前任务切换到其他任务。通过引入RTOS实现了对CPU资源的最大化利用,有助于实现程序的模块化开发,并能够实现复杂的实时应用,且仅依靠一个微处理器就可以完成全部的数据采集、处理和传输工作,具有很大的创新性,为探空仪整机的降低功耗、减小体积、减轻自重目标打下基础,同时更合理、更有效地利用CPU的资源,简化应用软件的设计,缩短系统开发时间,更好地保证系统的实时性和可靠性。
本实施例通过创建四个线程,能够同时处理多项任务,通过确定目标优先级下的各任务对应的目标线程并根据时间片调度运行目标线程,能够在合理调度线程的前提下提高探空仪的任务处理效率。
进一步地,在上述方法实施例的基础上,S103具体包括:
S1031、若所述目标优先级下的任务的数量为一个,则根据时间片运行所述目标线程。
S1032、若所述目标优先级下的任务的数量大于一个,则根据时间片采用轮换调度算法轮流运行所述目标线程,以执行所述目标优先级下的各任务。
具体地,当所述目标优先级下的任务的数量大于一个时,根据所述目标线程中各线程的优先级和时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务。
其中,所述定位导航线程的优先级最高,实时更新定位信息并保存在对应的数据缓冲区内;所述数据采集线程的优先级最低;数据采集线程、无线接收线程的优先级相同。
本实施例通过引入实时操作系统,建立起一个高效实用的探空仪软件设计架构,为探空仪的后续功能扩展计划预留了足够的存储器资源,从而为新型探空仪软件的不断完善和发展打下了坚实的基础。
进一步地,在上述方法实施例的基础上,S103具体包括:
根据毫秒级时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务。
其中,每个线程占用相同的运行时间片。
具体地,在每秒的时间片中,GNSS定位导航线程占用300ms,其他时间为TPU数据采集线程、无线接收线程和无线发射线程运行时间。对于任务之间共用的某些资源,充分利用了操作系统提供的“互斥机制”进行处理。
本实施例通过采用多任务并行处理的方式,CPU时间利用得更为合理,为将来拓展功能提供了便利。
在具体应用过程中,本实施例提供的探空仪的任务处理方法在硬件上可以以气象专用模块MOC1010M为平台,运行过程如图3所示。首先进行资源初始化,等待PPS消息触发后,进行温度采集;等待采集完成后,读取采集结果并处理;同理,进行湿度、气压和射频发送数据的采集,如图3所示。
本实施例提供的探空仪的任务处理方法基于一个轻量级的实时操作系统,功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能、软件定时器等,可基本满足较小系统的需要。
任务调度机制是嵌入式实时操作系统的一个重要概念,也是其核心技术。对于可剥夺型内核,优先级高的任务一旦就绪就能剥夺优先级较低任务的CPU使用权,提高了系统的实时响应能力。本实施例采用的实时操作系统内核支持优先级调度算法,每个任务可根据重要程度的不同被赋予一定的优先级,CPU总是让处于就绪态的、优先级最高的任务先运行。其操作系统内核同时支持轮换调度算法,系统允许不同的任务使用相同的优先级,在没有更高优先级任务就绪的情况下,同一优先级的任务共享CPU的使用时间。
在任务调度的具体实现上,其采用双向链表而不是采用查任务就绪表的方法来进行任务调度。系统定义的链表和链表节点数据结构如下所示:
//定义链表结构
typedef struct xLIST{
unsigned portSHORPT usNumberOfItems;//usNumberOfItems为链表的长度,为0表示链表为空
volatile xListItem*pxHead;//pxHead为链表的头指针
volatile xListItem*pxIndex;//pxIndex指向链表当前结点的指针
volatile xListItem xListEnd;//xListEnd为链表尾结点
}xList;
//定义链表结点的结构
struct xLIST_ITEM{
port Tick type;//port Tick Type为时针节拍数据类型,
xItem Value;//xItem Value的值用于实现时间管理,可根据需要选择为16位或32位
volatile struct xLIST_ITEM*pxNext;//指向链表的前一个结点
void*pvOwner;//指向此链表结点所在的任务控制块
void*pvContainer;//指向此链表结点所在的链表
};
当进行任务调度时,调度算法首先实现优先级调度。系统按照优先级从高到低的顺序从就绪任务链表数组中寻找usNumberOfItems第一个不为0的优先级,此优先级即为当前最高就绪优先级,据此实现优先级调度。若此优先级下只有一个就绪任务,则此就绪任务进入运行态;若此优先级下有多个就绪任务,则需采用轮换调度算法实现多任务轮流执行。操作系统根据时间片调度,给予每个任务相同的运行时间片,保证每个任务(线程)都能获得CPU使用时间。
在与现有探空仪的任务处理方法进行比较后,本实施例提供的探空仪的任务处理方法具备如下优点:
现有探空仪的任务处理主要采用“前后台系统”,不适合开发大型软件,多任务运行的实时性难以得到有效保障;本实施例提供的探空仪的任务处理方法采用“RTOS”架构,支持多任务并行运行,有效保证了任务运行的实时性;使用RTOS可以帮助设计者更容易地更合理地利用硬件资源,同时提供更好地安全保障机制,提高软件的可靠性;使用RTOS有利于软件的标准化,增强了软件的可维护性,支持多任务并行运行,有效保证了任务运行的实时性。
现有探空仪的任务处理在对无线信道利用率方面,一般采用的是“频分复用”模式,即在多个探空仪同时施放的情况下每个探空仪的无线通信过程都会占用一个独立的频点,频带利用率较低;本实施例提供的探空仪的任务处理方法采用的是“频分复用+时分复用”模式,即在多个探空仪同时施放的情况下可令多个探空仪的无线通信过程共同占用一个频点。而同频点的探空仪在不同的时间段使用同一个频点,这就避免了同频探空仪同时发射而造成信道冲突,提高了频带利用率。
现有探空仪的任务处理的无线通信过程一般采用“单工”模式,即探空仪只能利用无线电波发射数据,而不能利用无线电波接收指令或数据;本实施例提供的探空仪的任务处理方法的无线通信过程采用“半双工”模式,即探空仪不仅可以利用无线电波发射数据,也可以在发射结束后利用无线电波接收指令或数据。基于半双工的无线收发功能,多个同类型或不同类型的探空设备可以组建空中无线局域网,从而极大地丰富了探空仪应用的多样性。
现有探空仪的任务处理的集成度低,软件分布在几个不同的微处理器中,增加了生产过程、维护过程的难度;本实施例提供的探空仪的任务处理方法基于SOC方案,集成度高,仅依靠一个微处理器就可以实现GNSS定位导航功能并完成探测数据的采集、处理和传输的工作,软件可将GNSS定位导航功能与TPU(温度、气压、湿度)测量等其它功能有机地结合为一体。具有很大的创新性。从而为探空仪整机的降低功耗、减小体积、减轻自重目标打下基础。
现有探空仪的任务处理一般只支持配置2个温度传感器和1个湿度传感器,支持温/湿传感器数量较少;本实施例提供的探空仪的任务处理方法仪最多支持配置5个温度传感器和2个湿度传感器,相比传统探空仪支持更多的传感器,可获得更多的测量数据,有助于实验数据的对比和分析工作。
现有探空仪的任务处理的校正数据一般保存在计算机的磁盘内,通过上位机运行的观测软件来读取并应用。这就造成探空仪必须和上位机进行配套使用,应用灵活度较低;本实施例提供的探空仪的任务处理方法的校正数据可存储于探空仪内部存储器中,并被探空仪软件利用参与测量数据的计算和修正。从而不需配合上位机软件即可获得修正后的测量数据,简化了探空仪的使用步骤,使用起来更加灵活。
现有探空仪的任务处理一般都是采用通用微处理器,由于其通用性的缘故,导致其内部的程序容易被解密读出,不利于软件的知识产权保护;本实施例提供的探空仪的任务处理方法基于气象专用硬件平台,运行于气象专用模块内部的微处理器。相比基于通用微处理器的传统探空仪软件,新型探空仪软件具有更好的专用性和专业性,更有助于知识产权的保护。
图4示出了本实施例提供的一种探空仪的任务处理装置的结构示意图,所述装置包括:线程创建模块401、线程确定模块402和线程调度模块403,其中:
所述线程创建模块401用于创建探空仪的定位导航线程、数据采集线程、无线接收线程和无线发射线程;
所述线程确定模块402用于获取就绪任务链表数组中第一个优先级不为零的目标优先级,并确定所述目标优先级下的各任务对应的目标线程;
所述线程调度模块403用于根据时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务;
其中,所述目标线程为所述定位导航线程、所述数据采集线程、所述无线接收线程或所述无线发射线程的任意组合。
具体地,所述线程创建模块401创建探空仪的定位导航线程、数据采集线程、无线接收线程和无线发射线程;所述线程确定模块402获取就绪任务链表数组中第一个优先级不为零的目标优先级,并确定所述目标优先级下的各任务对应的目标线程;所述线程调度模块403根据时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务。
本实施例通过创建四个线程,能够同时处理多项任务,通过确定目标优先级下的各任务对应的目标线程并根据时间片调度运行目标线程,能够在合理调度线程的前提下提高探空仪的任务处理效率。
进一步地,在上述装置实施例的基础上,所述线程调度模块具体包括:
第一判断单元,用于若所述目标优先级下的任务的数量为一个,则根据时间片运行所述目标线程;
第二判断单元,用于若所述目标优先级下的任务的数量大于一个,则根据时间片采用轮换调度算法轮流运行所述目标线程,以执行所述目标优先级下的各任务。
进一步地,在上述装置实施例的基础上,所述线程调度模块具体用于若所述目标优先级下的任务的数量大于一个,则根据所述目标线程中各线程的优先级和时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务;
其中,所述定位导航线程的优先级最高,实时更新定位信息并保存在对应的数据缓冲区内;所述数据采集线程的优先级最低。
本实施例所述的探空仪的任务处理装置可以用于执行上述方法实施例,其原理和技术效果类似,此处不再赘述。
参照图5,所述电子设备,包括:处理器(processor)501、存储器(memory)502和总线503;
其中,
所述处理器501和存储器502通过所述总线503完成相互间的通信;
所述处理器501用于调用所述存储器502中的程序指令,以执行上述各方法实施例所提供的方法。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法。
本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种探空仪的任务处理方法,其特征在于,包括:
创建探空仪的定位导航线程、数据采集线程、无线接收线程和无线发射线程;
获取就绪任务链表数组中第一个优先级不为零的目标优先级,并确定所述目标优先级下的各任务对应的目标线程;
根据时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务;
其中,所述目标线程为所述定位导航线程、所述数据采集线程、所述无线接收线程或所述无线发射线程的任意组合。
2.根据权利要求1所述的方法,其特征在于,所述根据时间片调度运行所述目标线程,以执行所述目标优先级下的各任务,具体包括:
若所述目标优先级下的任务的数量为一个,则根据时间片运行所述目标线程;
若所述目标优先级下的任务的数量大于一个,则根据时间片采用轮换调度算法轮流运行所述目标线程,以执行所述目标优先级下的各任务。
3.根据权利要求2所述的方法,其特征在于,所述根据时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务,具体包括:
若所述目标优先级下的任务的数量大于一个,则根据所述目标线程中各线程的优先级和时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务;
其中,所述定位导航线程的优先级最高,实时更新定位信息并保存在对应的数据缓冲区内;所述数据采集线程的优先级最低。
4.根据权利要求1所述的方法,其特征在于,所述无线发射线程用于等待PPS信号量发生后,先发出一个启动数据测量信号量,随后将定位信息缓冲区内的定位导航信息与测量数据合成为数据包并进行数据调制,并根据预先设置的信道复用方式,以频分复用模式或频分复用+时分复用模式将所述数据包以无线电波的形式发射出去;
所述无线接收线程用于实时监测无线数据的接收信号量,当监测接收到无线数据后,将数据依次读出存储于专用缓冲区内,并结合所述无线发射线程形成半双工的无线收发功能。
5.根据权利要求1所述的方法,其特征在于,所述根据时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务,具体包括:
根据毫秒级时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务;
其中,每个线程占用相同的运行时间片。
6.一种探空仪的任务处理装置,其特征在于,包括:
线程创建模块,用于创建探空仪的定位导航线程、数据采集线程、无线接收线程和无线发射线程;
线程确定模块,用于获取就绪任务链表数组中第一个优先级不为零的目标优先级,并确定所述目标优先级下的各任务对应的目标线程;
线程调度模块,用于根据时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务;
其中,所述目标线程为所述定位导航线程、所述数据采集线程、所述无线接收线程或所述无线发射线程的任意组合。
7.根据权利要求6所述的装置,其特征在于,所述线程调度模块具体包括:
第一判断单元,用于若所述目标优先级下的任务的数量为一个,则根据时间片运行所述目标线程;
第二判断单元,用于若所述目标优先级下的任务的数量大于一个,则根据时间片采用轮换调度算法轮流运行所述目标线程,以执行所述目标优先级下的各任务。
8.根据权利要求7所述的装置,其特征在于,所述线程调度模块具体用于若所述目标优先级下的任务的数量大于一个,则根据所述目标线程中各线程的优先级和时间片调度并运行所述目标线程,以执行所述目标优先级下的各任务;
其中,所述定位导航线程的优先级最高,实时更新定位信息并保存在对应的数据缓冲区内;所述数据采集线程的优先级最低。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1至5任一所述的方法。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行如权利要求1至5任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810360235.XA CN108717378A (zh) | 2018-04-20 | 2018-04-20 | 一种探空仪的任务处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810360235.XA CN108717378A (zh) | 2018-04-20 | 2018-04-20 | 一种探空仪的任务处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108717378A true CN108717378A (zh) | 2018-10-30 |
Family
ID=63899295
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810360235.XA Pending CN108717378A (zh) | 2018-04-20 | 2018-04-20 | 一种探空仪的任务处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108717378A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110598054A (zh) * | 2019-08-19 | 2019-12-20 | 桂林长海发展有限责任公司 | 一种多线程链表处理方法、装置及计算机可读存储介质 |
CN111797110A (zh) * | 2020-06-23 | 2020-10-20 | 北京金堤科技有限公司 | 一种生成调度模型的方法、装置、计算机设备及存储介质 |
CN113238501A (zh) * | 2021-05-08 | 2021-08-10 | 西安联乘智能科技有限公司 | 一种基于rtos操作系统的车联网控制方法和系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070143761A1 (en) * | 2005-12-15 | 2007-06-21 | Yong Deng | Task scheduler system and method for managing tasks in an embedded system without a real time operating system |
CN101424941A (zh) * | 2007-10-31 | 2009-05-06 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 一种控制实现方法和系统 |
CN104778248A (zh) * | 2015-04-14 | 2015-07-15 | 中国气象局气象探测中心 | 一种综合气象观测运行监控系统站网信息管理系统 |
CN106019407A (zh) * | 2016-07-14 | 2016-10-12 | 无锡信大气象传感网科技有限公司 | 一种基于双余度遥控无人机的无线电探空系统 |
-
2018
- 2018-04-20 CN CN201810360235.XA patent/CN108717378A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070143761A1 (en) * | 2005-12-15 | 2007-06-21 | Yong Deng | Task scheduler system and method for managing tasks in an embedded system without a real time operating system |
CN101424941A (zh) * | 2007-10-31 | 2009-05-06 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 一种控制实现方法和系统 |
CN104778248A (zh) * | 2015-04-14 | 2015-07-15 | 中国气象局气象探测中心 | 一种综合气象观测运行监控系统站网信息管理系统 |
CN106019407A (zh) * | 2016-07-14 | 2016-10-12 | 无锡信大气象传感网科技有限公司 | 一种基于双余度遥控无人机的无线电探空系统 |
Non-Patent Citations (3)
Title |
---|
刘滨等: "嵌入式操作系统FreeRTOS的原理与实现", 《单片机与嵌入式系统应用》 * |
詹汉强: "振幅调制系统", 《电路、信号与系统》 * |
韩晓丹: "应用于气象探测的双加热温度传感器设计", 《中国优秀硕士学位论文全文数据库 基础科技辑》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110598054A (zh) * | 2019-08-19 | 2019-12-20 | 桂林长海发展有限责任公司 | 一种多线程链表处理方法、装置及计算机可读存储介质 |
CN110598054B (zh) * | 2019-08-19 | 2021-11-23 | 桂林长海发展有限责任公司 | 一种多线程链表处理方法、装置及计算机可读存储介质 |
CN111797110A (zh) * | 2020-06-23 | 2020-10-20 | 北京金堤科技有限公司 | 一种生成调度模型的方法、装置、计算机设备及存储介质 |
CN111797110B (zh) * | 2020-06-23 | 2024-01-26 | 北京金堤科技有限公司 | 一种生成调度模型的方法、装置、计算机设备及存储介质 |
CN113238501A (zh) * | 2021-05-08 | 2021-08-10 | 西安联乘智能科技有限公司 | 一种基于rtos操作系统的车联网控制方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108717378A (zh) | 一种探空仪的任务处理方法及装置 | |
KR101694310B1 (ko) | 멀티코어 프로세서 기반의 모니터링 장치 및 그 방법 | |
US20210368656A1 (en) | Intelligent control and distribution of a liquid in a data center | |
US11533683B2 (en) | Advanced graphics power state management | |
EP0315647A4 (en) | Dataflow processing element, multiprocessor, and processes | |
US11895808B2 (en) | Intelligent refrigeration-assisted data center liquid cooling | |
CN108416433A (zh) | 一种基于异步事件的神经网络异构加速方法和系统 | |
US20210103433A1 (en) | Kernel fusion for machine learning | |
GB2600793A (en) | Video synthesis using one or more neural networks | |
GB2600202A (en) | Intelligent liquid-cooled computing pods for a mobile datacenter | |
GB2601394A (en) | Image generation using one or more neural networks | |
GB2603983A (en) | View generation using one or more neural networks | |
GB2598194A (en) | Anomaly characterization using one or more neural networks | |
GB2613919A (en) | Techniques for memory error isolation | |
US20210350139A1 (en) | Highlight determination using one or more neural networks | |
Peng et al. | Design of an efficient CNN-Based cough detection system on lightweight FPGA | |
CN106680834A (zh) | 相干测风激光雷达中一种数据处理装置及方法 | |
WO2022015639A1 (en) | Game generation using one or more neural networks | |
GB2597126A (en) | End of speech detection using one or more neural networks | |
US11822926B2 (en) | Device link management | |
CN112395055A (zh) | 用于实现对预定义工作负载的动态处理的方法和装置 | |
Gan et al. | Solving mesoscale atmospheric dynamics using a reconfigurable dataflow architecture | |
US20220309017A1 (en) | Multi-format graphics processing unit docking board | |
Choi et al. | A soc-based sensor node: Evaluation of retos-enabled cc2430 | |
Dai et al. | Accelerating a ray launching model using GPU with CUDA |
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 |