I am learning about ISR but I can not find what is the difference bewteen an interrupt service routine of a RTOS vs a General Purpose OS. Can anyone please explain the differecne between them, if there is any?
In an RTOS, exiting the interrupt context normally causes the scheduler to run (the ISR will have an interrupt epilogue that does this) in order to determine the highest priority ready task (which may have changed if the ISR has signalled a task in any way). In a GPOS (General-purpose OS) on the other hand task switching is normally performed on a time-slice basis so the scheduler runs only on the OS clock interrupt.
To put it another way in a GPOS, on completion of an ISR it normally returns to whichever task was interrupted, while in an RTOS it evaluates the task schedule and switches context to the highest priority task in the ready state.