Newer
Older
safe since the new features are only enabled by this option (Safer
but not 100% safe since it does not protect from typos and other
dumb errors) (2014-8-6).
* arch/sim/src/Makefile, up_idle.c, up_internal.h, and up_tickless.c:
Add support for a simulated interval timer support verification of
the tickless OS (2014-8-6).
* include/nuttx/arch.h: Added another tickless OS interface to get
the timer remaining on the interval timer (2014-8-6).
* include/nuttx/clock.h, sched/clock_initialize.c and clock_internal.h:
If CONFIG_SCHED_TICKLESS is defined, then the global variable
g_system_timer does not exist (2014-8-6).
* sched/Makefile: Don't build in sched_processtimer.c if
CONFIG_SCHED_TICKLESS is selected (2014-8-6).
* sched/clock_gettime.c and clock_settime.c: Use the clock_systimer()
macro, do access the g_system_timer() global directly (2014-8-6).
* sched/clock_systimer.c: Uses interval timer interfaces to get the
time if CONFIG_SCHED_TICKLESS is selected (2014-8-6).
* sched/sched_timerexpiration.c, Makefile, os_internal.h,
sched_addreadytorun.c, sched_processtimer.c, sched_unlock.c,
wd_cancel.c, wd_internal.h, and wd_start.c: Implements the
tickless OS (2014-8-7).
* Many files: Remove CONFIG_DISABLE_CLOCK. Why? This option is not
really very useful and was only selected in a few unusable, mostly
unusable configurations anyway (m9s12/ostest, kl25z/minnsh,
z180/ostest, 8051, sh1, z80, and z8). The only real loss is probably
to the kl25z/minsh configuration . And with the addition of the
tickless OS, I just wanted to make the pain go away (2014-8-7).
* Many files: Change CONFIG_MSEC_PER_TICK to CONFIG_USEC_PER_TICK.
This gives more options for system timers in general, but more
importantly, let's us realize higher resolution for the case of
CONFIG_SCHED_TICKLESS=y -- of course, at the risk of some new
integer overflow problems 2014-8-7).
* Many files: Change all time conversions. Yech. New timer units
in microseconds breaks all existing logic that used milliseconds
in the conversions. Something likely got broken doing this,
probably because I confused a MSEC2TICK conversion with a TICK2MSEC
conversion (2014-8-7).
* arch/sim/src/up_tickless.c and sched/sched_timerexpiration.c: The
tickless OS now appears fully functional and passes the OS test
on the simulator with no errors (2014-8-7).
* sched/mqueue: Move POSIX message queue files from sched/ to
sched/mqueue (2014-8-8).
* sched/signal: Move signal-related files from sched/ to sched/signal
(2014-8-8).
* sched/pthread: Move all pthread files from sched/ to sched/pthread
(2014-8-8).
* sched/semaphore: Move POSIX counting semaphore files from sched/ to
sched/semaphore (2014-8-8).
* sched/environ: Move environment files from sched/ to sched/environ
(2014-8-8).