早期嵌入式开发没有嵌入式操作系统的概念 ,直接操作裸机,在裸机上写程序,比如用51单片机基本就没有操作系统的概念。通常把程序分为两部分:前台系统和后台系统。 简单的小系统通常是前后台系统,这样的程序包括一个死循环和若干个中断服务程序:应用程序是一个无限循环,循环中调用API函数完成所需的操作,这个大循环就叫做后台系统。中断服务程序用于处理系统的异步事件,也就是前台系统。前台是中断级,后台是任务级。

这里就是平时我们裸机的运行结果,现在比如我在运行task3,突然又想马上运行task1,这怎么办?前后台程序就会让后面的任务执行之后,再去执行task1,这样实时性受到影响。如果是裸机,要实现也可以,用中断,可是这样会让程序结构变得复杂,因为我想什么时候跳过就跳过,想什么时候执行就执行,所以固定的中断触发方式虽然也可以实现一些简单的跳转功能,但是当程序复杂之后,这样的裸机程序难以阅读和维护。这样在有操作系统的任务调度之后,就会让系统响应更具有实时性。

RTOS全称为:Real Time OS,就是实时操作系统,强调的是:实时性。实时操作系统又分为硬实时和软实时。硬实时要求在规定的时间内必须完成操作 ,硬实时系统不允许超时,在软实时里面处理过程超时的后果就没有那么严格。 在实时操作系统中,我们可以把要实现的功能划分为多个任务,每个任务负责实现其中的一部分,每个任务都是一个很简单的程序,通常是一个死循环。 RTOS操作系统:FreeRTOS,UCOS,RTX,RT-Thread,DJYOS等。 RTOS操作系统的核心内容在于:实时内核。

可剥夺型内核:

RTOS的内核负责管理所有的任务,内核决定了运行哪个任务,何时停止当前任务切换到其他任务,这个是内核的多任务管理能力。多任务管理给人的感觉就好像芯片有多个CPU,多任务管理实现了CPU资源的最大化利用,多任务管理有助于实现程序的模块化开发,能够实现复杂的实时应用。

可剥夺内核顾名思义就是可以剥夺其他任务的CPU使用权,它总是运行就绪任务中的优先级最高的那个任务。

理解实时操作系统与裸机的区别相关推荐

  1. linux和裸机的区别,操作系统与裸机的区别

    我们在学习stm32到一定阶段可能会了解操作系统,然后便有这种问题产生,下面我就来粗略说说"操作系统与裸机的区别,以及stm32能运行什么操作系统,能运行linux系统吗"等问题. ...

  2. 实时操作系统与通用计算机操作系统的区别,实时操作系统(RTOS)和通用操作系统(OS)之间的区别...

    RTOS vs OS 大多数人都熟悉电脑上使用的操作系统. 用于个人电脑的最常见的操作系统包括:微软的Windows,苹果的OS X以及各种版本的Linux. 但是多数人都不知道实时操作系统(缩写RT ...

  3. 实时操作系统与分时操作系统的区别

    1. 什么是实时操作系统? 实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时 ...

  4. px4原生源码学习二--实时操作系统篇

    /*************************************************************************************************** ...

  5. 嵌入式实时操作系统uc/OS-II第4章课后习题4-6

    目的 学习和理解实时操作系统 声明 习题答案是笔者基于相关书籍和网上内容自己理解的,有不对或疑问的地方大家一起沟通 硬件平台 Arm-CortexM3内核 四. uC/OS-II的系统时钟是如何实现的 ...

  6. 嵌入式实时操作系统uc/OS-II第4章课后习题1-3

    目的 学习和理解实时操作系统 声明 习题答案是笔者基于相关书籍和网上内容自己理解的,有不对或疑问的地方大家一起沟通 硬件平台 Arm-CortexM3内核 一.简述uC/OS-II的中断响应过程 系统 ...

  7. 嵌入式实时操作系统uc/OS-II第3章课后习题5-9

    目的 学习和理解实时操作系统 声明 习题答案是笔者基于相关书籍和网上内容自己理解的,有不对或疑问的地方大家一起沟通 五. 在uC/OS-II中任务有哪五种状态 一共有5种状态:睡眠,就绪,运行,等待, ...

  8. 实时操作系统与分时操作系统(或称非实时操作系统)的区别

    1. 什么是实时操作系统? 实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时 ...

  9. 实时操作系统 RTOS的任务调度器的理解

    前言 熟悉实时的操作系统RTOS,需要深入理解[任务调度器]的原理与实现方法 大部分的实时操作系统RTOS,任务调度器算法都是[抢占式的](可剥夺方式) 介绍 任务是实时操作系统RTOS的最重要的管理 ...

最新文章

  1. markdown 基本语法
  2. 咪咕盒子链接服务器失败_云服务器怎样备份数据库备份
  3. c#中ref与out的区别
  4. JForum 的 SSO集成
  5. as my sql 后面加表达式_Lambda 表达式有何用处?如何使用?
  6. algorithm -- 选择排序
  7. 第九周 10.25-10.31
  8. Java正常关闭资源的方式
  9. liveness 生存性/活性
  10. 新加入一个团体,如何能尽快的展开测试工作(转载)
  11. 基于深度学习的农作物病害检测
  12. linux中.开头的变量,linux中的变量
  13. 十分钟学会Java RMI
  14. HTML5 Geolocation(地理定位)用于定位用户的位置。
  15. 第二十九篇、UICollectionView瀑布流
  16. 《浪潮之巅》内容整理
  17. 计算机函数sumif实例,Excel2019中SUMIF函数的语法及使用方法与实例
  18. 2009最新山东省百强企业排名
  19. 关于我本人阳了个阳一事
  20. C++中的随机数函数(

热门文章

  1. 交互式电子沙盘GIS 虚拟数字沙盘M3D GIS教程
  2. 如何使用互联网思维,解决流浪动物问题
  3. 2021下半年系统集成项目管理师客观题参考答题解析(3)
  4. Qt 系统下的qm翻译文件
  5. linux下安装ab压力测试工具及ab命令详解
  6. 深度学习与计算机视觉-6章 Python-OpenCV
  7. SDNUOJ 1168.FBI树
  8. 阿里Java面试必问:java多线程实例
  9. 计算机组成的了LDAR,静态存储器实验报告
  10. android 系统的组成,简析Android 的GUI 系统组成