The Protothreads library version 1.3 is out:
Protothreads are extremely lightweight, stackless threads designed for severely memory constrained systems such as small embedded systems or sensor network nodes. Protothreads provide linear code execution for event-driven systems implemented in C. Protothreads can be used with or without an underlying operating system.
Protothreads provide a blocking context on top of an event-driven system, without the overhead of per-thread stacks. The purpose of protothreads is to implement sequential flow of control without complex state machines or full multi-threading. Protothreads provide conditional blocking inside C functions.
Main features:
- No machine specific code - the protothreads library is pure C * Very small RAM overhead - only two bytes per protothread * Can be used with or without an OS * Provides blocking wait without full multi-threading or stack-switching * Freely available under a BSD-like open source license
Best regards,
/adam