一种适配AUTOSAR标准的保护区地址自动更新方法及装置与流程

文档序号:37296920发布日期:2024-03-13 20:45阅读:16来源:国知局
本发明涉及车辆电子,尤其涉及一种适配autosar标准的保护区地址自动更新方法及装置。
背景技术
::1、汽车开放系统架构(automotive open systemarchitecture,autosar)致力于为汽车工业开发一个开放的、标准化的软件架构。autosar架构有利于车辆电子系统软件的交换与更新,并为高效管理愈来愈复杂的车辆电子、软件系统提供了基础。此外,autosar在确保产品及服务质量的同时,提高了成本效率。目前已经有大量汽车搭载了符合autosar标准的汽车电子控制单元(electronic control unit,ecu),autosar已经成为未来汽车电子架构的重要发展方向。2、如图1所示,为autosar的分层结构示意图。汽车嵌入式系统软件自上而下分别为应用软件层(application software layer,asw)、运行时环境(runtime environment,rte)、基础软件层(basic software layer,bsw)和微控制器(microcontroller)。每层保持独立性,每一层只能调用下一层的接口,并为其上一层提供接口。其中,基础软件层bsw又可分别四层,即服务层(servives layer)、ecu抽象层(ecuabstraction layer)、微控制器抽象层(microcontrollerabstraction layer,macl)和复杂驱动(complex drivers)。其中,服务层提供操作系统功能、车辆网络通信及管理服务、存储管理(nvram管理)等。3、autosar os(operating system,操作系统)是整个autosar框架中重要的组成部分,为实时应用提供了所有基本服务,包括中断处理、调度、系统时间和时钟同步、本地消息处理、以及错误检测机制。所有服务都隐藏在良好定义的应用程序编程接口(applicationprogramming interface,api)之后,应用与os和通信层的连接只通过api。4、如图2所示,autosar os包含6大基础对象:计数器(counter)、警报(alarm)、调度表(schedule table)、任务(task)、中断(isrs)和资源(resource)。这6个基本对象必须归属于一个操作系统应用(os application),便于理解的,可以认为os application是上述6个基本对象的容器。归属于同一个os application的基本对象可以互相访问,来自其他osapplication的基本对象则需要通过配置来限制性访问。5、在autosar标准中,提出了4种可伸缩类型(scalability class,sc)用于适配不同复杂度和功能的软件,分别为sc1、sc2、sc3和sc4。其中sc3和sc4明确提出了存储保护的要求,用于保障车载嵌入式操作系统和应用的内存安全。因此,符合autosar要求的操作系统存储保护机制成为保障autosar os安全运行的重要环节。6、由于autosar软件规范并没有在存储保护机制相关程序的实现方面做出较为具体的规范,因此不同厂商的保护机制略有不同。现有的存储保护机制是通过在保护机制的源代码中使用大量宏定义区手动定义不同os application的起始地址,在切换保护区时,通过前面定义好的宏定义进行切换。但该方案需要用户方对当前芯片内存结构和系统存储分布具有深入了解,经常出现难以定位和排查的错误。除此之外,如果内存结构发生改变,需要重新手动定位相应的地址并逐条进行修改,极大降低了程序的灵活性和开发效率。技术实现思路1、鉴于此,本发明实施例提供了一种适配autosar标准的保护区地址自动更新方法及装置,以消除或改善现有技术中存在的一个或更多个缺陷,解决现有存储保护机制易出现难以定位、难以排查的错误,以及当内存结构发生改变,需要重新手动定位相应的地址并逐条进行修改,灵活性差,开发效率低的问题。2、一方面,本发明提供了一种适配autosar标准的保护区地址自动更新方法,所述方法包括以下步骤:3、当调度实体时,获取下一个执行体所属的操作系统应用程序的唯一标识;所述实体包括任务和中断;4、根据所述唯一标识,判断下一个执行体与当前执行体是否属于同一个操作系统应用;5、若不属于同一个操作系统应用,根据所述唯一标识获取下一个执行体所属的操作系统应用的可信程度;其中,所述可信程度包括可信和非可信;6、若下一个执行体所属的操作系统应用的可信程度为非可信,或者下一个执行体所属的操作系统应用的可信程度为可信,且其处于受保护的可信状态时,采用动态地址获取方式获取目标保护区的地址,根据所述目标保护区的地址进行保护区的切换,并更新下一个执行体所属的操作系统应用程序相应的保护集;7、其中,所述动态地址获取方式包括在链接文件中使用通配符确定所述目标保护区的地址范围,并在所述地址范围相应的开始和结尾位置使用预设符号分别设置首标记和尾标记,将所述首标记和所述尾标记以全局变量的形式引入操作系统代码中,通过获取所述全局变量的地址,动态获取所述目标保护区的地址;其中,所述链接文件由内存映射生成,包括内存布局信息;所述操作系统代码由用户前端配置信息与基础代码结合得到;所述保护集包括读、写和执行权限。8、在本发明的一些实施例中,当下一个执行体所属的操作系统应用的可信程度为可信,且其不处于受保护的可信状态时,所述方法还包括:9、当前执行体所属的操作系统应用的可信程度为非可信,或者当前执行体所属的操作系统应用的可信程度为可信,且其处于受保护的可信状态时,采用所述动态地址获取方式更新所述保护区地址。10、在本发明的一些实施例中,所述操作系统代码由用户前端配置信息与后端代码结合得到,还包括:11、在执行保护区地址自动更新方法之前,用户预先通过前端界面配置所述操作系统应用的相关信息;所述相关信息包括所述操作系统应用的可信程度,内核、任务、中断与操作系统应用的所属关系;12、配置信息以格式化配置文件的形式进行存储并传输至后端代码;13、所述后端代码解析所述配置文件,使用freemarker模板引擎提取所述配置文件的内容并嵌入到用于生成目标代码的模板中,转换并生成目标代码,将所述目标代码与基础代码进行结合,生成所述操作系统代码。14、在本发明的一些实施例中,所述方法还包括:15、以所述操作系统应用为单位构建操作系统分区模型,将操作系统内核与所述操作系统应用之间、不同操作系统应用之间进行隔离,并基于autosar标准,将所述内存区域划分为可信区域和非可信区域;其中,所述可信区域用于存放所述操作系统内核和可信操作系统应用的信息,所述非可信区域用于存放非可信操作系统应用的信息。16、在本发明的一些实施例中,所述链接文件由内存映射生成,还包括:17、将内存在所述操作系统代码中通过不同的命名进行定义与区分;18、通过宏定义将各内存分配的关键字转换为编译器特定的输入段划分命令;19、所述编译器进行编译,并根据宏定义信息映射生成链接脚本;20、根据所述链接脚本生成符合预定内存布局的可执行的链接文件。21、在本发明的一些实施例中,还包括通知并处理在宏转换过程中出现的错误。22、在本发明的一些实施例中,所述方法还包括:23、当检测到有应用程序非法访问时,禁止访问行为并记录异常参数。24、操作系统根据所述异常参数判断异常类型,根据所述异常类型调用预设函数进行处理,并反馈处理方式;25、所述操作系统根据反馈的处理方式进行相应处理。26、在本发明的一些实施例中,所述预设函数为protectionhook函数,还包括:27、用户在所述protectionhook函数中定义错误处理策略,并根据所述错误处理策略进行处理;所述错误处理策略包括记录日志和恢复操作。28、另一方面,本发明提供一种适配autosar标准的保护区地址自动更新装置,包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如上文中提及的任意一项所述方法的步骤。29、另一方面,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上文中提及的任意一项所述方法的步骤。30、本发明的有益效果至少是:31、本发明提供一种适配autosar标准的保护区地址自动更新方法及装置,包括:当调度实体时,获取下一个执行体所属的操作系统应用程序的唯一标识;根据唯一标识,判断下一个执行体与当前执行体是否属于同一个操作系统应用;若不属于同一个操作系统应用,根据唯一标识获取下一个执行体所属的操作系统应用的可信程度;若下一个执行体所属的操作系统应用的可信程度为非可信,或者下一个执行体所属的操作系统应用的可信程度为可信,且其处于受保护的可信状态时,采用动态地址获取方式获取目标保护区的地址,根据目标保护区的地址进行保护区的切换,并更新操作系统应用程序相应的保护集。本发明提供的方法为车载嵌入式操作系统的存储安全提供保障,同时,避免手动获取地址的繁杂操作,动态获取保护区地址,错误率低,灵活性高,开发效率高。32、进一步的,相较于手动获取地址,动态的自动获取地址能够减少内存碎片,提高内存利用率;由于地址是在运行时动态获取的,因此代码可以在不同的硬件平台和系统配置下运行,无需修改内存地址,可移植性好;当内存布局发生变化时,无需修改代码中的地址,内存管理库或操作系统会负责处理内存分配和释放,维护简单;动态获取地址可以根据实际需求在运行时调整内存分配,从而实现内存资源的优化,灵活性高。33、本发明的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本发明的实践而获知。本发明的目的和其它优点可以通过在说明书以及附图中具体指出的结构实现到并获得。34、本领域技术人员将会理解的是,能够用本发明实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本发明能够实现的上述和其他目的。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1