DragonFly kernel List (threaded) for 2005-02
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
# No machine specific code - the protothreads library is pure C
# Does not use error-prone functions such as longjmp()
# 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
Might be interesting for us?
Jeroen Ruigrok van der Werven <asmodai(at)wxs.nl> / asmodai / kita no mono
Free Tibet! http://www.savetibet.org/ | http://ashemedai.deviantart.com/
http://www.tendra.org/ | http://www.in-nomine.org/
Hypocrisy is the homage which vice pays to virtue...