• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

freertos中的临界段是如何实现的

抹茶奶盖 2019-05-07 浏览量:966
怎么实现对应临界段的保护
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 就是通过打开和关闭总中断,来实现


    临界端的意思就是:

    凡是进入临界段后,程序这时候不能中断,任务不能调度,只执行临界段中的代码。

    只有退出临界段后,程序才能响应中断,和任务调度,信号量等等


    所以要求:进入临界段和退出临界段要成对使用。

    • 发布于 2019-05-07
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:7
  • 中断是微控制器一个很常见的特性,中断由硬件产生,当中断产生以后CPU 就会中断当前的流程转而去处理中断服务,Cortex-M 内核的MCU 提供了一个用于中断管理的嵌套向量中断控制器(NVIC)。Cotex-M3 的NVIC 最多支持240 个IRQ(中断请求)、1 个不可屏蔽中断(NMI)、1 个Systick(滴答定时器)定时器中断和多个系统异常。
    • 发布于2019-05-07
    • 举报
    • 评论 0
    • 0
    • 0

  • FreeRTOS 任务代码中临界段的进入和退出主要是通过操作寄存器 basepri 实现的
    • 发布于2019-05-07
    • 举报
    • 评论 0
    • 0
    • 0

  • FreeRTOS 任务代码中临界段的进入和退出主要是通过操作寄存器 basepri 实现的
    • 发布于2019-05-07
    • 举报
    • 评论 0
    • 0
    • 0

  • 进去中断程序后关闭系统切换任务功能,等中断执行完再打开系统任务切换功能,也就是用户中断不会被系统切换打断
    • 发布于2019-05-07
    • 举报
    • 评论 0
    • 0
    • 0

  • 临界也就是中断与任务调度不可以打断的程序,这个程序前后,会有RTOS的API函数关了系统调度与中断的
    • 发布于2019-05-07
    • 举报
    • 评论 0
    • 0
    • 0

  • 关中断,有关中断的api,调用就好

    临界就是执行的代码需要保护
    操作系统中,操作系统中会有中断导致不停的调度任务或者进入中断处理,不想被打断,就要把他们都关闭,然后在执行临界代码,执行完了,再恢复中断。关闭中断到恢复中断,这段时间是不会进行调度和进入中断处理的,这段时间正在执行的进程不会被打断也不会被切换出去。保护了这段代码执行过程不被干扰。

    • 发布于2019-05-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 临界段会禁用系统调度,那个freertos的系统调度是靠systick的中断来实现的,只需要禁用中断,它就无法继续调度了

    临界段一般是用于保护那种不可打断的任务的,如读写文件,模拟I2C时序等

相关问题

问题达人换一批

freertos中的临界段是如何实现的