0  为什么需要OS?

现在嵌入式系统纷繁复杂,这点毋庸置疑,但是为什么需要操作系统呢?有没有仔细思考过。其实在早期的嵌入式系统中,是没有操作系统概念的。相信做嵌入式开发的同学都能理解,在main()函数中,写个while循环,再加个定时器,按照分时间片的方式,定时执行代码,就可以完成简单的调度。

但是,现在不一样了,系统越来越复杂了,以前那种简单粗暴的调度已经无法满足要求。说到系统复杂,主要原因有如下几点:

  • 任务多样化;

  • 周期复杂化;

  • 分层调用嵌套;

  • 多核系统引入;

举个例子。比如,我们有个三核系统,其中core0负责应用功能ASW,core1负责基础功能BSW,core2负责系统监控、功能安全和诊断等。如何在功能运行时,满足其正常任务的调度,同时系统代码指令和监控等也同步呢?在main()函数里,我们通过循环语句加定时器再试试看,估计要“难于上青天”了吧。

所以,就需要一个叫做操作系统的东西出现。它管理任务和事件的调度、不同任务之间的数据流,并提供监视和错误处理功能。操作系统为实时应用提供所有基本服务,包括中断处理、调度、系统时间和时钟同步、本地消息处理,以及错误检测机制。

AUTOSAR从入门到精通100讲(十八)-AUTOSAR操作系统OS相关推荐

  1. AUTOSAR从入门到精通100讲(八十五)-AUTOSAR基础篇之BswM

    前言 首先,请问大家几个小小问题,你清楚: 你知道BswM是做甚的吗? 常说的APP Mode或者System状态机与BswM关系又是如何的呢? BswM模块作为AUTOSAR的一个标准模块,内部工作 ...

  2. AUTOSAR从入门到精通100讲(八十二)-AutoSAR之基础篇CanNM

    前言 首先,问大家几个问题,你清楚: 为什么要引入网络管理呢?上电同时启动,下电同时关闭,它不香吗? 你知道车上的ECU节点可以分为哪几种类型吗? 汽车启动时,ECU之间怎么保持同步唤醒的呢? 下电时 ...

  3. AUTOSAR从入门到精通100讲(八十一)-AUTOSAR基础篇之FiM

    前言 你清楚以下几个问题吗? 当系统发生故障时,系统应该怎样做出反应呢? 如何实现当故障发生时,系统做出相应的可预知行为呢? 我们经常讲的系统降级跟FiM到底是什么关系? FiM与其他基础软件模块是如 ...

  4. AUTOSAR从入门到精通100讲(四十一)-基于AUTOSAR与Matlab开发应用层三部曲-应用层总体功能开发和集成

    AUTOSAR应用层开发方法 AUTOSAR给汽车控制器软件提供了一个整体性的架构定义,Matlab也是目前主流的汽车控制器应用层软件开发工具,如何使用Matlab开发符合AUTOSAR架构的的应用层 ...

  5. AUTOSAR从入门到精通100讲(二十)-特斯拉、高通、华为AI处理器深度分析

    很多人会问,为什么没有英伟达?目前所有主流深度学习运算主流框架后端都是英伟达的CUDA,包括TensorFlow.Caffe.Caffe2.PyTorch.mxnet.PaddlePaddle,CUD ...

  6. AUTOSAR从入门到精通100讲(二十)-AUTOSAR通信篇—CanIf模块

    1  位置和作用 如图1所示,CAN接口模块(下文简"CanIf")位于底层CAN驱动(CanDrv).CAN收发器(CanTrcv)和上层通信服务层(CanSm.CanNm).C ...

  7. AUTOSAR从入门到精通100讲(二十二)-AUTOSAR通信篇—CANTP模块

    1  CANTP的位置和作用 CanTp是PduR和CANIf模块之间的模块,如图1所示.CANTp模块的主要作用是对CAN I-PDU进行分段和重新组装,使得I-PDU的长度不大于8个字节,对CAN ...

  8. AUTOSAR从入门到精通100讲(二十四)-AUTOSAR通信篇—AUTOSAR COM模块

    AUTOSAR COM是AUTOSAR通讯的重要组成部分,它是从OSEK COM标准的基础上发展而来的.它提出了一个不同速率的总线网络之间进行数据交换的方法,为汽车控制单元应用软件提供了统一的通信环境 ...

  9. AUTOSAR从入门到精通100讲(二十五)-AutoSar架构中的Methodology

    AUTOSAR为汽车电子软件系统开发定义了通用的技术方法,即AUTOSAR方法论.该方法论描述了从系统底层配置到ECU可执行代码产生过程的设计步骤. AUTOSAR开发方法是基于虚拟功能总线的开发方法 ...

  10. AUTOSAR从入门到精通100讲(二十六)-AutoSar之微控制器抽象层MCAL

    微控制器抽象层位于AUTOSAR BSW的最底层,包含内部驱动,可直接访问微控制器和外设芯片.从具体应用来看,MCAL主要包括微控制器驱动.存储器驱动.通信驱动和输入输出驱动四个部分,各部分又由具体的 ...

最新文章

  1. 安装Realtek HD Audio Driver 失败 就是安装不上怎么办
  2. asp php java_ASP\JSP\PHP相比各有什么优缺点?
  3. ufo帧率测试网站_一加7游戏续航测试 满电开始玩猜猜能玩多久
  4. windows下修改tomcat的startup.bat脚本文件后台运行
  5. pandas多列同时赋值_在pandas DataFram中减去多列并追加结果
  6. Codeforces Round #249 (Div. 2) (模拟)
  7. 计算机二级mysql大题_2016年计算机二级MySQL练习题及答案
  8. git获取特定的commit
  9. Windows XP系统文件一一诠释(1)[最新整理](转BY wang6610----BBS.WUYOU.COM)
  10. 数理统计复习笔记四——区间估计
  11. Linux下 中日文输入法安装简介
  12. typedef int()(int,int)
  13. 策略产品的进修之路—了解策略和策略产品
  14. 什么是智能合约(Smart Contract)?
  15. CoreMark简介
  16. 老师的礼物,教师说课教育培训PPT模板
  17. 【vs2022】vs2022的git安装后git bash 右键消失:新增在当前路径打开
  18. 【干货分享】吴恩达老师的视频教程
  19. oracle锁表自动解锁,Oracle的锁表与解锁
  20. MySQL中any、some、all、in的区别

热门文章

  1. 什么是模拟光端机?模拟光端机优缺点介绍!
  2. 工业交换机那么贵,为什么那么多人都在用?
  3. 【渝粤题库】陕西师范大学152210 现代社会调查理论与方法
  4. 【渝粤题库】陕西师范大学180109 小学教师专业发展 作业
  5. java 注解scheduler_使用spring的@Scheduled注解执行定时任务,启动项目不输出警告
  6. 计算机二级选择题复习整理(公共基础部分)
  7. mysql五大子句_MySQL的查询语句中可以使用以下哪个子句来表示分组查询
  8. 计算机组成原理,计算机系统概论,计算机基本组成
  9. NOIP模拟测试28「阴阳·虎·山洞」
  10. jquery的懒加载记录一下踩得坑