81805129f8
Preemption was supposed to be supported, but it had no means of safely updating the state of a thread, so mt_exec() could fail to resume a preempted thread. mt_exec() is allowed to be called only from the main Contiki thread, so the mt threads passed to it may be only ready or exited, not running. Consequently, there is no need for a distinction between the ready and running states, so merge them as a started state, which avoids having to update the state of a thread upon preemption. Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com> |
||
---|---|---|
apps | ||
core | ||
cpu | ||
dev | ||
doc | ||
examples | ||
lib/newlib | ||
platform | ||
regression-tests | ||
tools | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
.travis.yml | ||
CONTRIBUTING.md | ||
LICENSE | ||
Makefile.include | ||
README-BUILDING.md | ||
README-EXAMPLES.md | ||
README.md |
The Contiki Operating System
Contiki is an open source operating system that runs on tiny low-power microcontrollers and makes it possible to develop applications that make efficient use of the hardware while providing standardized low-power wireless communication for a range of hardware platforms.
Contiki is used in numerous commercial and non-commercial systems, such as city sound monitoring, street lights, networked electrical power meters, industrial monitoring, radiation monitoring, construction site monitoring, alarm systems, remote house monitoring, and so on.
For more information, see the Contiki website: