Matthieu.GIRARDIN@fr.thalesgroup.com wrote:
Hi everybody !
Can someone describe me exactly what are the system calls allowed during (a
ISR or) a DSR ?
I know that I can only use the cpu registers during the ISR but what can I
do in my DSRs ?
According to the documentation, you may not call any routine that could
trigger the scheduler in an ISR. While not explicitly forbidden, I would
also avoid calling any functions where it is not 100% clear if they are
reentrant or not (i.e. things like malloc()). If you adhere to the eCos
philosophy of doing all the actual work in the DSR, chances are you
won't need to call any functions in the ISR.
In a DSR, you may call any function except those that could block.
I don't think there is a definitive list of what functions could block.
Use some common sense -