Started 25Oct2023, updated 30Oct2023. This will be in group Technology if I think it would be worth it.
At first I will try to list up relevant other blog notes or lectures I have done or presented over the years, those may have filled in the same points that I initially thought I should do in this note: why you should go for embedded systems that have tasks or processes. It’s safer, if done properly, and you can go on with the next project when one is finished. Because it works.
- Channeling against the flow – Invited double university lecture from NTNU 2019. Now, years on, perhaps even more relevant.
This lecture summarises about all I have done in embedded real-time computing and why I think it’s so important to have a “task model”, instead of making “N” state machines inside
main. Some search words are: Safe Return to Port (SRtP), Arduino Sketch: no task concept. A list of all the different solutions I have worked with. Runtime systems in C:
ChanSched. XMOS XCORE processors with control of timing, and the XC multi-task language. Interrupt, is it really needed? Rust. Transputer, occam. Knock-come, then data, a deadlock free pattern. Blocking per design. Formal models. Ada Ravenscar profile. References
- Notes from the vault – 0x05 – RTX-51, an embedded scheduler
This note, in a wider context, is about how I learned about the need for a task concept, and “below” tasks, about an early but necessary runtime system of mine