CN113688026A - 一种数据模拟仿真方法、装置、设备及存储介质 - Google Patents
一种数据模拟仿真方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113688026A CN113688026A CN202111163202.4A CN202111163202A CN113688026A CN 113688026 A CN113688026 A CN 113688026A CN 202111163202 A CN202111163202 A CN 202111163202A CN 113688026 A CN113688026 A CN 113688026A
- Authority
- CN
- China
- Prior art keywords
- task
- cpu core
- simulation
- running
- configuration
- 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
- 238000004088 simulation Methods 0.000 title claims abstract description 127
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000013507 mapping Methods 0.000 claims abstract description 75
- 230000004913 activation Effects 0.000 claims description 76
- 238000001994 activation Methods 0.000 claims description 76
- 230000000007 visual effect Effects 0.000 claims description 6
- 230000003213 activating effect Effects 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000011161 development Methods 0.000 abstract description 9
- 238000012986 modification Methods 0.000 abstract description 5
- 230000008569 process Effects 0.000 description 11
- 238000012360 testing method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3457—Performance evaluation by simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3013—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3024—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及一种数据模拟仿真方法、装置、设备及存储介质,该方法包括:获取操作系统(OS)模块的配置参数和运行实体与任务的映射关系;配置参数包括多个CPU核心中各CPU核心对应的任务信息;配置多个运行实体中各运行实体的执行时间;基于各CPU核心对应的任务信息、各运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真,得到仿真结果;仿真结果包括操作系统运行时各CPU核心的负载信息。本申请基于AUTOSAR工具链中的BSW配置工具,在OS模块的配置阶段,即可对配置参数进行模拟仿真,这对开发人员在配置阶段提供了极大的帮助,可以省去后续片上执行再修改配置参数的频率,从而可以极大地提高开发效率。
Description
技术领域
本申请涉及汽车电子技术领域,特别涉及一种数据模拟仿真方法、装置、设备及存储介质。
背景技术
汽车开放系统架构(Automotive Open System Architecture,AUTOSAR)旨在为汽车电子软件产业建立一个开放的标准和基础软件架构。它通过定义一套支持分布式的、功能驱动的汽车电子软件开发方法和ECU上的软件架构标准化方案,提高软件复用度,降低开发成本。AUTOSAR提倡“在标准上合作,在实现上竞争”的原则,其核心思想在于“统一标准、分散实现、集中配置”。AUTOSAR的广泛推行使得汽车OEM拥有更灵活和更大的软件采购控制权,因为软件系统的标准化和开放化将使更多的软件和工具开发商进入汽车电子行业,从而使OEM在采购软件时有更多的选择,同时软件的质量监督也会相应提高,有利于提高OEM的产品质量。
自AUTOSAR成立以来,从半导体工业、零部件供应商、工具和软件厂商到汽车制造厂商本身,整个汽车产业内的价值体系都给与了积极的推动。为了迎合未来汽车智能化/网联化的需求,AUTOSAR联盟推出了一个全新的平台—自适应AUTOSAR平台(AUTOSARAdaptive Platform,AP),并将原有平台更名为经典AUTOSAR平台(AUTOSAR ClassicPlatform,CP)。
CP AUTOSAR的规范主要包括分层架构、方法论和应用接口三部分内容。而在方法论中又提出了一系列开发工具,可以被称为CP AUTOSAR工具链。在BSW配置阶段需要开发人员通过BSW配置工具(工具链中的一部分)配置操作系统(OS)模块的具体参数,并且在RTE配置阶段将操作系统(OS)模块的任务(Task)与软件组件运行实体(Runnable Entity,RE)进行映射(RE To Task Mapping)。
当前阶段,开发人员会将配置好的参数通过工具生成代码放到片上执行测试,从而真实执行情况评估。然而,对于CP AUTOSAR基础软件中的操作系统模块而言,由于影响运行的因素极多,在达到一定复杂度以后,开发人员将很难评估系统的运行情况,并且在最终片上测试时发现问题很容易造成返工。
发明内容
本申请实施例提供了一种数据模拟仿真方法、装置、设备及存储介质,实现对操作系统(OS)模块中各CPU核心对各自分配到的任务调用运行实体的仿真测试,基于AUTOSAR工具链对OS模块的配置参数进行模拟仿真,从而得到操作系统运行时每个CPU核心的负载信息,这对开发人员在配置阶段提供了极大的帮助,也省去了后续片上执行再修改配置参数的频率,可以极大地提高开发效率。
一方面,本申请实施例提供了一种数据模拟仿真方法,包括:
获取操作系统(OS)模块的配置参数和运行实体与任务的映射关系;配置参数包括多个CPU核心中各CPU核心对应的任务信息;
配置多个运行实体中各运行实体的执行时间;
基于各CPU核心对应的任务信息、各运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真,得到仿真结果;仿真结果包括操作系统运行时各CPU核心的负载信息。
可选的,任务信息包括各CPU核心对应的所有任务中各任务的激活时间;基于各CPU核心对应的任务信息、各运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真,包括:
基于各任务的激活时间,生成各CPU核心对应的任务激活时间表;
基于各CPU核心对应的任务激活时间表、各运行实体的执行时间以及映射关系进行模拟仿真。
可选的,基于各CPU核心对应的任务激活时间表、各运行实体的执行时间以及映射关系进行模拟仿真,包括:
基于各运行实体的执行时间和映射关系,确定各任务的执行时长;
基于任务激活时间表,对各任务的执行时长进行监控;
当各任务的执行时长超过预设时长时,生成第一提示信息。
可选的,任务信息包括各CPU核心对应的所有任务中各任务的最大激活次数;基于各CPU核心对应的任务信息、各运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真,包括:
基于各任务的最大激活次数进行模拟仿真。
可选的,基于各任务的最大激活次数进行模拟仿真,包括:
对各任务的激活次数进行计数;
当各任务的激活次数的计数达到对应的最大激活次数时,生成第二提示信息。
可选的,任务信息包括各CPU核心对应的所有任务中各任务的优先级;基于各CPU核心对应的任务信息、各运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真,包括:
基于各任务的优先级以及任务激活时间表进行模拟仿真。
可选的,基于各任务的优先级以及任务激活时间表进行模拟仿真,包括:
基于任务激活时间表,若当前正在执行的第一任务的优先级低于当前所要激活的第二任务的优先级,则中断第一任务,激活并执行第二任务。
可选的,获取操作系统(OS)模块的配置参数和运行实体与任务的映射关系,包括:
通过BSW配置工具对操作系统模块进行配置,得到配置文件;
通过RTE配置工具进行任务与运行实体的映射,得到映射文件;
分别对配置文件和映射文件进行解析,得到配置参数和映射关系。
可选的,方法还包括:
将仿真结果以可视化方式进行显示。
另一方面,本申请实施例提供了一种数据模拟仿真装置,包括:
获取模块,被配置为执行获取操作系统(OS)模块的配置参数和运行实体与任务的映射关系;配置参数包括多个CPU核心中各CPU核心对应的任务信息;
配置模块,被配置为执行配置多个运行实体中各运行实体的执行时间;
模拟仿真模块,被配置为执行基于各CPU核心对应的任务信息、各运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真,得到仿真结果;仿真结果包括操作系统运行时各CPU核心的负载信息。
另一方面,本申请实施例提供了一种设备,设备包括处理器和存储器,存储器中存储有至少一条指令或至少一段程序,至少一条指令或至少一段程序由处理器加载并执行上述的数据模拟仿真方法。
另一方面,本申请实施例提供了一种计算机存储介质,存储介质中存储有至少一条指令或至少一段程序,至少一条指令或至少一段程序由处理器加载并执行以实现上述的数据模拟仿真方法。
本申请实施例提供的一种数据模拟仿真方法、装置、设备及存储介质具有如下有益效果:
通过获取操作系统(OS)模块的配置参数和运行实体与任务的映射关系;配置参数包括多个CPU核心中各CPU核心对应的任务信息;配置多个运行实体中各运行实体的执行时间;基于各CPU核心对应的任务信息、各运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真,得到仿真结果;仿真结果包括操作系统运行时各CPU核心的负载信息。本申请基于AUTOSAR工具链中的BSW配置工具,在OS模块的配置阶段,即可对配置参数进行模拟仿真,这对开发人员在配置阶段提供了极大的帮助,可以省去后续片上执行再修改配置参数的频率,从而可以极大地提高开发效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种数据模拟仿真方法的流程示意图;
图2是本申请实施例提供的一种获取操作系统(OS)模块的配置参数和运行实体与任务的映射关系的流程示意图;
图3是本申请实施例提供的第一种基于各CPU核心对应的任务信息、运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真的流程示意图;
图4是本申请实施例提供的一种基于各CPU核心对应的任务激活时间表、运行实体的执行时间以及映射关系进行模拟仿真的流程示意图;
图5是本申请实施例提供的一种基于各任务的最大激活次数进行模拟仿真的流程示意图;
图6是本申请实施例提供的一种数据模拟仿真装置的结构示意图;
图7是本申请实施例提供的一种数据模拟仿真方法的服务器的硬件结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
CP AUTOSAR平台基础软件模块多达90个,操作系统模块正是其中的核心模块之一,该模块的功能复杂程度非常高,开发人员配置的数据也极为复杂。在AUTOSAR的规范中,单个BSW模块(module)是由多个容器(Container)与大量配置参数(Parameter)组成。而单个容器又可能由多个子容器(SubContainer)和大量配置参数(Parameter)组成。其中,操作系统(OS)模块的重要配置参数可以按照功能划分如下:
任务激活:操作系统有两种任务激活方式,即OSAlarm容器与OSScheduleTable容器。当OSAlarm容器中的子容器OSAlarmAutoStart配置了OsAlarmAlarmTime、OsAlarmAutostartType、OsAlarmCycleTime三个参数时,即可确定自启动时间、自启动类型、启动周期等参数。OSScheduleTable容器则是操作系统中各任务的调度表,操作系统根据调度表启动任务即可。
任务定义:OSTask容器。OSTask容器中的OsTaskActivation参数定义了该任务的最大激活次数。OsTaskPriority参数则定义了该任务的优先级,在支持抢占式任务调度策略的操作系统中,高优先级任务可以中断低优先级任务,而低优先级任务则只能等待高优先级任务执行完毕才能执行。通过OsApplicationCoreRef参数则可以将该任务映射到CPU中的一个核心。
在AUTOSAR的方法论中,运行实体(Runnable Entity,RE)是在软件组件设计阶段就已经定义好的。运行实体是用户程序的最小划分,操作系统任务是运行实体的载体。也就是说,操作系统无法直接调度运行实体,而是需要通过将运行实体映射到不同的任务中,通过对任务进行调度进而实现各个特定的时刻执行特定的运行实体。所以需要完成运行实体到操作系统任务的映射(RE To Task Mapping)。
从以上简述可以看出,开发人员在配置操作系统(OS)模块的参数时,需要考虑各方面的因素,如优先级、最大激活次数、执行核心、执行计划等。当操作系统达到一定复杂度时,如任务量大、抢占机制导致切换频繁等,开发人员将很难评估配置的操作系统参数是否是最优配置。
针对传统操作系统配置需要片上执行测试,本申请实施例提供了一种数据模拟仿真方法,基于BSW配置工具,集成在CP AUTOSAR工具链中,在使用CP AUTOSAR的BSW配置工具配置完操作系统(OS)模块的参数时,即可对操作系统(OS)模块的配置参数进行模拟仿真,如此,可以让开发人员及时了解配置参数的最终执行情况,可以极大提升开发人员对操作系统(OS)模块的开发效率。
以下介绍本申请一种数据模拟仿真方法的具体实施例,图1是本申请实施例提供的一种数据模拟仿真方法的流程示意图,本说明书提供了如实施例或流程图的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的如图1所示,该方法可以包括:
在步骤S101中,获取操作系统(OS)模块的配置参数和运行实体与任务的映射关系;配置参数包括多个CPU核心中各CPU核心对应的任务信息。
本申请实施例中,操作系统(OS)模块的配置参数和运行实体与任务的映射关系是后续进行模拟仿真的依据。
操作系统(OS)模块的配置参数可以是通过BSW配置工具的OS模块配置界面对OS模块进行参数配置得到的,并且该配置参数是经初步校验无误的。其中,配置参数包括多个CPU核心中各CPU核心对应的任务信息,各CPU核心对应的任务信息即,使用BSW配置工具对OS模块进行参数时,通过OsApplicationCoreRef参数映射到该CPU核心上的任务信息。该任务信息可以包括任务的定义参数、激活时间、最大激活次数等。
其中,BSW配置工具是CP AUTOSAR工具链的一部分,支持对AUTOSAR分层中的基础软件模块进行可视化配置,配置验证和代码生成的功能。
运行实体与任务的映射关系,可以是通过RTE配置工具的Task Mapping界面做好任务与运行实体的映射后得到的。
其中,RTE生成工具是CP AUTOSAR工具链的一部分,支持将OS模块中的任务与软件组件中的运行实体进行映射。也支持根据配置自动生成RTE代码。
本申请实施例中,通过AUTOSAR元模型的反序列化组件,该组件由底层基础组件提供,该组件用于将符合AUTOSAR规范的ARXML文件解析为工具代码实现中的AUTOSAR模型实例。其中,ARXML文件作为通用配置文件或数据库文件,在AUTOSAR架构下的数据传输和存储中起到关键作用。
其中,底层基础组件是CP AUTOSAR工具链的一部分,实现了AUTOSAR元模型,支持对AUTOSAR元模型的序列化与反序列化,提供元模型的验证引擎。
一种可选的实施方式中,上述获取操作系统(OS)模块的配置参数和运行实体与任务的映射关系可以包括如图2所示的以下步骤:
在步骤S201中,通过BSW配置工具对操作系统模块进行配置,得到配置文件。
在步骤S203中,通过RTE配置工具进行任务与运行实体的映射,得到映射文件。
在步骤S205中,分别对配置文件和映射文件进行解析,得到配置参数和映射关系。
具体的,配置文件和映射文件均为ARXML文件,通过调用AUTOSAR元模型的反序列化组件,对配置文件和映射文件进行解析,从中提取出OS模块的配置参数和运行实体与任务的映射关系。
在步骤S103中,配置多个运行实体中各运行实体的执行时间。
本申请实施例中,对多个运行实体中各运行实体的执行时间进行配置。运行实体是用户程序的最小划分,相对来说,运行实体的执行时间是可以计算的。
一种可选的实施方式中,开发人员可以通过系数配置界面,对工具解析出的所有运行实体实际执行所需的时间进行配置。从而,使得后续可以通过任务与运行实体的映射关系,统计出每个任务执行所需要的总时间,作为后续模拟仿真的依据。
在步骤S105中,基于各CPU核心对应的任务信息、各运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真,得到仿真结果;仿真结果包括操作系统运行时各CPU核心的负载信息。
本申请实施例中,基于各CPU核心对应的任务信息、各运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真,最终以CPU核心为统计维度,得到的仿真结果包括操作系统运行时各CPU核心的负载信息。可选的,负载信息可以包括预设时间段内的平均负载率和最高率。
一种可选的实施方式中,任务信息可以包括各CPU核心对应的所有任务中各任务的激活时间;则,上述步骤S103中,基于各CPU核心对应的任务信息、运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真可以包括图3中的以下步骤:
在步骤S301中,基于各任务的激活时间,生成各CPU核心对应的任务激活时间表。
在步骤S303中,基于各CPU核心对应的任务激活时间表、运行实体的执行时间以及映射关系进行模拟仿真。
具体的,任务激活时间表作为后续模拟过程中各CPU执行任务的依据。任务激活时间表包括各任务的激活时间,该激活时间可以是通过配置的参数OsAlarmAlarmTime确定的,此外任务信息还可以包括各任务的自启动类型、启动周期等参数,对应的,可以分别通过OsAlarmAutostartType、OsAlarmCycleTime来进行配置。
进一步可选的实施方式中,上述步骤303中,基于各CPU核心对应的任务激活时间表、运行实体的执行时间以及映射关系进行模拟仿真,可以包括图4中的以下步骤:
在步骤S401中,基于各运行实体的执行时间和运行实体与任务的映射关系,确定各任务的执行时长。
在步骤S403中,基于任务激活时间表,对各任务的执行时长进行监控。
在步骤S405中,当各任务的执行时长超过预设时长时,生成第一提示信息。
具体的,在模拟仿真的过程中,由于各运行实体的执行时间预先由开发人员进行计算和配置,因此根据运行实体与任务的映射关系,可以确定出各任务对应的运行实体,从而根据各任务对应的运行实体所需执行的时间,即可确定出各任务的执行时长。在模拟仿真的过程中,可以对各任务的执行时长进行监控,即当各任务的执行时长超过预设时长时,生成第一提示信息,该第一提示信息用于提示当前任务执行时间过长,方便开发人员及时进行处理。如此,可以及时发现错误的配置参数,可以避免操作系统各CPU核心产生任务调度混乱的场景。
一种可选的实施方式中,任务信息可以包括各CPU核心对应的所有任务中各任务的最大激活次数;则,上述步骤S103中,基于各CPU核心对应的任务信息、运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真,可以包括:
基于各任务的最大激活次数进行模拟仿真。
进一步可选的实施方式中,上述基于各任务的最大激活次数进行模拟仿真,可以包括图5所示的以下步骤:
在步骤S501中,对各任务的激活次数进行计数。
在步骤S503中,当对各任务的激活次数的计数达到对应的最大激活次数时,生成第二提示信息。
具体的,各任务的最大激活次数可以是通过OsTaskActivation参数来定义的。在模拟仿真的过程中,可以以CPU核心为维度,对同一个任务进行激活次数统计。当对各任务的激活次数的计数达到对应的最大激活次数时,生成第二提示信息。该第二提示信息用于提示单个任务达到定义的最大激活次数,提示开发人员及时进行处理。
一种可选的实施方式中,任务信息包括各CPU核心对应的所有任务中各任务的优先级;则,上述步骤S103中,基于各CPU核心对应的任务信息、运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真,包括:
基于各任务的优先级以及任务激活时间表进行模拟仿真。
具体的,基于各任务的优先级,以及任务激活时间表,可以模拟任务中断切换的场景。
进一步可选的实施方式中,上述基于各任务的优先级以及任务激活时间表进行模拟仿真,可以包括:
基于任务激活时间表,若当前正在执行的第一任务的优先级低于当前所要激活的第二任务的优先级,则中断第一任务,激活并执行第二任务。
具体的,各任务的优先级可以通过OsTaskPriority参数来定义。在支持抢占式任务调度策略的操作系统中,高优先级任务可以中断低优先级任务,而低优先级任务则只能等待高优先级任务执行完毕才能执行。因此,在任一CPU核心中,若当前正在执行的第一任务的优先级低于当前所要激活的第二任务的优先级,则中断第一任务,激活并执行第二任务。
一种可选的实施方式中,本申请实施例提供的数据模拟仿真方法还可以包括以下步骤:
将仿真结果以可视化方式进行显示。
具体的,对模拟仿真过程中产生的数据进行整理,形成可视化的图表报告,展示当前仿真进度;在仿真完毕后,可以基于仿真结果形成仿真情况图表统计视图,如此,可以让开发人员很直观的看到当前配置下操作系统运行时的CPU各核心的负载信息,比如平均负载率和最高负载率。
综上,本申请实施例提供的一种数据模拟仿真方法、装置、设备及存储介质,实现对操作系统(OS)模块中各CPU核心对各自分配到的任务调用运行实体的仿真测试,基于AUTOSAR工具链对OS模块的配置参数进行模拟仿真,从而得到操作系统运行时每个CPU核心的负载信息,这对开发人员在配置阶段提供了极大的帮助,也省去了后续片上执行再修改配置参数的频率,可以极大地提高开发效率。
本申请实施例还提供了一种数据模拟仿真装置,图6是本申请实施例提供的一种数据模拟仿真装置的结构示意图,如图6所示,该装置包括:
获取模块601,被配置为执行获取操作系统(OS)模块的配置参数和运行实体与任务的映射关系;配置参数包括多个CPU核心中各CPU核心对应的任务信息;
配置模块602,被配置为执行配置多个运行实体中各运行实体的执行时间;
模拟仿真模块603,被配置为执行基于各CPU核心对应的任务信息、各运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真,得到仿真结果;仿真结果包括操作系统运行时各CPU核心的负载信息。
可选的,任务信息包括各CPU核心对应的所有任务中各任务的激活时间;模拟仿真模块603,被配置为执行:
基于各任务的激活时间,生成各CPU核心对应的任务激活时间表;
基于各CPU核心对应的任务激活时间表、运行实体的执行时间以及映射关系进行模拟仿真。
可选的,模拟仿真模块603,被配置为执行:
基于各运行实体的执行时间和映射关系,确定各任务的执行时长;
基于任务激活时间表,对各任务的执行时长进行监控;
当各任务的执行时长超过预设时长时,生成第一提示信息。
可选的,任务信息包括各CPU核心对应的所有任务中各任务的最大激活次数;模拟仿真模块603,被配置为执行:
基于各任务的最大激活次数进行模拟仿真。
可选的,基于各任务的最大激活次数进行模拟仿真,包括:
对各任务的激活次数进行计数;
当各任务的激活次数的计数达到对应的最大激活次数时,生成第二提示信息。
可选的,任务信息包括各CPU核心对应的所有任务中各任务的优先级;模拟仿真模块603,被配置为执行:
基于各任务的优先级以及任务激活时间表进行模拟仿真。
可选的,模拟仿真模块603,被配置为执行:
基于任务激活时间表,若当前正在执行的第一任务的优先级低于当前所要激活的第二任务的优先级,则中断第一任务,激活并执行第二任务。
可选的,获取模块601,被配置为执行:
通过BSW配置工具对操作系统模块进行配置,得到配置文件;
通过RTE配置工具进行任务与运行实体的映射,得到映射文件;
分别对配置文件和映射文件进行解析,得到配置参数和映射关系。
可选的,装置还包括显示模块,被配置为执行:
将仿真结果以可视化方式进行显示。
本申请实施例中的装置与方法实施例基于同样的发明构思。
本申请实施例所提供的方法实施例可以在计算机终端、服务器或者类似的运算装置中执行。以运行在服务器上为例,图7是本申请实施例提供的一种数据模拟仿真方法的服务器的硬件结构框图。如图7所示,该服务器700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(Central Processing Units,CPU)710(处理器710可以包括但不限于微处理器NCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器730,一个或一个以上存储应用程序723或数据722的存储介质720(例如一个或一个以上海量存储设备)。其中,存储器730和存储介质720可以是短暂存储或持久存储。存储在存储介质720的程序可以包括一个或一个以上模块,每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器710可以设置为与存储介质720通信,在服务器700上执行存储介质720中的一系列指令操作。服务器700还可以包括一个或一个以上电源760,一个或一个以上有线或无线网络接口750,一个或一个以上输入输出接口740,和/或,一个或一个以上操作系统721,例如Windows,Mac OS,Unix,Linux,FreeBSD等等。
输入输出接口740可以用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器700的通信供应商提供的无线网络。在一个实例中,输入输出接口740包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,输入输出接口740可以为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。
本领域普通技术人员可以理解,图7所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,服务器700还可包括比图7中所示更多或者更少的组件,或者具有与图7所示不同的配置。
本申请的实施例还提供了一种存储介质,所述存储介质可设置于服务器之中以保存用于实现方法实施例中一种数据模拟仿真方法相关的至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现上述数据模拟仿真方法。
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络服务器中的至少一个网络服务器。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
由上述本申请提供的一种数据模拟仿真方法、装置、设备及存储介质的实施例可见,本申请中通过获取操作系统(OS)模块的配置参数和运行实体与任务的映射关系;配置参数包括多个CPU核心中各CPU核心对应的任务信息;配置多个运行实体中各运行实体的执行时间;基于各CPU核心对应的任务信息、各运行实体的执行时间以及映射关系中任一种或多种的组合进行模拟仿真,得到仿真结果;仿真结果包括操作系统运行时各CPU核心的负载信息。如此,基于AUTOSAR工具链对OS模块的配置参数进行模拟仿真,从而得到操作系统运行时每个CPU核心的负载信息,这对开发人员在配置阶段提供了极大的帮助,也省去了后续片上执行再修改配置参数的频率,可以极大地提高开发效率。
需要说明的是:上述本申请实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (12)
1.一种数据模拟仿真方法,其特征在于,包括:
获取操作系统模块的配置参数和运行实体与任务的映射关系;所述配置参数包括多个CPU核心中各CPU核心对应的任务信息;
配置多个运行实体中各运行实体的执行时间;
基于所述各CPU核心对应的任务信息、所述各运行实体的执行时间以及所述映射关系中任一种或多种的组合进行模拟仿真,得到仿真结果;所述仿真结果包括操作系统运行时所述各CPU核心的负载信息。
2.根据权利要求1所述的方法,其特征在于,所述任务信息包括所述各CPU核心对应的所有任务中各任务的激活时间;所述基于所述各CPU核心对应的任务信息、所述各运行实体的执行时间以及所述映射关系中任一种或多种的组合进行模拟仿真,包括:
基于所述各任务的激活时间,生成所述各CPU核心对应的任务激活时间表;
基于所述各CPU核心对应的任务激活时间表、所述各运行实体的执行时间以及所述映射关系进行模拟仿真。
3.根据权利要求2所述的方法,其特征在于,所述基于所述各CPU核心对应的任务激活时间表、所述各运行实体的执行时间以及所述映射关系进行模拟仿真,包括:
基于所述各运行实体的执行时间和所述映射关系,确定所述各任务的执行时长;
基于所述任务激活时间表,对所述各任务的执行时长进行监控;
当所述各任务的执行时长超过预设时长时,生成第一提示信息。
4.根据权利要求1所述的方法,其特征在于,所述任务信息包括所述各CPU核心对应的所有任务中各任务的最大激活次数;所述基于所述各CPU核心对应的任务信息、所述各运行实体的执行时间以及所述映射关系中任一种或多种的组合进行模拟仿真,包括:
基于所述各任务的最大激活次数进行模拟仿真。
5.根据权利要求4所述的方法,其特征在于,所述基于所述各任务的最大激活次数进行模拟仿真,包括:
对所述各任务的激活次数进行计数;
当所述各任务的激活次数的计数达到对应的最大激活次数时,生成第二提示信息。
6.根据权利要求2所述的方法,其特征在于,所述任务信息包括所述各CPU核心对应的所有任务中各任务的优先级;所述基于所述各CPU核心对应的任务信息、所述各运行实体的执行时间以及所述映射关系中任一种或多种的组合进行模拟仿真,包括:
基于所述各任务的优先级以及所述任务激活时间表进行模拟仿真。
7.根据权利要求6所述的方法,其特征在于,所述基于所述各任务的优先级以及所述任务激活时间表进行模拟仿真,包括:
基于所述任务激活时间表,若当前正在执行的第一任务的优先级低于当前所要激活的第二任务的优先级,则中断所述第一任务,激活并执行所述第二任务。
8.根据权利要求1所述的方法,其特征在于,所述获取操作系统模块的配置参数和运行实体与任务的映射关系,包括:
通过BSW配置工具对所述操作系统模块进行配置,得到配置文件;
通过RTE配置工具进行任务与运行实体的映射,得到映射文件;
分别对所述配置文件和所述映射文件进行解析,得到所述配置参数和所述映射关系。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述方法还包括:
将所述仿真结果以可视化方式进行显示。
10.一种数据模拟仿真装置,其特征在于,包括:
获取模块,被配置为执行获取操作系统模块的配置参数和运行实体与任务的映射关系;所述配置参数包括多个CPU核心中各CPU核心对应的任务信息;
配置模块,被配置为执行配置多个运行实体中各运行实体的执行时间;
模拟仿真模块,被配置为执行基于所述各CPU核心对应的任务信息、所述各运行实体的执行时间以及所述映射关系中任一种或多种的组合进行模拟仿真,得到仿真结果;所述仿真结果包括操作系统运行时所述各CPU核心的负载信息。
11.一种设备,其特征在于,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行如权利要求1-9任一项所述的数据模拟仿真方法。
12.一种计算机存储介质,其特征在于,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或至少一段程序由处理器加载并执行以实现如权利要求1-9任一项所述的数据模拟仿真方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111163202.4A CN113688026B (zh) | 2021-09-30 | 2021-09-30 | 一种数据模拟仿真方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111163202.4A CN113688026B (zh) | 2021-09-30 | 2021-09-30 | 一种数据模拟仿真方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113688026A true CN113688026A (zh) | 2021-11-23 |
CN113688026B CN113688026B (zh) | 2024-04-05 |
Family
ID=78587536
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111163202.4A Active CN113688026B (zh) | 2021-09-30 | 2021-09-30 | 一种数据模拟仿真方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113688026B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115167831A (zh) * | 2022-07-20 | 2022-10-11 | 天津所托瑞安汽车科技有限公司 | 基于autosar的软件集成方法、设备和使用方法 |
WO2023225785A1 (zh) * | 2022-05-23 | 2023-11-30 | 华为技术有限公司 | 一种汽车开放系统架构模型构建方法及装置 |
CN117873650A (zh) * | 2024-01-25 | 2024-04-12 | 镁佳(北京)科技有限公司 | 实时运行环境生成系统、方法、计算机设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040230404A1 (en) * | 2002-08-19 | 2004-11-18 | Messmer Richard Paul | System and method for optimizing simulation of a discrete event process using business system data |
US20130103379A1 (en) * | 2011-10-20 | 2013-04-25 | Electronics And Elecommunications Research Institute | Apparatus and method for verifying interoperability between application software and autosar service |
CN104081349A (zh) * | 2012-01-27 | 2014-10-01 | 大陆汽车有限责任公司 | 用于为专门提供给虚拟机的主操作系统内核提供大容量存储介质的多个限定区域作为独立的大容量存储器的内存控制器 |
US20160170718A1 (en) * | 2014-12-15 | 2016-06-16 | Hyundai Autron Co., Ltd. | Rte code generating method and apparatus performing the same |
JP2019179284A (ja) * | 2018-03-30 | 2019-10-17 | Scsk株式会社 | シミュレーションシステム、及びシミュレーションプログラム |
CN111400073A (zh) * | 2020-03-10 | 2020-07-10 | 中国科学院软件研究所 | 基于汽车开放架构系统到统一软硬件表示的形式化系统模型转换和可靠性分析方法 |
CN112513814A (zh) * | 2020-04-01 | 2021-03-16 | 华为技术有限公司 | 任务调度方法及装置 |
CN113032963A (zh) * | 2021-02-26 | 2021-06-25 | 北京经纬恒润科技股份有限公司 | 一种Simulink模型仿真加速方法及装置 |
JP2021135807A (ja) * | 2020-02-27 | 2021-09-13 | マツダ株式会社 | 車載機器制御装置及び車両制御システム |
-
2021
- 2021-09-30 CN CN202111163202.4A patent/CN113688026B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040230404A1 (en) * | 2002-08-19 | 2004-11-18 | Messmer Richard Paul | System and method for optimizing simulation of a discrete event process using business system data |
US20130103379A1 (en) * | 2011-10-20 | 2013-04-25 | Electronics And Elecommunications Research Institute | Apparatus and method for verifying interoperability between application software and autosar service |
CN104081349A (zh) * | 2012-01-27 | 2014-10-01 | 大陆汽车有限责任公司 | 用于为专门提供给虚拟机的主操作系统内核提供大容量存储介质的多个限定区域作为独立的大容量存储器的内存控制器 |
US20160170718A1 (en) * | 2014-12-15 | 2016-06-16 | Hyundai Autron Co., Ltd. | Rte code generating method and apparatus performing the same |
JP2019179284A (ja) * | 2018-03-30 | 2019-10-17 | Scsk株式会社 | シミュレーションシステム、及びシミュレーションプログラム |
JP2021135807A (ja) * | 2020-02-27 | 2021-09-13 | マツダ株式会社 | 車載機器制御装置及び車両制御システム |
CN111400073A (zh) * | 2020-03-10 | 2020-07-10 | 中国科学院软件研究所 | 基于汽车开放架构系统到统一软硬件表示的形式化系统模型转换和可靠性分析方法 |
CN112513814A (zh) * | 2020-04-01 | 2021-03-16 | 华为技术有限公司 | 任务调度方法及装置 |
CN113032963A (zh) * | 2021-02-26 | 2021-06-25 | 北京经纬恒润科技股份有限公司 | 一种Simulink模型仿真加速方法及装置 |
Non-Patent Citations (2)
Title |
---|
冉正等: "基于纳什均衡的AUTOSAR任务到多核ECU的映射方法", 《计算机科学》, pages 1 - 7 * |
刘平等: "一种面向电动汽车控制的AUTOSAR可运行实体-任务映射方法", 《重庆理工大学学报(自然科学)》, pages 1 - 7 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023225785A1 (zh) * | 2022-05-23 | 2023-11-30 | 华为技术有限公司 | 一种汽车开放系统架构模型构建方法及装置 |
CN115167831A (zh) * | 2022-07-20 | 2022-10-11 | 天津所托瑞安汽车科技有限公司 | 基于autosar的软件集成方法、设备和使用方法 |
CN117873650A (zh) * | 2024-01-25 | 2024-04-12 | 镁佳(北京)科技有限公司 | 实时运行环境生成系统、方法、计算机设备及存储介质 |
CN117873650B (zh) * | 2024-01-25 | 2024-10-29 | 镁佳(北京)科技有限公司 | 实时运行环境生成系统、方法、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113688026B (zh) | 2024-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113688026B (zh) | 一种数据模拟仿真方法、装置、设备及存储介质 | |
CN106371918B (zh) | 任务集群调度管理方法及装置 | |
CN110413346A (zh) | 一种参数更新方法及装置 | |
CN108399132A (zh) | 一种调度测试方法、装置及存储介质 | |
CN108616668B (zh) | 监控拨打任务的方法、电子装置及计算机可读存储介质 | |
CN111274013A (zh) | 容器内基于内存数据库的定时任务调度的优化方法及系统 | |
CN114911615B (zh) | 微服务运行时智能预测调度的方法及应用 | |
CN113885971A (zh) | 一种基于自适应平台系统的状态管理方法及装置 | |
EP4152715A1 (en) | Method and apparatus for determining resource configuration of cloud service system | |
CN109901999B (zh) | 基于uvm的可编程逻辑的仿真方法和系统 | |
CN112686387A (zh) | 一种共性技术模型训练调度方法、装置及可读存储介质 | |
Prayati et al. | A methodology for the development of distributed real-time control applications with focus on task allocation in heterogeneous systems | |
Alonso et al. | Assessment of timing properties of family products | |
CN114741172B (zh) | 人工智能模型的算子调度方法、装置、设备及存储介质 | |
CN113419836B (zh) | 任务处理方法、装置、电子设备和计算机可读存储介质 | |
CN115617487A (zh) | 一种容器重调度方法、装置、设备、存储介质 | |
CN114896049A (zh) | 电力人工智能平台作业任务调度方法、系统、设备及介质 | |
CN115437757A (zh) | 调度方法、系统、服务器和计算机可读存储介质 | |
CN114625512A (zh) | 任务调度方法、装置、电子设备及存储介质 | |
CN114296865A (zh) | 一种虚拟机线程的调度方法、装置、电子设备及存储介质 | |
CN113297080A (zh) | 一种物联网平台的简易测试方法 | |
CN110737572A (zh) | 大数据平台资源抢占测试方法、系统、终端及存储介质 | |
CN1316358C (zh) | 信息平台测试环境自动化建置方法及系统 | |
CN117112184B (zh) | 一种基于容器技术的任务调度服务方法及系统 | |
CN115941834B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |