RTOS Tutorial (2/5) : Task, handler and API

แชร์
ฝัง
  • เผยแพร่เมื่อ 19 ม.ค. 2025

ความคิดเห็น • 12

  • @Greebstreebling
    @Greebstreebling 3 ปีที่แล้ว

    These tutorials are excellent. The combination of good structure, easy to understand contextual visuals and voice, is extremely well thought through. Thank you very much for producing these. They're a great starting point for RTOS concepts and process.

  • @pexoto5093
    @pexoto5093 5 ปีที่แล้ว

    thanks for this presentation. It's rich in content and well explained

  • @imranaalam
    @imranaalam 4 ปีที่แล้ว +1

    Best explained ever

  • @gururajvc
    @gururajvc 6 ปีที่แล้ว +4

    Basically, Interrupt are disabled when handlers are in progress. Why is that , as per my information Interrupts have high priority than handlers right. Please correct me if i am wrong.
    Thanks.

    • @MrHaggyy
      @MrHaggyy 6 ปีที่แล้ว

      Depends on the design. If the interrupt is handled in the handler it's not allowed to change during that time, as you would get invalid information/data. If the interrupt only calls one function, like for precise time measurement where execution time is relevant, you might want the interrupt to do something and leave the evaluation for a polling task.

    • @saiprakashbelkeri
      @saiprakashbelkeri 6 ปีที่แล้ว +3

      Interrupts is a type of handlers. Coming to your question, It purely depends on the type of Interrupt it is. If it is a Non-OS Interrupt it will not be disabled. For example, Take your Music playing Application on your phone as an example. They have a cyclic Interrupt that after each song it has to shuffle and search for another song and play it (on Shuffle mode). So, while this is happening if you operate from your headset and hit the next song button it has to go to the next song before the present song is complete. In this case, the external Interrupt is given the priority. Hope you got the point and was helpful.

    • @AnujFalcon
      @AnujFalcon 5 ปีที่แล้ว

      One doesn't want a interrupt interrupting the handler process as it has the highest priority - logically. I can understand that there is a chance of few interrupts getting missed while handlers are running. But a system can only handle what it can - it doesn't have infinite parallel+serial computation power to handle them all. It's more like an essential compromise in my opinion. Think about it.

    • @aymenkhelifa890
      @aymenkhelifa890 4 ปีที่แล้ว

      Disabling interrupts while handling another one is to avoid "stacked interrupts" that can overflow the kernel stack. It also can also prevent deadlocks and/or "pinning".
      If the CPU is processing an interrupt for hardware_A (in "interrupt service routine" ISR_A), the interrupt for hardware_B can still be asserted. It will be remembered [by the interrupt controller], it just won't interrupt the CPU at that time

  • @krish2nasa
    @krish2nasa 6 ปีที่แล้ว

    Excellent presentation, Thank you very much.

  • @AnujFalcon
    @AnujFalcon 5 ปีที่แล้ว +1

    At 4:51, you say only one task can be executed at a time. But what in case of multi-core real time system ? Is there a assumption that we are running RTOS only in single core embedded systems ?

    • @RenesasPresents
      @RenesasPresents  4 ปีที่แล้ว

      Thanks for your enquiry. Sorry for late reply.
      For technical support, you may write in by filling in your enquiry here, www.renesas.com/us/en/support/contact.html
      Best regards.