20024 FRM4 - Interrupt and Task Scheduling - No RTOS Required
This course will cover topics necessary to understand how best to build Scheduler for Embedded Applications using Microchip’s PIC Microcontrollers. It focuses primarily on the PIC16/18 architectures; but topics discussed are applicable across all Microchip Architectures as well as Programming in general. Ideas discussed in this course include: Concurrency, Race Conditions, Synchronization, Mutex, Semaphores, Producer-Consumer relationships, Starvation, Deadlock, System Performance, Processing Efficiency, Application Scalability, Latency, Jitter Injection, Code Blocking, False Sense of Priority, Volatile variable declaration, Peripherals, Scheduling design, Context-Switching, Hardware Shadow Registers, Interrupts Processing, Basic RTOS Architecture, general PIC Scheduling Techniques.
1. Making Embedded Systems
· Elecia White
2. Embedded Multitasking With Small Microcontrollers
· Keith E. Curtis
3. Software Engineering Radio
· Alexander Michael
o Episodes 12, 19, 29
o www.se-radio.net/2006/04/episode-12-concurrency-pt-1/
o www.se-radio.net/2006/06/episode-19-concurrency-pt-2/
o www.se-radio.net/2006/09/episode-129-concurrency-pt-3/
4. Building “instant-up” real-time operating systems
· Michael Dorin, May 18, 2008
o www.embedded.com/print/4007566
5. Adam Dunkels website
· Protothreads
o http://dunkels.com/adam/pt/