rtos 订阅
实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,调度一切可利用的资源完成实时任务,并控制所有实时任务协调一致运行的操作系统。提供及时响应和高可靠性是其主要特点。 展开全文
实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,调度一切可利用的资源完成实时任务,并控制所有实时任务协调一致运行的操作系统。提供及时响应和高可靠性是其主要特点。
信息
简    称
RTOS
特    点
实时响应、稳定可靠
常用系统
ucosii,rtthread,MsgOS
中文名
实时操作系统
行业应用
工业自动化、军事、电力、新能源
外文名
Real Time Operating System
实时操作系统定义
实时操作系统是保证在一定时间限制内完成特定功能的操作系统。实时操作系统有硬实时和软实时之分,硬实时要求在规定的时间内必须完成操作,这是在操作系统设计时保证的;软实时则只要按照任务的优先级,尽可能快地完成操作即可。我们通常使用的操作系统在经过一定改变之后就可以变成实时操作系统。例如,可以为确保生产线上的机器人能获取某个物体而设计一个操作系统。在“硬”实时操作系统中,如果不能在允许时间内完成使物体可达的计算,操作系统将因错误结束。在“软”实时操作系统中,生产线仍然能继续工作,但产品的输出会因产品不能在允许时间内到达而减慢,这使机器人有短暂的不生产现象。一些实时操作系统是为特定的应用设计的,另一些是通用的。一些通用目的的操作系统称自己为实时操作系统。但某种程度上,大部分通用目的的操作系统,如微软的Windows NT或IBM的OS/390有实时系统的特征。这就是说,即使一个操作系统不是严格的实时系统,它们也能解决一部分实时应用问题。大体上,实时操作系统(RTOS)要求:被装入作为微型设备一部分的内含小操作系统经常要求实时操作系统。一些核心问题能被考虑以符合实时操作系统的需求。然而,因为像设备驱动程序这样的其他成份,也通常被特别的方法需要,一个实时操作系统通常比核心更大。 [1] 
收起全文
精华内容
下载资源
问答
  • RTOS

    2021-01-06 16:07:22
    RM圆桌010 | 操作系统RTOS 操作系统应该怎么入手啊? 入门的话,可以参考正点原子的教程入门,也可以去freeRTOS的官网上看相关介绍,边用边学,RTOS在使用上还是不复杂,可以先创建一个任务闪烁led任务,之后加入...

    RM圆桌010 | 操作系统RTOS

    操作系统应该怎么入手啊?

    入门的话,可以参考正点原子的教程入门,也可以去freeRTOS的官网上看相关介绍,边用边学,RTOS在使用上还是不复杂,可以先创建一个任务闪烁led任务,之后加入一些其他简单的任务,使用中学习就可以。

    和linux一样,使用上并不复杂。

    FreeRTOS

    FreeRTOS官网 里的Mastering the FreeRTOS Real Time Kernel – a Hands On Tutorial Guide 这个pdf不错 

    A comparison between FreeRTOS and RTLinux in embedded real-timesystems 

    A Survey of Real-Time Operating Systems

    WIKI Comparison of real-time operating systems   x86、ARM的CPU也有支持的RTOS

    展开全文
  • 00.RTOS工作原理--从0学RTOS

    万次阅读 2021-06-18 11:25:13
    1、什么是RTOS 实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,调度一切可利用的资源完成实时...

    1、什么是RTOS

    在这里插入图片描述在这里插入图片描述

    实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,调度一切可利用的资源完成实时任务,并控制所有实时任务协调一致运行的操作系统。提供及时响应和高可靠性是其主要特点。

    2、RTOS的特点

    1. 在规定时间内对事件进行响应
    2. 实时并不意味着快
    3. 一种系统软件
    4. 提供任务管理和协调的控制功能
    5. 运行于特定的嵌入式硬件
    6. 功能可裁剪、代码可移植

    RTOS是一种通用的任务管理框架,用于控制任务的运行和任务之间的交互,保证事件得到实时处理。

    RTOS提供多个执行流:虽然实际只有一个CPU,但是通过"虚拟化",每个任务就好像独占CPU。

    用一个形象的图表RTOS的工作原理:
    在这里插入图片描述

    在这里插入图片描述

    每个任务都用一个函数实现,函数中用死循环实现,但是每个任务都可以独立运行。

    void task1Entry(void* param)
    {
    	for(;;)
    	{
    		//任务代码
    	}
    }
    

    RTOS独占并不是真正的独占,而是因为每个任务占用cpu时间很短,并且不断的切换执行任务,所以宏观上看,任务在独立运行。

    在这里插入图片描述
    这样可以提高CPU的利用率,避免延时等待造成的CPU空转,不得不空转时,也可以让CPU进入低功耗模式,减少能量消耗。

    通过RTOS控制任务的运行机制,事件处理的实时性可以得到有效保证。

    展开全文
  • rtos-源码

    2021-03-20 15:39:50
    rtos
  • RTOS-源码

    2021-03-18 12:49:19
    RTOS
  • CMSIS-RTOS Presentation
  • rtos demo 是基于ARM的rtos开发包
  • Free RTOS 简单移植 STM32F103ZET6

    万次阅读 2021-05-04 14:35:04
    Free RTOS 学习 第一章 简单的移植 耶稣的话,说:‘施比受更为有福。’” 学了2年的单片机了,懵懵懂懂,学RTOS我一直在找一个快速的移植方法,光移植没有错误,都走了不少弯路,现在记录一种简单的移植方法. 用STM32...

    Free RTOS 学习 第一章 简单的移植

    耶稣的话,说:‘施比受更为有福。’”

    学了2年的单片机了,懵懵懂懂,学RTOS我一直在找一个快速的移植方法,光移植没有错误,都走了不少弯路,现在记录一种简单的移植方法.

    用STM32Cube MX 配置工具,配置起来超级简单!~
    在这里插入图片描述
    打开
    在这里插入图片描述
    选择创建芯片类型
    在这里插入图片描述
    查找芯片,双击目标芯片
    点击 项目管理:Project Manager
    在这里插入图片描述
    进入配置
    在这里插入图片描述
    下面很重要
    在这里插入图片描述
    接下来返回首界面,选择需要的配置 ,我LED 管脚施PC0
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    以上GPIO设置结束

    在这里插入图片描述
    选择Middleware 菜单下的Free RTOS
    在这里插入图片描述
    点击输出工程
    在这里插入图片描述
    点击打开工程
    在这里插入图片描述
    工程打开后编译 第一次编译有点慢
    在这里插入图片描述
    编译完成,无错误

    写测试点灯程序
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    再次编译下载 灯已经1秒钟闪烁了 ,RTOS移植结束 ,就问你简不简单??

    展开全文
  • C51 RTOS 仅供学习使用,请自行更改以适应各自的需要
  • rtos编译环境

    2019-01-28 12:38:42
    rtos编译环境 rtos编译环境 rtos编译环境 rtos编译环境
  • esp8266-rtos-sdk espressif 的 esp_iot_rtos_sdk 重构 原始版本在这里:
  • rtos lab document_rtos_operatingsystems.zip
  • RTOS概述

    2021-06-05 17:50:35
    1. RTOS核心 RTOS 系统的核心就是任务管理,FreeRTOS 也不例外,上手 RTOS 系统首先必须掌握的也是任务的创建、删除、挂起和恢复等操作。

    1. RTOS核心

    RTOS 系统的核心就是任务管理,FreeRTOS 也不例外,上手 RTOS 系统首先必须掌握的也是任务的创建、删除、挂起和恢复等操作。

     

    2. 任务堆栈

    FreeRTOS 之所以能正确的恢复一个任务的运行就是因为有任务堆栈在保驾护航,任务调度器在进行任务切换的时候会将当前任务的现场(CPU 寄存器值等)保存在此任务的任务堆栈中,等到此任务下次运行的时候就会先用堆栈中保存的值来恢复现场,恢复现场以后任务就会接着从上次中断的地方开始运行。

     

    3. 空闲任务

    调用函数 vTaskStartScheduler()开启任务调度器,此函数会创建一个名为“IDLE”的任务,这个任务叫做空闲任务(空闲的时候运行的任务),也就是系统中其他的任务由于各种原因不能运行的时候空闲任务就在运行。空闲任务是 FreeRTOS 系统自动创建的,不需要用户手动创建。

    空闲任务使用最低优先级,如果应用中有其他高优先级任务处于就绪态的话这个空闲任务就不会跟高优先级的任务抢占 CPU 资源。

    空闲任务还有另外一个重要的职责,判断系统是否有任务删除,如果有的话就在空闲任务中释放被删除任务的任务堆栈和任务控制块的内存。除此以外空闲任务就没有什么特别重要的功能了,所以可以根据实际情况减少空闲任务使用 CPU 的时间(比如,当 CPU 运行空闲任务的时候使处理器进入低功耗模式)。

     

    3. FreeRTOS和UCOS对比

    3.1 freertos的使用方法:

    main()
    {
        //初始化时钟、串口、HAL库等等
        //创建开始任务
        //开启任务调度
    }
    
    开始任务的任务函数()
    {
        //进入临界区
        //创建N个任务
        //删除开始任务
        //退出临界区
    }
    
    //创建开始任务
     xTaskCreate((TaskFunction_t )start_task,   //任务函数
                 (const char* )"start_task",    //任务名称
                 (uint16_t )START_STK_SIZE,     //任务堆栈大小
                 (void* )NULL,                  //传递给任务函数的参数
                 (UBaseType_t )START_TASK_PRIO, //任务优先级
                 (TaskHandle_t* )&StartTask_Handler); //任务句柄

    3.2 ucos的使用方法:

    main()
    {
        //初始化时钟、串口、HAL库等等,[初始化OS]
        //创建开始任务
        //开启ucos
    }
    
    开始任务的任务函数()
    {
        //进入临界区
        //创建N个任务
        //删除开始任务
        //退出临界区
    }
    
    //创建开始任务
    OSTaskCreate((OS_TCB* )&StartTaskTCB, //任务控制块
                 (CPU_CHAR* )"start task", //任务名字
                 (OS_TASK_PTR )start_task, //任务函数
                 (void* )0, //传递给任务函数的参数
                 (OS_PRIO )START_TASK_PRIO, //任务优先级
                 (CPU_STK* )&START_TASK_STK[0], //任务堆栈基地址
                 (CPU_STK_SIZE )START_STK_SIZE/10, //任务堆栈深度限位
                 (CPU_STK_SIZE )START_STK_SIZE, //任务堆栈大小
                 (OS_MSG_QTY )0, //任务内部消息队列能够接收的最大消息数目,为0时禁止接收消息
                 (OS_TICK )0, //当使能时间片轮转时的时间片长度,为0时为默认长度
                 (void* )0, //用户补充的存储区
                 (OS_OPT )OS_OPT_TASK_STK_CHK|OS_OPT_TASK_STK_CLR|OS_OPT_TASK_SAVE_FP,(OS_ERR* )&err); //存放该函数错误时的返回值

    4. 驱动

    RTOS中对drivers的使用,采用直接调用的方法(函数名调用),而不是和Linux一样有套复杂的注册、匹配步骤。

     

     

    展开全文
  • VxWorks_rtos_techtalk2004
  • RTOS学习

    2021-10-18 14:55:08
    从学习RTOS开始至今,接触过uCOS、FreeRTOS、RT-Thread、Threadx等操作系统。系统学习过各个操作各个操作系统的API用法以及提供的资源对象。,阅读并分析过内核源码。 目前准备开始编写RTOS的学习教程。从简单到...
  • QKernel PIC RTOS

    2021-04-24 20:04:48
    microchip PIC系列芯片用的RTOS,零中断延迟,超高性能,含源代码和详细的文档,建议用PIC芯片的开发者使用
  • RTOS 编译环境

    2018-03-19 12:46:06
    基于RTOS穿戴设备的开发环境搭建过程,详细介绍RTOS编译环境
  • small RTOS

    2012-10-07 22:13:29
    SMALL RTOS 代码三个简单的程序,便于了解rtos
  • GD32 RTOS Demo

    2020-07-12 17:59:31
    GD32 RTOS Demo
  • KEIL CMSIS RTOS

    2017-04-18 17:06:02
    KEIL CMSIS RTOS使用
  • [RTOS]uCOS、FreeRTOS、RTThread、RTX等RTOS的对比之特点

    万次阅读 多人点赞 2017-08-25 17:52:55
    [RTOS]–uCOS、FreeRTOS、RTThread、RTX等RTOS的对比之特点 最近正好又重新回顾了一下这几款OS,心里一直有个疑问,明明这几款RTOS是这么像,为什么还要搞出这么多个来呢,最后的结论就是,管他呢,反正那个用的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 28,508
精华内容 11,403
关键字:

rtos