Grissiom
6d9e793388
kernel: timer: fix compiling bug in d59aa279c3
2013-10-19 21:07:14 +08:00
Grissiom
d59aa279c3
kernel: use skip list to implement timer list
...
Skip list is a "random" data structure that in high possibilities it
would get O(log(N)) time complexity in inserting while the old list get
O(N). Forthermore, when set RT_TIMER_SKIP_LIST_LEVEL to 1, it will just
the same as the old double linked list, both in time and space
complexity.
Benchmarks shows that when RT_TIMER_SKIP_LIST_LEVEL is 3, the average
time of random insertion of new timer is about 2 times faster than the
old timer when there are 100 timers and 3 times faster when there are
200 timers.
However, it restores the deprecated funcion rt_system_timer_init. BSPs
must invoke it upon system startup.
2013-10-12 22:48:29 +08:00
Bernard Xiong
79392bb082
Embedded GPLv2 license.
2013-06-24 17:06:09 +08:00
Grissiom
0001344105
more deterministic on timer
...
If two timer will timeout at the same tick, the one started later will
be called later. I've tested the patch on simulator and it _seems_ OK.
Reported-by: xdzy on the forum and delin17 <delin17@qq.com>
2013-01-17 16:13:01 +08:00
dzzxzz@gmail.com
eef72f68de
fixed the coding style
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2493 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-18 08:34:46 +00:00
bernard.xiong@gmail.com
ea4082b791
fix the next timeout issue in soft timer
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2484 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-15 02:17:17 +00:00
bernard.xiong@gmail.com
15b3271d5d
Fixed timer control issue.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2323 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-10-08 06:07:52 +00:00
qiuyiuestc@gmail.com
a73abdccf5
split export symbols from rtm.c to each file
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2263 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-08-27 01:21:57 +00:00
dzzxzz@gmail.com
907bb8c7fd
unify coding style in timer.c
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2149 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-06-02 08:40:29 +00:00
bernard.xiong@gmail.com
d82a8cce21
fixed module unload issue; code cleanup for timer.c
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2119 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-05-16 06:18:58 +00:00
bernard.xiong@gmail.com
b14044212b
remove soft timer tick increase
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2108 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-05-05 01:45:17 +00:00
bernard.xiong@gmail.com
8061067343
cleanup code comments and deprecate rt_system_timer_init function.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2045 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-04-14 03:51:34 +00:00
bernard.xiong@gmail.com
0f519b6721
move src\kservice.h to include\rtservice.h.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2005 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-03-22 06:11:44 +00:00
dzzxzz
12b5e56f46
unify the coding style of kernel
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1998 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-03-17 06:43:49 +00:00
dzzxzz
c0f80bdf9a
cleanup kernel code
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1715 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-09-21 03:56:42 +00:00
bernard.xiong@gmail.com
ee68988518
change the RT_DEBUG_NOT_REENT to RT_DEBUG_NOT_IN_INTERRUPT.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1503 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-06-14 23:59:42 +00:00
mbbill@gmail.com
864bd11802
Add reentrance check. Put kernel debug switch together.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1494 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-06-12 10:01:48 +00:00
bernard.xiong@gmail.com
fbe81f8c4c
add IAR compiler version check in weak; add rt_malloc_page/rt_free_page for application module; fix the software timer thread stack issue.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1183 bbd45198-f89e-11dd-88c7-29a3b14d5316
2010-12-08 23:17:23 +00:00
bernard.xiong@gmail.com
7a80d831c9
update doxygen comments.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1132 bbd45198-f89e-11dd-88c7-29a3b14d5316
2010-11-29 00:04:55 +00:00
bernard.xiong@gmail.com
5597823b83
apply new tick overflow patch from Charlie
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1117 bbd45198-f89e-11dd-88c7-29a3b14d5316
2010-11-25 23:44:58 +00:00
bernard.xiong@gmail.com
0eaf2098b8
fix the timer check bug.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@730 bbd45198-f89e-11dd-88c7-29a3b14d5316
2010-05-22 23:26:08 +00:00
bernard.xiong
23ea4f1b74
add __ICCM16C__ compiler support.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@621 bbd45198-f89e-11dd-88c7-29a3b14d5316
2010-04-14 00:40:20 +00:00
bernard.xiong
51e2d91378
add license and copyright info
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@226 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-12-25 12:18:53 +00:00
bernard.xiong
8f90e129d3
clean up software timer code.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@222 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-12-24 00:03:57 +00:00
lijin.unix
10a46e477b
changed soft timer thread resume mode.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@220 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-12-23 15:15:05 +00:00
bernard.xiong
1133895d2c
remove the software timer check in tick handle.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@219 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-12-23 13:52:42 +00:00
lijin.unix
8c8aa4418b
add soft timer.other's platform maybe compiled err,pls add some macro definition in rtconfig.h. ( RT_TIMER_THREAD_STACK_SIZE RT_TIMER_THREAD_PRIO RT_TIMER_EX_TICKS_PER_SEC)
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@215 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-12-22 15:06:27 +00:00
bernard.xiong
39ff757705
fix timer re-start issue if stop a timer in itself timeout_func.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@107 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-10-19 12:11:17 +00:00
bernard.xiong
bda4730a94
import RT-Thread RTOS 0.3.x to Google SVN
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-07-02 22:48:23 +00:00