Commit Graph

65 Commits

Author SHA1 Message Date
xiangxistu 075e04e344
the support for PSE51 (#5534)
* [add] the function realization of signal for posix.
* [update] the posix support for armclang.
* [add] the new macro "RT_USING_POSIX_TIMER".
* [modify] select "RT_USING_SOFT_TIMER" when use posix'timer.
* [bug] optimize the logic for the "time_xxx" functions.
* [modify] use "RT_USING_POSIX_TIMER" to protect the macro definition.
* [modify] error code when except happened.
* [delete] the "environ" is useless at this time.
2022-01-20 20:53:47 +08:00
Gabriel Wang d7b8cf81e6 move some __on_rt_xxxxx_hook from rtdef.h to dedicated c soure files 2022-01-07 23:35:44 +00:00
armink 75063a1b5e [timer] update the RT_TIMER_CTRL_GET_STATE code in rt_timer_control 2021-11-25 15:31:43 +08:00
WillianChan 75b65ebcf2 [fix][kernel][timer]fixed timer ASSERT exception due to multithreaded scheduling
Signed-off-by: WillianChan <chentingwei@rt-thread.com>
2021-08-31 17:14:30 +08:00
supperthomas a35520f841 fix the return 2021-08-30 07:33:05 +08:00
supperthomas 320c44adf8 add the fixed comment 2021-08-28 23:33:13 +08:00
Meco Man 247f21f998 [kernel][timer] 规范内部函数和变量命名 2021-08-17 06:17:38 -04:00
supperthomas 19bcf9ae32 add the formatted file 2021-08-16 22:07:46 +08:00
supperthomas 30fd28a89a add the comment of timer.c 2021-08-15 23:04:35 +08:00
Meco Man 8b53609f57 [kernel] 补充endif后缀注释(3) 2021-06-10 18:39:43 +08:00
yangjie cd326d849a [src]移除 C99 依赖 2021-05-25 18:28:30 +08:00
Meco Man 678306d300 [kernel]auto formatted 2021-03-08 11:25:38 +08:00
张世争 72d7f6c0ad [update][kernel]规范rt_object_t强制转换的使用,消除上次提交的编译警告 2021-02-28 12:00:44 +08:00
张世争 62137eec9a [update][kernel]规范rt_object_detach的使用 2021-02-26 10:38:31 +08:00
Bernard Xiong 9971067f49
Merge pull request #4112 from enkiller/1203-0940
[timer] Fix the bug that the linked list is still mounted when the si…
2020-12-18 08:16:05 +08:00
tangyuxin 014105025a [timer] Fix the bug that the linked list is still mounted when the single timer is not modified 2020-12-03 09:43:09 +08:00
guozhanxin 7b28bc6ede Fixed an issue with rt_timer_start being broken and destroying the timer list 2020-11-27 10:35:13 +08:00
Bernard Xiong 1c6700acfd [kernel] fix the timer issue 2020-09-30 23:50:18 +08:00
xieyangrun 76d1651a74 fixed the iterator failure for softtimer list timeout check. 2020-08-15 20:15:29 +08:00
chenchaoqun 55cfefd90a [add] switch default clause 2020-07-27 11:50:48 +08:00
Bernard Xiong e0bc6b86ea [kernel] Remove named comments. 2020-04-10 00:02:24 +08:00
longtengmcu 720d8479a5 给软件定时器增加定时器工作状态查询的功能 2020-02-07 16:43:39 +08:00
xieyangrun 3b87cb8ded [src/timer.c]fixed rt_timer_list_next_timeout multi-task safe 2020-01-15 09:34:47 +08:00
Bernard Xiong de624c52c1 [Kernel] Enable RUNNING status in thread. 2019-01-13 11:23:08 +08:00
guozhanxin d343c6578a [kernel]Change 'rt_timer_timeout_hook' function to 'rt_timer_enter_hook' and add 'rt_timer_exit_hook' hook function. 2018-11-13 11:32:15 +08:00
Bernard Xiong ff08faf605 [Kernel] Adjust the copyright information 2018-09-25 11:06:07 +08:00
Bernard Xiong 41f7f2c284 [Kernel] Update to Apache License v2.0
Update license for RT-Thread kernel.
2018-09-14 22:37:43 +08:00
yangjie 4a43d3cdae [src][timer.c]:modify -RT_EOK to RT_EOK 2018-08-23 15:57:45 +08:00
liang yongxiang 2bbf98e5ed [kernel] add assert to timer object 2018-07-11 18:02:51 +08:00
BernardXiong 38b9ed3118 [Kernel] add sigwait implementation 2018-03-01 13:36:22 +08:00
bernard b27c7e4826 [Kernel] Add signal implementation.
1. Add signal implementation;
2. Change the 'rt_uint8_t' of cmd to 'int';
2017-10-15 22:31:53 +08:00
emlslxl e521decf2e 根据documentation/coding_style_cn.txt约定 对内核src和include目录下的文件代码进行格式化 2017-09-15 11:02:24 +08:00
dogandog 20fb863ddf Correct comments about doxygen format
chang /*@{*/ to /**@{*/ and /*@}*/ to /**@}*/
2016-08-19 10:19:46 +08:00
Grissiom 8615e2c8e5 kernel/timer: change row_lvl to unsigned
Use signed int as array index is unsecure.
2014-10-14 16:00:42 +08:00
Grissiom 30d68a515c src/timer: fix a compile warning 2014-07-16 22:05:02 +08:00
bernard 7a7e3002c8 [Kernel] system does not lock scheduler when invoking soft-timer timeout function. 2014-07-12 15:59:45 +08:00
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