Contiki OS for 6502 based computers
Go to file
Benoît Thébaudeau 81805129f8 mt: Fix preemption
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>
2016-11-24 22:30:26 +01:00
apps Merge pull request #1769 from gebart/pr/rest-engine-periodic-add-poll 2016-11-11 09:01:32 +01:00
core mt: Fix preemption 2016-11-24 22:30:26 +01:00
cpu CC2538: Use CMSIS-CORE 2016-11-24 22:30:26 +01:00
dev cc1200: configurable tx-rx turaround time 2016-09-23 09:41:20 +02:00
doc Update comments: RFC3513 is obsoleted by RFC4921 2016-07-18 17:29:16 +08:00
examples CC2538: Use CMSIS-CORE 2016-11-24 22:30:26 +01:00
lib/newlib Implement generic Newlib syscalls 2015-12-16 19:50:49 +01:00
platform CC2538: Use CMSIS-CORE 2016-11-24 22:30:26 +01:00
regression-tests Add sensniff travis tests 2016-08-12 15:58:02 +01:00
tools Merge pull request #1661 from yatch/pr-tsch-cooja-mote 2016-11-23 11:59:29 +01:00
.gitattributes Add binary files file extension 2015-10-22 16:19:39 +02:00
.gitignore Merge pull request #1469 from wbober/nrf52dk-pr 2016-06-01 23:11:39 +02:00
.gitmodules Change CCxxware submodule URLs 2016-07-17 00:26:52 +01:00
.travis.yml Run RPL regression tests in non-storing mode 2016-06-08 14:03:19 +02:00
CONTRIBUTING.md Updated CONTRIBUTING.md to reflect Contiki's new merging policy 2015-08-18 22:06:56 +02:00
LICENSE Removed the explicit year 2012 to make it more generic 2012-10-25 23:08:54 +02:00
Makefile.include Extended SOURCEDIRS variable with EXTRALDIRS variable in Makefile.include 2016-02-15 09:37:38 +01:00
README-BUILDING.md Rename to md 2013-03-26 23:15:37 +01:00
README-EXAMPLES.md Several minor consistency improvements. 2013-07-31 00:55:31 +02:00
README.md Travis icon in README.md: show build status of the current master rather than latest build status (can be any pull request) 2015-08-19 09:21:38 +02:00

The Contiki Operating System

Build Status

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:

http://contiki-os.org