CN117215648A - 基于时间片操作系统的控制方法、系统、设备及存储介质 - Google Patents
基于时间片操作系统的控制方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN117215648A CN117215648A CN202311095744.1A CN202311095744A CN117215648A CN 117215648 A CN117215648 A CN 117215648A CN 202311095744 A CN202311095744 A CN 202311095744A CN 117215648 A CN117215648 A CN 117215648A
- Authority
- CN
- China
- Prior art keywords
- service
- execution
- module
- data
- layer
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 167
- 230000008569 process Effects 0.000 claims abstract description 107
- 238000004891 communication Methods 0.000 claims abstract description 66
- 230000002159 abnormal effect Effects 0.000 claims description 107
- 238000012545 processing Methods 0.000 claims description 43
- 230000008030 elimination Effects 0.000 claims description 17
- 238000003379 elimination reaction Methods 0.000 claims description 17
- 230000000977 initiatory effect Effects 0.000 claims description 7
- 230000005856 abnormality Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 description 84
- 230000003993 interaction Effects 0.000 description 20
- 238000013515 script Methods 0.000 description 20
- 239000002609 medium Substances 0.000 description 14
- 238000010586 diagram Methods 0.000 description 11
- 238000013500 data storage Methods 0.000 description 8
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 7
- 230000002452 interceptive effect Effects 0.000 description 6
- 238000013523 data management Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000012120 mounting media Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Abstract
本申请实施例公开了一种基于时间片操作系统的控制方法、系统、设备及存储介质。本申请实施例提供的技术方案,通过通过执行层的业务驱动模块接收应用层发送的第一业务数据;通过所述业务驱动模块对所述第一业务数据进行解析处理,得到第一执行顺序和第一执行项数据,每一第一执行项数据对应一项业务执行;通过所述业务驱动模块根据所述第一执行顺序将所述第一执行项数据依次传输至执行层的业务执行模块,所述业务执行模块根据接收到的所述第一执行项数据进行业务执行,能够解决时间片操作系统控制过程中的通信信占比较低的问题,提升通信信占比,提高资源利用率。
Description
技术领域
本申请实施例涉及操作系统技术领域,尤其涉及一种基于时间片操作系统的控制方法、系统、设备及存储介质。
背景技术
随着计算机使用的普及,嵌入式系统的应用越来越广泛,特别是时间片操作系统,例如应用在采集仪器的控制上。
目前的时间片操作系统的控制是使用命令查询式进行的。命令查询式的控制方式是通过在应用层启动一个独立的线程,通过驱动层和通信层向执行发送对应的执行任务。应用层发送执行任务后,定时读取执行层的运行状态,直至运行状态为完成状态后,再发起读取执行数据的请求,以获取执行层的执行数据。
通过命令查询式的控制方式,基于查询过程中需要频繁的调用驱动层进行访问交互,过程中要不断进行用户态与内核态的转换,会造成通信信占比较低,导致资源浪费。
发明内容
本申请实施例提供一种基于时间片操作系统的控制方法、系统、设备及存储介质,能够解决时间片操作系统控制过程中的通信信占比较低的问题,提升通信信占比,提高资源利用率。
在第一方面,本申请实施例提供了一种基于时间片操作系统的控制方法,包括:
通过执行层的业务驱动模块接收应用层发送的第一业务数据;
通过所述业务驱动模块对所述第一业务数据进行解析处理,得到第一执行顺序和第一执行项数据,每一第一执行项数据对应一项业务执行;
通过所述业务驱动模块根据所述第一执行顺序将所述第一执行项数据依次传输至执行层的业务执行模块,所述业务执行模块根据接收到的所述第一执行项数据进行业务执行。
进一步的,所述通过执行层的业务驱动模块接收应用层发送的第一业务数据之后,包括:
通过所述业务驱动模块接收应用层发送的第二业务数据;
通过所述业务驱动模块将所述第二业务数据替换所述第一业务数据,并对所述第二业务数据进行解析处理,得到第二执行顺序和第二执行项数据;
通过所述业务驱动模块根据所述第二执行顺序将所述第二执行项数据依次传输至所述业务执行模块;
所述业务执行模块根据接收到的所述第二执行项数据进行业务执行。
进一步的,所述通过所述业务驱动模块根据所述第一执行顺序将所述第一执行项数据依次传输至执行层的业务执行模块,所述业务执行模块根据接收到的所述第一执行项数据进行业务执行,包括:
通过所述业务驱动模块将对应的第一执行项数据传输至所述业务执行模块;
当所述业务执行模块执行完一项业务后,发送业务结束中断至所述业务驱动模块;
所述业务驱动模块接收到所述业务结束中断后,向驱动层发起数据读中断;
所述驱动层接收到所述数据读中断后,向所述业务驱动模块发送数据读请求;
所述业务驱动模块接收到所述数据读请求后,向所述驱动层发送执行过程数据;
所述驱动层将接收到的执行过程数据传输至应用层对应的存储模块中,所述驱动层接收完成后,向所述应用层和所述业务驱动模块发送数据读完成通知;
所述业务驱动模块接收到所述数据读完成通知后,将下一条第一执行项数据发送至所述业务执行模块;
所述业务执行模块根据所述第一执行项数据执行对应的业务。
进一步的,所述通过执行层的业务驱动模块接收应用层发送的第一业务数据之前,包括:
通过应用层接收业务需求,并根据所述业务需求选择对应的执行项数据进行配置处理,得到所述第一业务数据。
进一步的,所述通过执行层的业务驱动模块接收应用层发送的第一业务数据之前,包括:
将异常处理流程发送至所述业务驱动模块中进行存储,所述异常处理流程包括异常业务流程。
进一步的,所述通过所述业务驱动模块根据所述第一执行顺序将所述第一执行项数据依次传输给执行层的业务执行模块,所述业务执行模块根据接收到的所述第一执行项数据进行业务执行,包括:
当所述业务驱动模块接收到所述业务执行模块发送异常通知时,暂停向所述业务执行模块发送第一执行项数据,所述异常通知包括异常事件对应的事件标识;
通过所述业务驱动模块根据所述事件标识对所述异常处理流程进行解析处理,得到对应的异常业务流程的异常项数据,所述事件标识与异常业务流程存在对照关系;
通过所述业务驱动模块将所述异常项数据发送至所述业务执行模块;
所述业务执行项模块根据所述异常项数据进行异常处理,直至异常消除后,发送异常消除通知至所述业务驱动模块;
所述业务驱动模块接收到所述异常消除通知后,恢复向所述业务执行模块发送第一执行项数据。
进一步的,所述业务驱动模块接收到所述异常消除通知后,恢复向所述业务执行模块发送第一执行项数据之后,包括:
通过所述业务驱动模块向所述驱动层发起数据读中断;
所述驱动层根据所述数据读中断向所述业务驱动模块发送数据读请求;
所述业务驱动模块根据所述数据读请求向所述驱动层发送异常过程数据;
所述驱动层将接收到的异常过程数据传输至应用层对应的存储模块中。
在第二方面,本申请实施例提供了一种基于时间片操作系统的控制系统,用于执行第一方面所述的基于时间片操作系统的控制方法,包括:
应用层、驱动层、通信层和执行层,所述执行层包括业务驱动模块和业务执行模块;
所述应用层通过所述通信层与所述驱动层以及所述执行层连接,所述应用层用于接收业务需求和生成业务流程;
所述驱动层通过所述通信层与所述执行层的业务驱动模块连接,所述驱动层用于在业务执行过程中从所述执行层搬运对应的执行过程数据至所述应用层;
所述业务驱动模块与所述业务执行模块连接,所述业务驱动模块用于对从应用层接收到的业务流程进行解析处理得到执行项数据,并将执行项数据传输至业务执行模块,所述业务执行模块用于根据执行项数据进行业务执行。
在第三方面,本申请实施例提供了一种基于时间片操作系统的控制设备,包括:
存储器以及一个或多个处理器;
所述存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的基于时间片操作系统的控制方法。
在第四方面,本申请实施例提供了一种存储计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面所述的基于时间片操作系统的控制方法。
本申请实施例通过执行层的业务驱动模块对从应用层接收到的第一业务数据进行解析处理,得到第一执行顺序和第一执行项数据,并根据第一执行顺序将第一执行项数据依次传输至执行层的业务执行模块,业务执行模块根据接收到的第一执行项数据进行业务执行。采用上述技术手段,可以通过应用层仅发送一次第一业务数据,通过执行层的业务驱动模块对第一业务数据进行解析处理而得到对应的第一执行顺序和第一执行项数据,仅需要与应用层基于第一业务数据进行一次的交互,以此可避免频繁调用驱动层进行访问而导致的通信信占比较低的问题,提升通信信占比,提高资源利用率。
附图说明
图1是本申请实施例提供的一种基于时间片操作系统的控制方法的流程图;
图2是本申请实施例提供的一种业务数据示意图;
图3是本申请实施例提供的一种第一业务数据示意图;
图4是本申请实施例提供的另一种基于时间片操作系统的控制方法的流程图
图5是本申请实施例提供的又一种基于时间片操作系统的控制方法的流程图;
图6是本申请实施例提供的一种异常处理流程示意图;
图7是本申请实施例提供的另一种基于时间片操作系统的控制方法的流程图;
图8是本申请实施例提供的一种第二业务数据示意图;
图9是本申请实施例提供的一种基于时间片操作系统的控制系统的结构示意图;
图10是本申请实施例提供的一种基于时间片操作系统的控制设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
基于时间片操作的系统一般分为应用层、驱动层、通信层和执行层。其中应用层用于生成执行程序,包括人机交互(UI)、数据分析处理和控制操作等。应用层通过驱动层访问硬件,例如采集仪器(例如示波器、记录仪、CAN卡、逻辑分析仪和功率分析仪),驱动层与传输总线相连,传输总线可以是PCIe总线、USB和网络等。通信层是系统所采用总线数据传输的控制模块,主要负责接收总线上的数据并分发至执行层,或者将执行层产生的数据发送至应用层。执行层属于执行业务的模块,例如完成采集业务。
基于时间片操作的系统在访问过程中,应用层与驱动层交互需要操作系统完整,应用层需要在用户态和内核态之间进行切换,在用户态和内核态进行切换的过程中,比较消耗时间,并且在切换过程中存在抢占CPU的操作,存在一定的不可靠性。
目前,基于时间片操作系统(例如windows系统或Linux系统)对于采集仪器(例如示波器、记录仪、CAN卡、逻辑分析仪和功率分析仪)的控制,一般使用命令式查询式的方式进行。
命令查询式的控制方式是通过在应用层启动一个独立的线程,通过驱动层和通信层向执行发送对应的执行任务。应用层发送执行任务后,定时读取执行层的运行状态,直至运行状态为完成状态后,再发起读取执行数据的请求,以获取执行层的执行数据。该命令查询式的控制方式,由于执行层仅仅负责基础业务完整,在业务调度完整由应用层完成,也就是应用层可以通过合理的调度业务流程完整不同的功能,但是在查询的过程中需要频繁的调用驱动层进行访问交互,过程中要不断进行用户态与内核态的转换,会造成通信信占比较低,导致资源浪费。
本申请提供的基于时间片操作系统的控制方法、系统、设备及存储介质,旨在控制过程中,通过应用层仅发送一次第一业务数据,通过执行层的业务驱动模块对第一业务数据进行解析处理而得到对应的第一执行顺序和第一执行项数据,仅需要与应用层基于第一业务数据进行一次的交互,以此可避免频繁调用驱动层进行访问而导致的通信信占比较低的问题,以提升通信信占比,提高资源利用率。相对于传统的命令式查询的方式,其通常需要频繁的调用驱动层进行访问交互,过程中要不断进行用户态与内核态的转换,会造成通信信占比较低,导致资源浪费。基于此,提供本申请实施例的基于时间片操作系统的控制方法,以解决现有的时间片操作系统控制过程中的通信信占比较低的问题。
图1给出了本申请实施例提供的一种基于时间片操作系统的控制方法的流程图,本实施例中提供的基于时间片操作系统的控制方法可以由基于时间片操作系统的控制设备执行,该基于时间片操作系统的控制设备可以通过软件和/或硬件的方式实现,该基于时间片操作系统的控制设备可以是两个或多个物理实体构成,也可以是一个物理实体构成。一般而言,该基于时间片操作系统的控制设备可以是终端设备,如计算机设备等。
下述以计算机设备为执行基于时间片操作系统的控制方法的主体为例,进行描述。参照图1,该基于时间片操作系统的控制方法具体包括:
S101、通过执行层的业务驱动模块接收应用层发送的第一业务数据。
第一业务数据为根据业务需求所生成的业务数据。在应用层中,保存有主流程,主流程可以理解为是所有的业务流程数据。通过应用层接收业务需求,根据该业务需求选择对应的执行项数据进行配置处理,得到第一业务数据。第一业务数据可以理解为包括对应的执行项数据和对应的执行顺序的数据。执行项数据可以理解某一执行业务的执行控制数据。例如,一执行项数据对应的执行业务是采集电流,另一执行项数据对应的执行业务为采集电压,执行顺序为先执行采集电流再执行采集电压,这是可以将该两项业务对应的执行项数据和执行顺序进行配置处理,得到对应的第一业务数据。上述,通过应用层根据业务需求将对应的多项执行项数据进行配置处理,生成包含有多条执行项数据和对应的执行顺序信息的第一业务数据,从而实现执行项数据的打包,减少应用层与执行层的交互次数,以减少应用层的用户态与内核态转换的次数,进而提高通信信占比。
执行层包括业务驱动模块和业务执行模块,其中,业务执行模块只能根据具体的执行项数据进行业务执行。若将第一业务数据发送至业务执行模块,基于业务执行模块没有解析功能,是无法进行业务执行的。因而,本实施例通过执行层的业务驱动模块接收应用层发送的第一业务数据。业务驱动模块可以理解为一种嵌入式程序,为可控制执行模块的单片机或者可控制执行模块的FPGA内的软核实现。
需要说明的是,第一业务数据可以理解为异常处理流程中其中一种类型的执行数据。
图2是本申请实施例提供的一种业务数据示意图,参照图2,业务数据的数据流结构包括流程控制所需变量、事件调度列表以及事件调度列表内所需的业务流程。流程控制所需变量为所需变量的数据空间和初始化数值。事件调度列表描述在不同事件下所需调度业务流程存储的相对地址,业务流程描述了业务的执行顺序和流程。事件调度列表包括事件标识和业务流程地址,其中事件标识为事件1、事件2、事件3......事件N,业务流程地址包括业务流程地址1、业务流程地址2、业务流程地址3......业务流程地址N,事件调度列表内所需的业务流程包括业务流程1、业务流程2、业务流程3......业务流程N。事件调度列表内所需的业务流程用于描述该业务存储了多少条语句,分为语言信息区和语句参数区,其中语句信息区用于描述每一条语句使用的功能码以及语句在执行过程中的参数信息存储地址,语句参数区分别存储相应语句所需参数信息,参数信息依据功能码所需参数而确定。需要说明的是,每一功能的参数结构相同。示例性的,业务流程1对应语句1,语句1在语言信息区中对应为功能码1和语句参数地址1,语句1在语句参数区中对应为语句参数1;业务流程2对应语句2,语句2在语言信息区中对应为功能码2和语句参数地址2,语句2在语句参数区中对应为语句参数2;业务流程3对应语句3,语句3在语言信息区中对应为功能码3和语句参数地址3,语句3在语句参数区中对应为语句参数3。依次类推,业务流程N对应语句N,语句N在语言信息区中对应为功能码N和语句参数地址N,语句N在语句参数区中对应为语句参数N。
需要说明的是,上述图2的业务数据可以理解为主流程的业务数据,包括所有的业务流程的数据流。
图3是本申请实施例提供的一种第一业务数据示意图,参照图3,以业务数据为第一业务数据为例进行说明。假设第一业务数据中的事件调度列表包括事件1、事件2、事件3、业务流程地址1、业务流程地址2和业务流程地址3;第一业务数据中的的事件调度列表内所需的业务流程包括业务流程1、业务流程2和业务流程3,业务流程1对应语句1,语句1在语言信息区中对应为功能码1和语句参数地址1,语句1在语句参数区中对应为语句参数1;业务流程2对应语句2,语句2在语言信息区中对应为功能码2和语句参数地址2,语句2在语句参数区中对应为语句参数2;业务流程3对应语句3,语句3在语言信息区中对应为功能码3和语句参数地址3,语句3在语句参数区中对应为语句参数3。
需要说明的是,第一业务数据可以理解为包括多项业务的脚本数据,需要解析后才能得到对应的业务流程和执行顺序。可以理解为,业务流程1对应一项业务。业务流程2对应一项业务,业务流程3对应一项业务。
S102、通过业务驱动模块对第一业务数据进行解析处理,得到第一执行顺序和第一执行项数据,每一第一执行项数据对应一项业务执行。
业务驱动模块接收到应用层发送的第一业务数据后,对第一业务数据进行解析处理,得到第一顺序和第一执行项数据,每一第一执行项数据对应一项业务执行。需要说明的是,第一业务数据中包括多条第一执行项数据。第一执行项数据可以理解为与前述的业务流程相对应执行控制指令。业务驱动模块可以根据对应的业务流程的功能码和对应的语句参数地址,查询语句参数区中对应语句参数地址的语句参数。
业务启动模块接收到第一业务数据后,根据第一业务数据中对应的业务流程的功能码,在预存的功能执行表中查询对应的执行函数,调用执行函数,并根据第一执行项数据中对应的语句参数和所调用的执行函数得到对应的业务的第一执行项数据(即执行控制指令)。示例性的,第一业务数据对应的业务流程包括业务流程1、业务流程2和业务流程3。根据业务流程1中的功能码1在预存的功能执行表中查询对应的执行函数1,调用执行函数1,根据执行函数1和语句参数1得到对应的业务流程1对应的执行项数据1(即执行控制指令1)。根据业务流程2中的功能码2在预存的功能执行表中查询对应的执行函数2,调用执行函数2,根据执行函数2和语句参数2得到对应的业务流程2对应的执行项数据2(即执行控制指令2)。根据业务流程3中的功能码3在预存的功能执行表中查询对应的执行函数3,调用执行函数3,根据执行函数3和语句参数3得到对应的业务流程3对应的执行项数据3(即执行控制指令3)。
在应用层的业务驱动模块中,预先存储有对应的功能执行表。功能执行表内存储有预定义的执行函数,执行函数包括基础执行函数和特殊执行函数。特殊执行函数是针对特殊的执行模块所执行的特殊函数,前述的第一业务数据的业务流程对应的执行函数为特殊执行函数。通过将执行函数编译至固件的形式,预先存储在业务执行模块中。基础执行函数的具体内容如下表所示。
需要说明的是,一个执行函数可以操作一个功能模块或多个功能模块。
S103、通过业务驱动模块根据第一执行顺序将第一执行项数据依次传输至执行层的业务执行模块,业务执行模块根据接收到的第一执行项数据进行业务执行。
通过业务驱动模块根据第一执行顺序将第一执行项数据依次传输至执行层的业务执行模块。业务驱动模块每次发送仅发送一条第一执行项数据,待该条第一执行项数据执行完成后,再发送接着第二条第一执行项数据。示例性的,假设第一执行顺序是执行项数据1、执行项数据2和执行项数据3,则业务驱动模块先发送执行项数据1至业务执行模块,待接收到业务执行模块发送的业务结束中断后,再发送执行项数据2,以此类推,按照第一执行顺序持续发送对应的执行项数据。
需要说明的是,在业务驱动模块没有接收到新的第一业务数据(也可以叫第二业务数据)时,业务驱动模块会按照第一执行顺序持续循环发送对应的第一执行项数据。
业务执行模块接收到第一执行项数据(即执行控制指令)后,根据第一执行项数据进行对应业务的执行。需要说明的是,第一业务数据可以对应多条第一执行项数据,业务驱动模块按照第一执行顺序依次将第一执行项数据发送至业务执行模块。业务执行模块根据接收到的第一执行项数据进行对应的业务执行,相当于直接受控于业务驱动模块,避免与应用层交互而影响通信信占比。
上述,通过业务执行模块根据从业务驱动模块接收到的第一执行项数据进行业务执行,避免频繁与应用层进行交互,仅与同在执行层的业务驱动模块进行交互即可获取对应执行项数据,从而可以有序地进行业务的执行,减少了应用层的用户态和内核态的转换次数,进而提升了通信信占比,进而提高业务执行的工作效率,以及提高资源利用率。
在上述实施例的实施基础上,图4是本申请实施例提供的另一种基于时间片操作系统的控制方法的流程图,参照图4,该基于时间片操作系统的控制方法具体包括:
S201、启动业务执行。
通过业务驱动模块将对应的第一执行项数据传输至业务执行模块。需要说明的是,这时发送的一条第一执行项数据。
S202、业务执行。
业务执行模块接收到业务驱动模块发送的第一执行项数据后,进行业务的执行。
S203、发送业务结束中断。
当业务执行模块执行完一项业务后,发送业务结束中断至业务驱动模块,以提醒业务驱动模块已完成业务的执行。
S204、发起数据读中断。
业务驱动模块接收到业务执行模块发送的业务结束中断后,向驱动层发起数据读中断,以告知驱动层可以进行数据的读取。
S205、发起数据读请求。
驱动层接收到业务驱动模块发送的数据读中断后,向业务驱动模块发送数据读请求,以发起数据读取请求。需要说明的是,驱动层通过通信层与执行层进行交互,即驱动层通过通信层与业务驱动模块进行交互。
S206、搬运数据。
业务驱动模块接收到驱动层发送的数据读请求后,向驱动层发送执行过程数据。需要说明的是,驱动层通过通信层与执行层进行交互,即驱动层通过通信层与业务驱动模块进行交互。
S207、搬运数据完成。
驱动层将接收到的执行过程数据传输至应用层对应的存储模块中,直至数据搬运完成。
S208、通知数据读完成。
驱动层将接收到的执行过程数据传输至应用层对应的存储模块中,驱动层接收完成后,即数据搬运完成后,向应用层和业务驱动模块发送数据读完成通知,以通知应用层和业务驱动模块数据搬运已完成。
S209、恢复业务执行。
业务驱动模块接收到驱动层发送的数据读完成通知后,将下一条第一执行项数据发送至业务执行模块,以供业务执行模块执行下一项业务。
S210、再次业务执行。
业务执行模块根据从业务驱动模块接收到的新的第一执行项数据执行对应的业务,之后重复执行上述S201-S209的步骤。
S211、数据处理。
应用层根据实际需要对存储模块中的数据进行数据处理。
上述,通过驱动层和业务驱动模块的交互实现执行过程数据的自动搬运存储,对于应用层属于无感知的,同样减少了执行层与应用层的交互,进一步提升通信信占比和提高资源利用率。
在上述实施例的实施基础上,图5是本申请实施例提供的又一种基于时间片操作系统的控制方法的流程图,参照图5,该基于时间片操作系统的控制方法具体包括:
S301、当业务驱动模块接收到业务执行模块发送异常通知时,暂停向业务执行模块发送第一执行项数据,异常通知包括异常事件对应的事件标识。
应用层会预先生成对应的异常处理流程,异常处理流程包括异常业务流程。其中异常业务流程用于处理业务执行过程中出现的异常情况。应用层通过通信层将异常处理流程传输至执行层的业务驱动模块。业务驱动模块将异常处理流程存储至对应的存储单元中。通过将异常处理流程预先存储至业务驱动模块中,当发送异常时,可以根据业务驱动模块中存储的异常处理流程进行对应的异常处理,避免通知应用层才能进行异常处理而导致的异常处理效率低的问题,提高异常处理的工作效率。
图6是本申请实施例提供的一种异常处理流程示意图,参照图6,异常处理流程中包括流程控制所需变量、事件调度列表和异常业务流程,其中事件调度表为对应的突发事件的调度表,包括事件标识和业务流程地址。异常业务流程包括所有事件标识对应的异常业务流程,异常业务流程包括功能码、语句参数地址和语句参数。示例性的,事件调度表中的(异常)事件A对应的业务流程地址A,对应的异常业务流程为业务流程A,业务流程A包括对应的功能码A、语句参数地址A和语句参数A,依次类推,可以得到所有的预设的异常事件对应的事件标识、业务流程地址和异常业务流程。
需要说明的是,异常业务流程中,功能码和语句参数地址放置于语言信息区,语句参数放置于语句参数区。
当业务执行模块在执行业务的过程中发生异常事件事件时,业务执行模块发送异常通知给业务驱动模块。当业务驱动模块接收到业务执行模块发送的异常通知时,暂停向业务执行模块发送第一执行项数据,以启动对异常事件的处理。其中异常通知包括异常事件对应的事件标识。通过执行层中的业务执行模块对执行业务过程中的异常情况进行监控,当发送异常事件时向同在执行层的业务驱动模块发送异常通知即可,避免通知应用层才能进行异常处理而导致的异常处理效率低的问题,提高异常处理的工作效率。
S302、通过业务驱动模块根据事件标识对异常处理流程进行解析处理,得到对应的异常业务流程的异常项数据,事件标识与异常业务流程存在对照关系。
当业务驱动模块接收到业务执行模块发送的异常通知时,通过业务驱动模块根据异常通知获取异常事件对应事件标识。基于事件标识与异常业务流程存在对照关系,业务驱动模块可以根据事件标识对预存的异常处理流程进行解析处理,以获取该事件标识对应的异常业务流程的异常项数据,该异常项数据为进行异常处理的异常控制指令。示例性的,假设执行过程中发送了异常事件A,当业务驱动模块接收到业务执行模块发送的异常通知时,根据异常通知获取异常事件对应事件标识A,根据事件标识A对预存的异常处理流程进行解析处理,以获取该事件标识A对应的异常业务流程A,根据异常业务流程A中的功能码,在预存的功能执行表中查询对应的执行函数,调用执行函数,并根据异常业务流程A中对应的语句参数和所调用的执行函数得到对应异常项数据,即得到进行异常处理的异常控制指令。通过业务驱动模块存储预设的异常事件对应的异常处理流程,使得发生异常事件时,可以通过执行层(业务驱动模块和业务执行模块)自行解决,避免通知应用层才能进行异常处理而导致的异常处理效率低的问题,提高异常处理的工作效率。
S303、通过业务驱动模块将异常项数据发送至业务执行模块。
业务驱动模块解析得到对应的异常事件的事件标识对应的异常项数据之后,业务驱动模块将该异常项数据发送至业务驱动模块,以供业务驱动模块根据该异常项数据进行异常处理。
S304、业务执行项模块根据异常项数据进行异常处理,直至异常消除后,发送异常消除通知至业务驱动模块。
业务执行模块根据接收到的异常项数据进行异常处理,直到异常消除后,业务执行模块发送异常消除通知至业务驱动模块,以通知业务驱动模块异常情况已经消除。
需要说明的,当第一预设时间间隔内,业务驱动模块尚未接收到异常消除通知,业务驱动模块会重新发送对应的异常项数据给业务执行模块。业务执行模块接收到异常项数据后会重新进行异常处理,直至异常消除后,发送异常消除通知至业务驱动模块。
需要说明的是,当第二预设时间间隔内,业务驱动模块尚未接收到异常消除通知,业务驱动模块发送故障提醒信息至应用层,以供应用层获知当前存在无法消除的异常情况。第二预设时间间隔可以设置为第一预设时间的预设倍数。例如第一预设时间间隔时5分钟,第二预设时间间隔设置为第一预设间隔的3备,即15分钟。
S305、业务驱动模块接收到异常消除通知后,恢复向业务执行模块发送第一执行项数据。
业务驱动模块接收到异常消除通知后,恢复向业务执行模块发送第一执行项数据,以重新进行业务执行。
需要说明的是,发送的第一执行项数据为发送前述异常事件时的第一执行项数据,以重新执行该项业务。
S306、通过业务驱动模块向驱动层发起数据读中断。
当业务驱动模块恢复向业务执行模块发送第一执行项数据后,业务驱动模块向驱动层发起数据读中断,以告知驱动层可以读取对应的执行数据。
S307、驱动层根据数据读中断向业务驱动模块发送数据读请求。
S308、业务驱动模块根据数据读请求向驱动层发送异常过程数据。
驱动层接收到业务驱动模块发送的数据读中断后,向业务驱动模块发送数据读请求,以发起数据读取请求。需要说明的是,驱动层通过通信层与执行层进行交互,即驱动层通过通信层与业务驱动模块进行交互。
S309、驱动层将接收到的异常过程数据传输至应用层对应的存储模块中。
业务驱动模块接收到驱动层发送的数据读请求后,向驱动层发送异常过程数据。需要说明的是,驱动层通过通信层与执行层进行交互,即驱动层通过通信层与业务驱动模块进行交互。驱动层将接收到的异常过程数据传输至应用层对应的存储模块中,驱动层接收完成后,向应用层和业务驱动模块发送数据读完成通知,以通知应用层和业务驱动模块数据搬运已完成。
上述,通过业务驱动模块存储预设的异常事件对应的异常处理流程,使得发生异常事件时,可以通过执行层(业务驱动模块和业务执行模块)自行解决,避免通知应用层才能进行异常处理而导致的异常处理效率低的问题,提高异常处理的工作效率。此外,通过驱动层和业务驱动模块的交互实现异常过程数据的自动搬运存储,对于应用层属于无感知的,同样减少了执行层与应用层的交互,进一步提升通信信占比和提高资源利用率。
在上述实施例的实施基础上,图7是本申请实施例提供的另一种基于时间片操作系统的控制方法的流程图,参照图7,该基于时间片操作系统的控制方法具体包括:
S401、通过业务驱动模块接收应用层发送的第二业务数据。
在上述执行第一业务数据对应的第一执行项数据的过程中,当应用层有新的业务需求时,则通过应用层接收新的业务需求,根据该新的业务需求选择对应的执行项数据进行配置处理,得到第二业务数据。第二业务数据可以理解为与第一业务数据为同类型的数据,仅仅为对应的执行项数据(即业务流程)不相同。如图2所示,第一业务数据第一业务数据包括业务流程1、业务流程2和业务流程3。图8是本申请实施例提供的一种第二业务数据示意图,参照图8,以业务数据为第二业务数据为例进行说明。假设第二业务数据中的事件调度列表包括事件3、事件4、事件5、事件6、业务流程地址3、业务流程地址4、业务流程地址5、和业务流程地址6;第一业务数据中的的事件调度列表内所需的业务流程包括业务流程3、业务流程4、业务流程5和业务流程6,业务流程3对应语句3,语句3在语言信息区中对应为功能码3和语句参数地址3,语句3在语句参数区中对应为语句参数3;业务流程4对应语句4,语句4在语言信息区中对应为功能码4和语句参数地址4,语句4在语句参数区中对应为语句参数4;业务流程5对应语句5,语句5在语言信息区中对应为功能码5和语句参数地址5,语句5在语句参数区中对应为语句参数5;业务流程6对应语句6,语句6在语言信息区中对应为功能码6和语句参数地址6,语句6在语句参数区中对应为语句参数6。
应用层生成第二业务数据后,将第二业务数据发送至执行层的业务驱动模块。通过业务驱动模块接收应用层发送的第二业务数据。
S402、通过业务驱动模块将第二业务数据替换第一业务数据,并对第二业务数据进行解析处理,得到第二执行顺序和第二执行项数据。
当业务驱动模块接收到第二业务数据后,即接收到新的业务数据后,将第二业务数据替换原本的第一业务数据,并对第二业务数据进行解析处理,得到对应的第二执行顺序和第二执行项数据。需要说明的是,具体的解析过程与上述的S102相同,在此不作赘述。
S403、通过业务驱动模块根据第二执行顺序将第二执行项数据依次传输至业务执行模块。
通过业务驱动模块根据第二执行顺序将第二执行项数据依次传输至执行层的业务执行模块。业务驱动模块每次发送仅发送一条第二执行项数据,待该条第二执行项数据执行完成后,再发送接着第二条第二执行项数据。具体传输过程与上述S103相同,在此不作赘述。
S404、业务执行模块根据接收到的第二执行项数据进行业务执行。
业务执行模块接收到第二执行项数据后,根据第二执行项数据进行对应业务的执行。需要说明的是,第二业务数据可以对应有多条第二执行项数据,业务驱动模块按照第二执行顺序依次发送对应的第二执行项数据至业务执行模块。业务执行模块根据接收到的第二执行项数据进行对应的业务执行,相当于直接受控于业务驱动模块,避免与应用层交互而影响通信信占比。
上述,通过应用层有新的业务需求时,通过业务驱动模块对基于新的业务需求生成的第二业务数据进行解析处理,得到对应的第二执行项数据,通过业务执行模块根据从业务驱动模块接收到的第二执行项数据进行业务执行,避免频繁与应用层进行交互,仅与同在执行层的业务驱动模块进行交互即可获取对应执行项数据,从而可以有序地进行业务的执行,减少了应用层的用户态和内核态的转换次数,进而提升了通信信占比,进而提高业务执行的工作效率,以及提高资源利用率。
上述,通过采用预制的执行函数,动态调节脚本策略,在不同工作模式下通过动态脚本测能力调整执行函数的执行顺序和执行策略,实现对执行层策略的定制,简化了执行的交互,提高了时间片操作系统的执行工作效率,也提高了开发速度。
上述,由于执行层业务驱动模块具备流程控制特性,因而可以初始化定义流程后使用,基于业务驱动模块自主运行特点实现异步通信模式,降低对通信总线的占用,提高通信信占比。
上述,通过执行层的业务驱动模块对从应用层接收到的第一业务数据进行解析处理,得到第一执行顺序和第一执行项数据,并根据第一执行顺序将第一执行项数据依次传输至执行层的业务执行模块,业务执行模块根据接收到的第一执行项数据进行业务执行。采用上述技术手段,可以通过应用层仅发送一次第一业务数据,通过执行层的业务驱动模块对第一业务数据进行解析处理而得到对应的第一执行顺序和第一执行项数据,仅需要与应用层基于第一业务数据进行一次的交互,以此可避免频繁调用驱动层进行访问而导致的通信信占比较低的问题,提升通信信占比,提高资源利用率。
在上述实施例的基础上,图9为本申请实施例提供的一种基于时间片操作系统的控制系统的结构示意图。参考图9,本实施例提供的时间片操作系统的控制装置用于执行上述的基于时间片操作系统的控制方法,具体包括:应用层、驱动层、通信层和执行层,执行层包括业务驱动模块31和业务执行模块32。
应用层通过通信层与驱动层以及执行层连接,应用层用于接收业务需求和生成业务数据;驱动层通过通信层与执行层的业务驱动模块31连接,驱动层用于在业务执行过程中从执行层搬运对应的执行过程数据至应用层;业务驱动模块31与业务执行模块32连接,业务驱动模块31用于对从应用层接收到的业务数据进行解析处理得到执行项数据,并将执行项数据传输至业务执行模块32,业务执行模块32用于根据执行项数据进行业务执行。通过在执行层设置有业务驱动模块31,通过业务驱动模块31对从应用层接收到的业务流程进行解析处理得到对应的执行项数据,并将执行项数据传输至业务执行模块32执行,仅需要与应用层基于业务数据进行一次的交互即可实现执行层自动执行多项业务,以此可避免频繁调用驱动层进行访问而导致的通信信占比较低的问题,提升通信信占比,提高资源利用率。
应用层包括脚本配置模块10、工作管理模块11、脚本解析模块12、业务初始化模块13、操作模块14、交互展示模块15、事件执行模块16、事件分发模块17、第一发送模块18、数据处理模块19、业务数据存储模块20和存储数据分发模块21。脚本解析模块12与脚本配置模块10、工作管理模块11以及业务初始化模块13连接。脚本配置模块10用于配置基本流程、基本流程所需要的变量、执行中断或应用层事件的调度策略的脚本。脚本配置模块10配置的脚本可以使用xml文件或者json文件。脚本解析模块12用于将脚本配置模块10生成的脚本解析成业务驱动模块31能够识别的业务数据(即前述的第一业务数据或第二业务数据),业务数据流程结构如图2所示,包括流程控制所需变量、事件调度列表以及时间调度列表内所需的业务流程。业务初始化模块13与驱动层连接,以将业务数据传输至驱动层。
需要说明的是,存储数据分发模块21为应用层开辟一个独立线程实时读取数据FIFO空间,并将这些数据分发至具体的模块。
操作模块14用于接收用户输入的业务需求,交互展示模块15用于展示执行数据或交互显示。操作模块14、交互展示模块15与事件执行模块16连接,操作模块14用于将业务需求传输至事件执行模块16,事件执行模块16用于根据业务需求生成业务事件。事件执行模块16与第一发送模块18和事件分发模块17连接,用于通过第一发送模块18将业务事件发送至驱动层,并用于接收事件分发模块17传输的事件存储数据。
业务数据存储模块20与交互展示模块15、数据处理模块19、存储数据分发模块21以及驱动层连接,用于将由存储数据分发模块21接收到的存储数据(FIFO数据)发送至数据处理模块19和交互展示模块15。交互展示模块15用于对存储数据进行展示,存储数据可以是执行过程中的数据(包括执行过程数据和异常过程数据)。
驱动层包括数据转发模块22、第一数据接收模块23、事件存储发送模块24和数据存储发送模块25。数据转发模块22与应用层的业务初始化模块13以及第一发送模块18连接,用于将从业务初始化模块13接收到的业务数据或者从第一发送模块18接收到的业务事件发送至通信层。第一数据接收模块23与通信层连接,用于通过通信层接收执行过程中的数据(包括执行过程数据和异常过程数据)。第一数据接收模块23还与事件存储发送模块24、数据存储发送模块25以及业务数据存储模块20连接,用于将事件存储数据发送至事件存储发送模块24,将执行过程中的数据(包括执行过程数据和异常过程数据)发送至数据存储发送模块25,或者将事件存储数据(FIFO事件)以及执行过程中的数据(FIFO数据)发送至业务数据存储模块20。
需要说明的是,第一数据接收模块23用于接收执行层的数据,可以依据中断寄存器信息决定数据流向。接收到的执行层的数据包括有事件存储数据(FIFO事件)、FIFO数据和批量数据,其中事件数据为执行向驱动层发送的事件,事件参数数据量非常小(例如小于8字节)的数据写入事件FIFO空间中。FIFO数据为执行层向应用层发送的数据量较小的数据(例如小于1K),此类数据会依据FIFO数据格式写入数据FIFO空间。批量数据则内存开销较大,为提高性能,一般采用DMA方式读取并直接写入数据空间。上述设置可以降低应用层到驱动层的内核态切换操作。需要说明的是,事件FIFO空间和数据FIFO空间为驱动层的功能。
通信层包括业务配置模块26、第二数据接收模块27、命令接收模块28、数据发送模块29和命令发送模块30。业务配置模块26、第二数据接收模块27和命令接收模块28均与驱动层的数据转发模块22连接,用于接收驱动层的数据转发模块22发送的业务数据或业务事件,并将业务数据或业务事件发送至执行层的业务驱动模块31。数据发送模块29、命令发送模块30与执行层的业务驱动模块31以及驱动层的第一数据接收模块23连接,用于将执行层的事件存储数据以及执行过程中的数据(包括执行过程数据和异常过程数据)发送至第一数据接收模块23。
需要说明的是,通信层使用的通信总线可以为PCIe、USB和网络等高速通讯总线。
执行层包括业务驱动模块31和业务执行模块32,其中业务驱动模块31包括业务初始化子模块311、数据管理子模块312、事件调度子模块313、第一执行子模块314、执行函数表子模块315和执行控制子模块316;业务执行模块32包括执行中断子模块321和第二执行子模块322。业务驱动模块31中的业务初始化子模块311与通信层的业务配置模块26连接,以接收应用层发送的业务配置数据,数据管理子模块312与通信层的第二数据接收模块27连接,用于接收应用层发送的业务数据(即第一业务数据或第二业务数据)。数据管理子模块312还与业务初始化子模块311连接,用于接收初始化后的配置数据。事件调度子模块313与业务初始化子模块311、执行层的执行中断子模块321以及通信层的命令接收模块28连接,用于接收业务初始化后的配置数据、执行模块的执行中断和应用层的业务事件对应的命令。第一业务执行子模块与业务初始化子模块311、事件调度子模块313以及执行函数表子模块315连接,用于接收事件调度子模块313的调度,获取业务初始化子模块311进行初始化后的配置数据以及调用执行函数子模块中对应的执行函数。执行函数子模块与数据管理子模块312以及执行控制子模块316连接,执行函数子模块用于根据调用的执行函数和对应的语句参数得到对应的执行控制指令(即第一执行项数据、第二执行项数据或异常项数据),并将执行控制指令按照执行顺序依次发送至业务执行模块32中的第二执行子模块322。第二执行子模块322用于根据执行控制指令进行对应业务的执行。第二执行子模块322与执行中断子模块321连接,用于执行业务结束时或发生异常情况时通知执行中断子模块321,执行中断子模块321用于发送执行中断至事件调度子模块313。
执行函数子模块还与通信层的数据发送模块29以及命令发送模块30连接,用于将事件存储数据和执行过程中的数据(包括执行过程数据和异常过程数据)通过通信层搬运至驱动层,由驱动层存储至应用层业务数据存储模块20。
需要说明的是,业务驱动模块31可以使用单片机、DSP、或者FPGA内软核等模块实现。
需要说明的是,应用层脚本编译、脚本功能码(即业务流程对应的功能码)和执行业务的执行为一对一的功能,要求每一功能(业务)都有对应的脚本编译策略和(功能)执行函数,脚本功能码在编译初期确定,执行层的(功能)执行函数所需的参数,需要在应用层脚本编译时有针对应编译打包。通过对脚本功能码的预先确定,而对于执行函数则根据编译,使得执行过程更具针对性,提高业务执行的控制精确性和提高业务执行的控制可靠性。
上述,通过执行层的业务驱动模块对从应用层接收到的第一业务数据进行解析处理,得到第一执行顺序和第一执行项数据,并根据第一执行顺序将第一执行项数据依次传输至执行层的业务执行模块,业务执行模块根据接收到的第一执行项数据进行业务执行。采用上述技术手段,可以通过应用层仅发送一次第一业务数据,通过执行层的业务驱动模块对第一业务数据进行解析处理而得到对应的第一执行顺序和第一执行项数据,仅需要与应用层基于第一业务数据进行一次的交互,以此可避免频繁调用驱动层进行访问而导致的通信信占比较低的问题,提升通信信占比,提高资源利用率。
本申请实施例提供的基于时间片操作系统的控制系统可以用于执行上述实施例提供的基于时间片操作系统的控制方法,具备相应的功能和有益效果。
本申请实施例提供了一种基于时间片操作系统的控制设备,参照图10,该基于时间片操作系统的控制设备包括:处理器31、存储器32、通信模块33、输入装置34及输出装置35。该基于时间片操作系统的控制设备中处理器的数量可以是一个或者多个,该基于时间片操作系统的控制设备中的存储器的数量可以是一个或者多个。该基于时间片操作系统的控制设备的处理器、存储器、通信模块、输入装置及输出装置可以通过总线或者其他方式连接。
存储器32作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请任意实施例所述的基于时间片操作系统的控制方法对应的程序指令/模块(例如,基于时间片操作系统的控制系统中的应用层、驱动层、通信层和执行层)。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件或其他非易失性固态存储器件。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
通信模块33用于进行数据传输。
处理器31通过运行存储在存储器中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的基于时间片操作系统的控制方法。
输入装置34可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置35可包括显示屏等显示设备。
上述提供的基于时间片操作系统的控制设备可用于执行上述实施例提供的基于时间片操作系统的控制方法,具备相应的功能和有益效果。
本申请实施例还提供一种存储计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种基于时间片操作系统的控制方法,该基于时间片操作系统的控制方法包括:通过执行层的业务驱动模块接收应用层发送的第一业务数据;通过所述业务驱动模块对所述第一业务数据进行解析处理,得到第一执行顺序和第一执行项数据,每一第一执行项数据对应一项业务执行;通过所述业务驱动模块根据所述第一执行顺序将所述第一执行项数据依次传输至执行层的业务执行模块,所述业务执行模块根据接收到的所述第一执行项数据进行业务执行。
存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统。第二计算机系统可以提供程序指令给第一计算机用于执行。术语“存储介质”可以包括驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
当然,本申请实施例所提供的一种存储计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的基于时间片操作系统的控制方法,还可以执行本申请任意实施例所提供的基于时间片操作系统的控制方法中的相关操作。
上述实施例中提供的时间片操作系统的控制装置、存储介质及基于时间片操作系统的控制设备可执行本申请任意实施例所提供的基于时间片操作系统的控制方法,未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的基于时间片操作系统的控制方法。
上述仅为本申请的较佳实施例及所运用的技术原理。本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行的各种明显变化、重新调整及替代均不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由权利要求的范围决定。
Claims (10)
1.一种基于时间片操作系统的控制方法,其特征在于,包括:
通过执行层的业务驱动模块接收应用层发送的第一业务数据;
通过所述业务驱动模块对所述第一业务数据进行解析处理,得到第一执行顺序和第一执行项数据,每一第一执行项数据对应一项业务执行;
通过所述业务驱动模块根据所述第一执行顺序将所述第一执行项数据依次传输至执行层的业务执行模块,所述业务执行模块根据接收到的所述第一执行项数据进行业务执行。
2.根据权利要求1所述的方法,其特征在于,所述通过执行层的业务驱动模块接收应用层发送的第一业务数据之后,包括:
通过所述业务驱动模块接收应用层发送的第二业务数据;
通过所述业务驱动模块将所述第二业务数据替换所述第一业务数据,并对所述第二业务数据进行解析处理,得到第二执行顺序和第二执行项数据;
通过所述业务驱动模块根据所述第二执行顺序将所述第二执行项数据依次传输至所述业务执行模块;
所述业务执行模块根据接收到的所述第二执行项数据进行业务执行。
3.根据权利要求1所述的方法,其特征在于,所述通过所述业务驱动模块根据所述第一执行顺序将所述第一执行项数据依次传输至执行层的业务执行模块,所述业务执行模块根据接收到的所述第一执行项数据进行业务执行,包括:
通过所述业务驱动模块将对应的第一执行项数据传输至所述业务执行模块;
当所述业务执行模块执行完一项业务后,发送业务结束中断至所述业务驱动模块;
所述业务驱动模块接收到所述业务结束中断后,向驱动层发起数据读中断;
所述驱动层接收到所述数据读中断后,向所述业务驱动模块发送数据读请求;
所述业务驱动模块接收到所述数据读请求后,向所述驱动层发送执行过程数据;
所述驱动层将接收到的执行过程数据传输至应用层对应的存储模块中,所述驱动层接收完成后,向所述应用层和所述业务驱动模块发送数据读完成通知;
所述业务驱动模块接收到所述数据读完成通知后,将下一条第一执行项数据发送至所述业务执行模块;
所述业务执行模块根据所述第一执行项数据执行对应的业务。
4.根据权利要求1所述的方法,其特征在于,所述通过执行层的业务驱动模块接收应用层发送的第一业务数据之前,包括:
通过应用层接收业务需求,并根据所述业务需求选择对应的执行项数据进行配置处理,得到所述第一业务数据。
5.根据权利要求1所述的方法,其特征在于,所述通过执行层的业务驱动模块接收应用层发送的第一业务数据之前,包括:
将异常处理流程发送至所述业务驱动模块中进行存储,所述异常处理流程包括异常业务流程。
6.根据权利要求5所述的方法,其特征在于,所述通过所述业务驱动模块根据所述第一执行顺序将所述第一执行项数据依次传输给执行层的业务执行模块,所述业务执行模块根据接收到的所述第一执行项数据进行业务执行,包括:
当所述业务驱动模块接收到所述业务执行模块发送异常通知时,暂停向所述业务执行模块发送第一执行项数据,所述异常通知包括异常事件对应的事件标识;
通过所述业务驱动模块根据所述事件标识对所述异常处理流程进行解析处理,得到对应的异常业务流程的异常项数据,所述事件标识与异常业务流程存在对照关系;
通过所述业务驱动模块将所述异常项数据发送至所述业务执行模块;
所述业务执行项模块根据所述异常项数据进行异常处理,直至异常消除后,发送异常消除通知至所述业务驱动模块;
所述业务驱动模块接收到所述异常消除通知后,恢复向所述业务执行模块发送第一执行项数据。
7.根据权利要求6所述的方法,其特征在于,所述业务驱动模块接收到所述异常消除通知后,恢复向所述业务执行模块发送第一执行项数据之后,包括:
通过所述业务驱动模块向所述驱动层发起数据读中断;
所述驱动层根据所述数据读中断向所述业务驱动模块发送数据读请求;
所述业务驱动模块根据所述数据读请求向所述驱动层发送异常过程数据;
所述驱动层将接收到的异常过程数据传输至应用层对应的存储模块中。
8.一种基于时间片操作系统的控制系统,其特征在于,用于执行权利要求1-7任一所述的方法,包括应用层、驱动层、通信层和执行层,所述执行层包括业务驱动模块和业务执行模块;
所述应用层通过所述通信层与所述驱动层以及所述执行层连接,所述应用层用于接收业务需求和生成业务流程;
所述驱动层通过所述通信层与所述执行层的业务驱动模块连接,所述驱动层用于在业务执行过程中从所述执行层搬运对应的执行过程数据至所述应用层;
所述业务驱动模块与所述业务执行模块连接,所述业务驱动模块用于对从应用层接收到的业务流程进行解析处理得到执行项数据,并将执行项数据传输至业务执行模块,所述业务执行模块用于根据执行项数据进行业务执行。
9.一种基于时间片操作系统的控制设备,其特征在于,包括:
存储器以及一个或多个处理器;
所述存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7任一所述的方法。
10.一种存储计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由处理器执行时用于执行如权利要求1-7任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311095744.1A CN117215648B (zh) | 2023-08-28 | 基于时间片操作系统的控制方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311095744.1A CN117215648B (zh) | 2023-08-28 | 基于时间片操作系统的控制方法、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117215648A true CN117215648A (zh) | 2023-12-12 |
CN117215648B CN117215648B (zh) | 2024-04-19 |
Family
ID=
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105701063A (zh) * | 2014-11-26 | 2016-06-22 | 马鞍山森格电子科技有限公司 | 一种基于linux操作系统的无纸记录仪 |
CN109240697A (zh) * | 2017-05-22 | 2019-01-18 | 腾讯科技(深圳)有限公司 | 调用处理方法及装置、存储介质 |
CN110737584A (zh) * | 2019-08-30 | 2020-01-31 | 深圳壹账通智能科技有限公司 | 基于区块链的业务数据测试方法、装置及计算机设备 |
CN113207194A (zh) * | 2021-04-21 | 2021-08-03 | 中国人民解放军国防科技大学 | 一种基于麒麟移动操作系统的多模通信实现方法及装置 |
CN114327628A (zh) * | 2021-12-28 | 2022-04-12 | 深圳市汇川技术股份有限公司 | 分层控制方法、系统、终端设备及存储介质 |
CN114338678A (zh) * | 2022-03-10 | 2022-04-12 | 国汽智控(北京)科技有限公司 | 一种智能网联汽车操作系统应用层切换方法及装置 |
CN114554481A (zh) * | 2020-11-25 | 2022-05-27 | 大唐移动通信设备有限公司 | 一种数据处理方法、装置及基站 |
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105701063A (zh) * | 2014-11-26 | 2016-06-22 | 马鞍山森格电子科技有限公司 | 一种基于linux操作系统的无纸记录仪 |
CN109240697A (zh) * | 2017-05-22 | 2019-01-18 | 腾讯科技(深圳)有限公司 | 调用处理方法及装置、存储介质 |
CN110737584A (zh) * | 2019-08-30 | 2020-01-31 | 深圳壹账通智能科技有限公司 | 基于区块链的业务数据测试方法、装置及计算机设备 |
CN114554481A (zh) * | 2020-11-25 | 2022-05-27 | 大唐移动通信设备有限公司 | 一种数据处理方法、装置及基站 |
CN113207194A (zh) * | 2021-04-21 | 2021-08-03 | 中国人民解放军国防科技大学 | 一种基于麒麟移动操作系统的多模通信实现方法及装置 |
CN114327628A (zh) * | 2021-12-28 | 2022-04-12 | 深圳市汇川技术股份有限公司 | 分层控制方法、系统、终端设备及存储介质 |
CN114338678A (zh) * | 2022-03-10 | 2022-04-12 | 国汽智控(北京)科技有限公司 | 一种智能网联汽车操作系统应用层切换方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11294714B2 (en) | Method and apparatus for scheduling task, device and medium | |
US7774781B2 (en) | Storage subsystem access prioritization by system process and foreground application identification | |
US20070143761A1 (en) | Task scheduler system and method for managing tasks in an embedded system without a real time operating system | |
KR100700951B1 (ko) | 이동통신 시스템에서 다중 작업 관리를 위한 장치 및 방법 | |
US6968411B2 (en) | Interrupt processing apparatus, system, and method | |
EP1685486B1 (en) | Interrupt handling in an embedded multi-threaded processor to avoid priority inversion and maintain real-time operation | |
CN102541630B (zh) | 计算机处理器中线程间数据通信的方法和系统 | |
CN102567090B (zh) | 在计算机处理器中创建执行线程的方法和系统 | |
US8447346B2 (en) | SDR terminal and reconfiguration method | |
CN102708006A (zh) | 处理优化负载调整 | |
CN107391274A (zh) | 离线消息的处理方法及装置 | |
CN117215648B (zh) | 基于时间片操作系统的控制方法、系统、设备及存储介质 | |
CN117215648A (zh) | 基于时间片操作系统的控制方法、系统、设备及存储介质 | |
CN112700515A (zh) | 动画播放方法和装置、存储介质、电子设备 | |
CN109144676A (zh) | 一种应用程序的自启动检测方法、装置及服务器 | |
CN110673958A (zh) | 调频方法、调频装置、存储介质与电子设备 | |
JP5678347B2 (ja) | Itシステムの構成方法、そのコンピュータプログラムおよびitシステム | |
TWI815098B (zh) | Web請求處理方法、裝置、電子設備以及內儲程式之電腦可讀取記錄媒體 | |
CN113688343A (zh) | 一种页面权限控制方法、装置、设备及可读存储介质 | |
CN106484536B (zh) | 一种io调度方法、装置和设备 | |
CN101866302B (zh) | 一种检验应用模式适应性的装置及方法 | |
CN111026528B (zh) | 一种高性能大规模染色阵列程序调度分发系统 | |
KR20130094889A (ko) | 실시간 운영체제의 태스크 스케줄링 방법 | |
CN114911597A (zh) | 一种运行系统的切换方法及计算设备 | |
JPH1196025A (ja) | データ処理方法、記録媒体及びデータ処理装置 |
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 | ||
GR01 | Patent grant |