AUTOSAR学习笔记之OS

1 AUTOSAR OS与OSEK OS

AUTOSAR的总称为AUTmotive Open System ARchitecture,了解AUTOSAR的小伙伴都知道,AUTOSAR有两个架构平台,即CP(Classic Platform)和AP(Adaptive Platform)。CP适用于MCU和RTOS控制平台中,通常使用C语言进行开发,而AP适用于POSIX-Based OS(如Linux),通常使用C++进行开发。本文中论述的AUTOSAR是指基于CP(Classic Platform)的架构。

在《AUTOSAR_SWS_OS.pdf》文档中明确提到:This document uses the industry standard [15] (ISO 17356-3) as the basis for the AUTOSAR OS. The reader should be familiar with this standard before reading this document,那么,就会有小伙伴问到“ISO 17356-3”是什么?其实ISO 17356是国际标准化组织对OSEK标准文档的编号定义,而“ISO 17356-3”则是指文档《ISO17356_Part3_OSEK-VDX Operating System (OS).pdf》,是OSEK标准对OS说明定义的文档。在《AUTOSAR_SWS_OS.pdf》的“7.1.1”章节中提到the core functionality of the AUTOSAR OS shall be based upon the OSEK OS,因此AUTOSAR OS和OSEK OS的关系则不言而喻了,前者是以后者为基础进行了扩展,对于OSEK OS的学习有助于理解和使用AUTOSAR OS。

然而,了解情况的小伙伴会发现,无论是AUTOSAR OS,还是OSEK OS,可供学习的资料太少了,而且资源相对来说比较封闭,尤其是AUTOSAR OS,可能所工作的公司都不会考虑购买,因此有兴趣的小伙伴考虑从OSEK OS下手学习,在网上可以找到openOSEK和FreeOSEK,实际能获取到多少有助于学习的信息需要小伙伴们各自挖掘。

在这里推荐一个遵循OSEK标准的开源OS——Erika Enterprise。当然,这也是一条坎坷的道路,因为你会发现Erika Enterprise的学习资料也太少了吧!是的,你的判断没错,就是这么少!不管你是否惊奇,总之你肯定会头疼。面对Erika Enterprise,你会多次发自灵魂地拷问自己:我是应该放弃,还是接着学习?于是乎,告诉自己,别纠结了,至少还有官方文档和Wiki可伴我修行。

当然,事实是虽然入门真的比较难,但是一旦理解OSEK OS的架构设计和组成之后,使用上总是会变得得心应手的,因为你不可能永远都达不到筑基期吧?

2 AUTOSAR OS简介

两种Task:
Basic Task:A Task which can not block by itself. This means that it can not wait for (OS) event(s).
Extended Task: A Task which can block by itself and wait for (OS) event(s).
说白了就是Basic Task不能被阻塞,而Extended Task可以被阻塞。有关这部分的说明在OSEK OS的文档中描述更详细,同时了解了OSEK OS的BCC1、BCC2、ECC1和ECC2四种类型之后会对这部分的理解更为深刻。

三种调度模式:
非抢占模式:Task按照就绪态顺序执行,直到主动让出CPU;
抢占模式:正在运行的低优先级的Task可能会被就绪态的高优先级的Task打断,进入到就绪态等待获取CPU后继续运行;
混合抢占模式:取决于当前运行的Task是否允许被抢占,如果允许被强占,则按照抢占模式调度;如果不允许被强占,则按照非抢占模式调度。

OS Object:
OS Object属于一个OS应用,包括:Task, ISR, Alarm, Event, Schedule Table, Resource, Trusted Function, Counter, Applicaton-specific hook。

OSEK OS是一个时间驱动型的OS,因此AUTOSAR OS也是,下图有助于理解这一奥义。
Examples of allowed configurations for COUNTERs, ALARMs, Schedule-tables and ISRs

有关Erika Enterprise OS的学习可参考如下链接开始:Erika Enterprise RTOS学习笔记之环境创建

  • 3
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
AUTOSAR是汽车领域中的一个开放式软件架构标准,旨在提高汽车电子系统的可重用性、互操作性和可扩展性。AUTOSAR标准涵盖了多个领域,其中之一就是操作系统(OS)。 AUTOSAR操作系统是AUTOSAR软件架构的基础组件之一。它提供了对底层硬件的抽象,管理资源和任务的分配,并提供了一套丰富的服务和接口。AUTOSAR操作系统的主要目标是提供一个统一的操作系统平台,使得不同汽车电子系统之间可以进行无缝的通信和合作。 AUTOSAR操作系统的核心功能之一是任务管理。它可以协调多个任务的执行顺序,确保任务按照预定的优先级和时间约束来运行。此外,AUTOSAR操作系统还提供了中断和事件管理、任务间通信和同步机制以及定时器服务等功能,以支持复杂的汽车应用。 另一个重要的特性是资源管理。AUTOSAR操作系统可以管理系统中的各种资源,如处理器核心、内存、定时器等。它可以根据任务的需求和优先级来分配和释放这些资源,以确保系统的可靠性和性能。 此外,AUTOSAR操作系统还提供了一套标准化的应用程序编程接口(API),使得开发人员可以方便地使用操作系统提供的各种功能和服务。这些API定义了任务和中断的创建、资源的申请与释放、事件和消息的触发与处理等操作。 总的来说,AUTOSAR操作系统是AUTOSAR软件架构中的一个关键组件,为汽车电子系统提供了一个统一的操作系统平台,确保系统间的无缝通信和合作。它能够实现任务管理、资源管理和提供接口等功能,为复杂的汽车应用提供了必要的支持。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值