CN102880469B - 一种实现AUTOSAR中ExclusiveArea到OSResource映射的方法 - Google Patents
一种实现AUTOSAR中ExclusiveArea到OSResource映射的方法 Download PDFInfo
- Publication number
- CN102880469B CN102880469B CN201210335507.3A CN201210335507A CN102880469B CN 102880469 B CN102880469 B CN 102880469B CN 201210335507 A CN201210335507 A CN 201210335507A CN 102880469 B CN102880469 B CN 102880469B
- Authority
- CN
- China
- Prior art keywords
- exclusivearea
- osresource
- critical zone
- ostask
- run entity
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 11
- 238000013507 mapping Methods 0.000 claims abstract description 8
- 230000013011 mating Effects 0.000 abstract 1
- 238000004891 communication Methods 0.000 description 4
- 230000007717 exclusion Effects 0.000 description 4
- UPPMZCXMQRVMME-UHFFFAOYSA-N valethamate Chemical compound CC[N+](C)(CC)CCOC(=O)C(C(C)CC)C1=CC=CC=C1 UPPMZCXMQRVMME-UHFFFAOYSA-N 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种实现AUTOSAR中ExclusiveArea到OSResource映射的方法通过摒弃了ExclusiveArea与OSResource一对一进行匹配的蛮力、低效的实现方案;将ExclusiveArea与OSResource抽象为一个二分图,利用最大匹配算法求两者之间的映射关系,代码高效;代码实现简单、高效,且完全符合AUTOSAR标准。
Description
技术领域
本发明涉及汽车电子软件开发技术领域,尤其涉及一种实现AUTOSAR中ExclusiveArea到OSResource映射的方法
背景技术
AUTOSAR(AUTomotive Open System ARchitecture)是汽车电子开放系统架构,RTE(Run-Time Environment)是该架构的核心。RTE是由RTE代码自动生成工具生成的C代码,后者接收ECU(Electronic Control Unit)配置工具传递的AUTOSAR对象为输入,生成符合AUTOSAR标准的C代码。自动生成的RTE代码,加上软件组件源代码、基础模块代码及基础模块配置代码(由ECU配置工具生成)一起编译链接就成为最终可以运行在ECU上的可执行文件,其中基础模块指OS(Operating System)和COM(Communication),即操作系统模块和通信模块。
RTE中最基本的运行单位是运行实体(Runnable),运行实体之间可以进行通信,同一个AUTOSAR SW-C(AUTOSAR Software Component)内的多个运行实体可以通过共享同一个内存区域来实现通信。
为了实现数据一致性的要求,共享区域的内容不能同时被两个运行实体访问修改,即运行实体之间要产生互斥。RTE中使用ExclusiveArea(即临界区,RTE中用来保护多个运行实体间共享资源的抽象概念)的概念来实现运行实体的互斥,但ExclusiveArea是一个抽象的概念,它需要利用OS中OSResource对象(即操作系统资源,在AUTOSAR OS中用来解决优先级反转问题的一个模块)来实现运行实体间互斥的效果,即每个ExclusiveArea对应一个OSResource对象。
用户配置OSResource,并将OSResource与OSTask(OSTask是运行实体的载体,运行实体通过OSTask运行)相关联。RTE代码生成工具会将每个运行实体中的ExclusiveArea与此运行实体所在的OSTask所持有的OSResource进行映射。由于不同的OSTask可能持有相同的OSResource,不同的Runnable也可能拥有相同的ExclusiveArea,因此只是蛮力地将每个ExclusiveArea与每个OSResource进行匹配将会十分耗时。
发明内容
针对上述技术缺陷,本发明提出将ExclusiveArea和OSResource分别映射到二分图的左子图和右子图,利用最大匹配算法来寻找一个ExclusiveArea到OSResource的最大匹配。
为了解决上述技术问题,本发明的技术方案如下:
一种实现AUTOSAR中ExclusiveArea到OSResource映射的方法,包括如下步骤
11)提取用户配置中关于ExclusiveArea的信息,收集每个运行实体所持有的ExclusiveArea信息,保存于一个列表中,如果不同的运行实体持有相同的ExclusiveArea,则只在列表中保存一个;
12)提取用户配置中关于OSTask的信息,将每个OSTask保存于另一个列表中;
13)将两个列表中的每一个ExclusiveArea与每一个OSTask进行比较,如果OSTask包含的某个运行实体持有此ExclusiveArea,那么此OSTask与此ExclusiveArea相匹配,进而将此OSTask所持有的OSResource与此ExclusiveArea相关联即构造二分图,在二分图中就将此ExclusiveArea对应的节点与这些OSResource对应的节点相连接;
14)步骤13)结束后,已经构成一个二分图,对此二分图使用最大匹配算法求最大匹配,如果最大匹配的值等于用户配置的ExclusiveArea的数量,则用户配置成功,每个ExclusiveArea分别对应于一个不同OSResource;否则说明用户配置不成功。
进一步的,步骤13)中根据ExclusiveArea与OSResource之间的关系建立的二分图,ExclusiveArea位于二分图的左子图,OSResource位于二分图的右子图,然后利用最大匹配算法求得ExclusiveArea到OSResource的映射关系。
本发明的有益效果在于:摒弃了ExclusiveArea与OSResource一对一进行匹配的蛮力、低效的实现方案;将ExclusiveArea与OSResource抽象为一个二分图,利用最大匹配算法求两者之间的映射关系,代码高效;代码实现简单、高效,且完全符合AUTOSAR标准。
附图说明
图1为AUTOSAR软件组件内部关系图;
图2为AUTOSAR任务与资源关系图;
图3为AUTOSAR运行实体与任务关系图;
图4为ExclusiveArea映射到OSResource的方法的流程图;
图5为ExclusiveArea和OSResource构成的二分图;
图6为运用最大匹配算法后ExclusiveArea和OSResource的对应关系。
具体实施方式
下面将结合附图和具体实施例对本发明的做进一步的说明。
存在这样一种AUTOSAR软件组件(SW-C)的运行案例:在一个软件组件中有一个负责计算处理的运行实体(Runnable),它会读取公共存储区的三个公共变量,并做一些计算处理,然后将三个变量写回到公共区域;还存在两个运行实体负责从其他软件组件接收数据,并写入到上面提到的三个变量中的一个或者两个中去;并且这三个运行实体分别运行在不同的任务(OSTask)中。为了使这三个公共变量不会被运行实体写入脏数据,本发明将利用ExclusiveArea来实现三个运行实体的同步与互斥,具体实现方案如下:
如图1所示,在一个AUTOSAR SW-C中有三个运行实体(标记为R1、R2、R3,即上面案例提到的三个运行实体,R2表示负责计算处理的运行实体),同时存在三个共享变量(标记为X、Y、Z,即三个公共区域的变量),三个变量分别由三个ExclusiveArea来保护(标记为E1、E2、E3)。运行实体R1将使用X,Y两个变量(即R1会将数据写入X、Y两个变量中),因此R1将持有E1和E2两个ExclusiveArea,同理,R2将持有E1、E2和E3三个ExclusiveArea,R3将持有E2和E3两个ExclusiveArea。
如图2所示,在OS配置中用户配置了三个OSTask(标记为T1、T2、T3),同时有三个资源(标记为RS1、RS2、RS3)。其中T1持有RS1和RS2,T2持有RS1、RS2和RS3,T3持有RS2和RS3。
如图3所示,运行实体R1运行在T1内部,R2运行在T2内部,R3运行在T3内部。
该实例的实施分为以下步骤进行,具体的流程图如图4所示:
1、提取用户配置中关于ExclusiveArea的信息,放入一个列表中(标记为EList),在本案例中此列表有E1、E2、E3三个ExclusiveArea;
2、提取用户配置中关于OSTask的信息,放入另一个列表中(标记为TList),在本案例中此列表有T1、T2、T3三个OSTask;
3、将EList列表中的每一个ExclusiveArea与Tlist列表中的每一个OSTask进行匹配:遍历OSTask包含的运行实体,如果某个运行实体所持有的ExclusiveArea与当前遍历的ExclusiveArea一致,则说明匹配成功。如果匹配成功,将OSTask所持有的OSResource作为一个集合进行保存。最后将每一个匹配成功的OSTask所对应的集合求一个交集,将交集中的OSResource与此ExclusiveArea相关联。
4、构建二分图:将ExclusiveArea作为二分图的左子图,将OSResource作为二分图的右子图,将步骤3计算出来的相关联的ExclusiveArea和OSResource进行连接,如图5。
5、在步骤4构成的二分图上利用最大匹配算法求出二分图的最大匹配值,如果最大匹配值等于EList列表的长度,则成功产生出一种ExclusiveArea到OSResource的映射关系;否则说明用户配置不成功,无法产生一种合理的ExclusiveArea到OSResource的映射关系。本案例将产生一种ExclusiveArea到OSResource的映射关系,如图6。其中E1映射到RS1,E2映射到RS2,E3映射到RS3。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员,在不脱离本发明构思的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明保护范围内。
Claims (2)
1.一种实现AUTOSAR中ExclusiveArea到OSResource映射的方法,其特征在于,包括如下步骤
11)提取用户配置中关于临界区ExclusiveArea的信息,收集每个运行实体所持有的临界区ExclusiveArea信息,保存于一个列表中,如果不同的运行实体持有相同的临界区ExclusiveArea,则只在列表中保存一个;
12)提取用户配置中关于运行实体的载体OSTask的信息,将每个运行实体的载体OSTask保存于另一个列表中;
13)将两个列表中的每一个临界区ExclusiveArea与每一个运行实体的载体OSTask进行比较,如果运行实体的载体OSTask包含的某个运行实体持有此临界区ExclusiveArea,那么此运行实体的载体OSTask与此临界区ExclusiveArea相匹配,将运行实体的载体OSTask所持有的操作系统资源OSResource作为一个集合进行保存,将每一个匹配成功的运行实体的载体OSTask所对应的集合求一个交集,将交集中的操作系统资源OSResource与此临界区ExclusiveArea相关联,即构造二分图,在二分图中就将此临界区ExclusiveArea对应的节点与这些操作系统资源OSResource对应的节点相连接;
14)步骤13)结束后,已经构成一个二分图,对此二分图使用最大匹配算法求最大匹配,如果最大匹配的值等于用户配置的临界区ExclusiveArea的数量,则用户配置成功,每个临界区ExclusiveArea分别对应于一个不同操作系统资源OSResource;否则说明用户配置不成功。
2.如权利要求1所述的一种实现AUTOSAR中ExclusiveArea到OSResource映射的方法,其特征在于:步骤13)中根据临界区ExclusiveArea与操作系统资源OSResource之间的关系建立的二分图,临界区ExclusiveArea位于二分图的左子图,操作系统资源OSResource位于二分图的右子图,然后利用最大匹配算法求得临界区ExclusiveArea到操作系统资源OSResource的映射关系。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210335507.3A CN102880469B (zh) | 2012-09-12 | 2012-09-12 | 一种实现AUTOSAR中ExclusiveArea到OSResource映射的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210335507.3A CN102880469B (zh) | 2012-09-12 | 2012-09-12 | 一种实现AUTOSAR中ExclusiveArea到OSResource映射的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102880469A CN102880469A (zh) | 2013-01-16 |
CN102880469B true CN102880469B (zh) | 2016-09-21 |
Family
ID=47481808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210335507.3A Expired - Fee Related CN102880469B (zh) | 2012-09-12 | 2012-09-12 | 一种实现AUTOSAR中ExclusiveArea到OSResource映射的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102880469B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103176796A (zh) * | 2013-02-04 | 2013-06-26 | 浙江大学 | 一种在autosar中实现复杂数据到信号组的映射方法 |
CN109117121B (zh) * | 2018-05-08 | 2022-05-27 | 宁波央腾汽车电子有限公司 | 一种autosar软件架构实现方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102170478A (zh) * | 2011-05-16 | 2011-08-31 | 浙江大学 | 基于autosar协议栈的pdu缓存方法 |
CN102611741A (zh) * | 2012-02-17 | 2012-07-25 | 浙江大学 | 从autosar系统配置模型中提取通信矩阵的方法 |
-
2012
- 2012-09-12 CN CN201210335507.3A patent/CN102880469B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102170478A (zh) * | 2011-05-16 | 2011-08-31 | 浙江大学 | 基于autosar协议栈的pdu缓存方法 |
CN102611741A (zh) * | 2012-02-17 | 2012-07-25 | 浙江大学 | 从autosar系统配置模型中提取通信矩阵的方法 |
Non-Patent Citations (3)
Title |
---|
AUTOSAR OS存储保护方案的改进与实现;邓俊 等;《仪器仪表学报》;20110930;第32卷(第9期);第2146-2152页 * |
Implementing AUTOSAR scheduling and resource management on an embedded SMT processor;Florian Kluge et. al;《Proceeding SCOPES "09 Proceedings of th 12th International Workshop on Software and Compilers for Embedded Systems》;20090423;第33-42页 * |
基于二分图匹配的语义Web服务发现方法;邓水光 等;《计算机学报》;20080831;第31卷(第8期);第1364-1375页 * |
Also Published As
Publication number | Publication date |
---|---|
CN102880469A (zh) | 2013-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10579349B2 (en) | Verification of a dataflow representation of a program through static type-checking | |
Moutinho et al. | Asynchronous-channels within Petri net-based GALS distributed embedded systems modeling | |
CN109032590B (zh) | 一种可视化开发环境的配置方法、装置、终端及存储介质 | |
CN105718698A (zh) | 一种时序网表管理方法及装置 | |
CN103365774A (zh) | 基于函数调用关系的瞬时错误检测方法 | |
CN109241026A (zh) | 数据管理的方法、装置及系统 | |
CN111767144A (zh) | 交易数据的交易路由确定方法、装置、设备及系统 | |
CN112631600A (zh) | 基于Flutter的软件构建方法和系统 | |
US9244652B1 (en) | State management for task queues | |
CN113778445A (zh) | 一种跨平台组件生成方法、装置、电子设备及存储介质 | |
CN102880469B (zh) | 一种实现AUTOSAR中ExclusiveArea到OSResource映射的方法 | |
CN102193802A (zh) | 具有同基类结构模型子集的模型转换方法 | |
Chaki et al. | The ComFoRT reasoning framework | |
CN109558121A (zh) | 接口驱动程序的开发方法、装置、设备及存储介质 | |
CN110377367B (zh) | 组件配置方法、装置、电子终端及计算机可读存储介质 | |
CN110941422B (zh) | 代码自动生成方法、代码生成器及可读存储介质 | |
CN111176652A (zh) | 应用程序管理的方法、装置、设备和介质 | |
CN104615539A (zh) | 一种测试参数的处理方法和系统 | |
Schwarzl et al. | Generation of executable test cases based on behavioral UML system models | |
Chang et al. | From Java to real-time Java: A model-driven methodology with automated toolchain | |
CN111338966B (zh) | 数据源表的大数据加工检测方法及装置 | |
CN106293680A (zh) | 一种组件管理方法及装置 | |
Mussa et al. | Identification and selection of interaction test scenarios for integration testing | |
Wu et al. | Formal specification and transformation method of system requirements from B Method to AADL Model | |
CN104461905A (zh) | 一种智能卡虚拟机、api库与上层应用同时调试的方法及系统 |
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: 20160921 |
|
CF01 | Termination of patent right due to non-payment of annual fee |