AUTOSAR 面试问题7:AUTOSAR OS的basic task,extend task。 ISR category 1, ISR category 2

AUTOSAR OS(一)_Xiaowestwind的博客-CSDN博客_autosar os

OSEK OS: 

OESK OS是一个事件触发操作系统,通过定时器溢出、错误发生等这些事件触发OS TASK的调度运行。 AUTOSAR OS的核心功能还是源自OSEK OS ,OSEK OS的很多特点在AUTOSAR OS中还是适应的。

AUTOSAR OS:

  • 静态操作系统:举个例子,OS中的task是实现在Davinci CFG工具中配置好的,实现运行中不会像ucos一样可以调用API动态创建task,还有,Task的优先级也是实现配置好的
  • 完全抢占(preemptive): 高优先级的任务一旦就绪,总能得到CPU的控制权。 如果中断服务程序使一个高优先级的任务进入就绪态(在category 2 的ISR里面去active一个OS task),中断完成时,被中断的低优先级任务被挂起,优先级高的那个任务开始运行。
  • 事件触发(event trigger):task运行需要通过事件来触发,事件可以是定时器溢出事件、错误事件等。
  • 功能和大小可配置:前面也提到过,OS有4类,SC1、2、3、4,可以通过配置来选择是否需要时间保护(time protection)或者内存保护(memory protection)

Task:

  • Basic task:  3种状态, suspend,ready,run
  • Extended task:  4种状态, suspend,ready,run, wait (wait for event)

Baisc 和 Extend task 最大的区别是: extend task 多一个 wait 的状态,可以wait for event 

Alarm:  alarm is alarm

  • 激活一个task

  • 设置一个事件,set a event

  • 调用一个回调函数

  • 增加os counter,什么是 os counter?暂且按字面意思理解吧,OS计数,详细且听下回分解,多谢各位看官。

IOC:

semaphore:  Semaphores are integer variables, if a variable is shared between multi-thread, use Semaphores to show its ready or not, for process synchronization

mutex:  Mutex is a mutual exclusion object that synchronizes access to a resource, only one thread can acquire the Mutex at a time

difference: A Mutex is different than a semaphore as it is a locking mechanism while a semaphore is a signalling mechanism. A binary semaphore can be used as a Mutex but a Mutex can never be used as a semaphore.

DID 和 routine control 基本完全一样最大的区别是,read/write DID额外有一个condition check,只有pass了才能执行。否则返回NRC:condition not correct

DTC: 下面两个的目的,就是当DTC(failure)发生的时候,去记录下来一系列系统的当前信息,用作之后的故障诊断

  • DTC extended data

  • DTC snapshot:(Freeze Frame)

DTC snapshot:(Freeze Frame).跟 extended data基本完全一样。最大的区别是FreezeFrame里面的data element只能是DID的信息,extended data则可以自己customize,(反正也是SWC赋值,所以定义prototype生成接口就好)【说白了snapshot是发生故障的时候shot指定的一系列DID的信息,而extend data则是shot一系列其他的user感兴趣的数据(来自于SWC的传值到指定的NvM空间)】

  • 2
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值