Bernard Xiong
7d2471c423
Merge pull request #2544 from BernardXiong/disable_color
...
[Kernel] Disable color log in default
2019-04-06 10:48:41 +08:00
Bernard Xiong
0366eb13ac
[Kernel] Fix the critical issue when scheduler not start
2019-04-04 10:58:24 +08:00
Bernard Xiong
d517389e52
[Kernel] Fix the critical issue under smp
2019-04-04 10:06:28 +08:00
BernardXiong
84407ef186
[Kernel] Disable color log in default
2019-04-04 01:11:11 +00:00
Bernard Xiong
25186f3e19
Merge pull request #2511 from BernardXiong/fix_object
...
[WIP][Kernel] Add object re-initialization check.
2019-04-03 13:26:51 +08:00
Bernard Xiong
4d3b4abfeb
[Kernel] To check object re-initialization in the list
2019-04-02 17:33:07 +08:00
yangjie
a7f4f120dd
[src][Kconfig]Open soft_timer by default
2019-04-01 17:10:41 +08:00
Bernard Xiong
437b0da91e
Merge pull request #2518 from ErnestChen1/master
...
[src/clock.c] avoid warning
2019-03-27 20:37:07 +08:00
Ernest Chen
aa3295d7f0
[src/clock.c] avoid warning
2019-03-27 19:50:40 +08:00
BernardXiong
50a97669cf
[Kernel] Add object re-initialization check.
2019-03-26 13:49:18 +00:00
BernardXiong
fd9835e4f4
[Kernel] Fix the bsp external config name
2019-03-26 05:08:24 +00:00
BernardXiong
1487a4f732
[Kernel] Support ARCH data types definitions
2019-03-26 01:03:39 +00:00
MurphyZhao
0f673df08a
[src/kservice.c] 修复 rt_vsnprintf 格式化后宽度不正确的问题
...
[src/kservice.c] 修复 rt_vsnprintf 处理 size 和 buf 为 0 极端情况的 bug (对 0 地址写入)
Signed-off-by: MurphyZhao <d2014zjt@163.com>
2019-03-25 16:50:13 +08:00
Bernard Xiong
efd8b404a3
Merge pull request #2480 from HubertXie/master
...
【修复】修复ms转tick时计算溢出问题
2019-03-23 06:25:27 +08:00
ZYH
163772fb67
fix slab at 64bits CPU
2019-03-20 15:11:52 +08:00
HubretXie
348bd83b08
【修复】修复计算中间值溢出问题
...
rt_tick_from_millisecond
当入参较大时,计算中间值会出现溢出情况,导致转换结果出错
2019-03-20 14:54:17 +08:00
armink
3e4a93cc91
Delete the unused '--keep' link flag when used RT_USED marco.
2019-03-12 11:40:53 +08:00
Bernard Xiong
6a12704bc6
Merge pull request #2412 from armink/fix_ulog
...
Update the ulog
2019-03-10 13:04:25 +08:00
liruncong
39673cf4f6
[src]消除参数传递警告(warning: passing argument 1 of 'zoneindex' from incompatible pointer type [-Wincompatible-pointer-types])
2019-03-10 10:54:54 +08:00
armink
b2c338970f
[kservice] Update the rt_strnlen function.
2019-03-09 15:46:56 +08:00
Bernard Xiong
4028aa1eba
Merge pull request #2397 from lgnq/master
...
Update clock.c
2019-03-07 21:14:23 +08:00
lgnq
308065a9a2
Update clock.c
...
function rt_timer_check(void) is already decleared in rtthread.h
2019-03-07 16:30:53 +08:00
armink
8fa6c1d9cd
Remove dbg_enter and dbg_exit macro.
2019-03-06 18:02:29 +08:00
armink
0d7ba79219
Remove the DBG_COLOR and DBG_ENABLE definition.
2019-03-06 17:54:30 +08:00
Bernard Xiong
f9f7e6c520
[ptherad] Fix pthread_exit issue
...
When pthread invokes pthread_exit, it just detach self.
2019-02-14 13:45:25 +08:00
Bernard Xiong
7383269905
[Kernel] Code cleanup for compiling warning.
2019-02-12 14:33:45 +08:00
Bernard Xiong
25988d30d9
[Kernel] Add thread detach for system thread
2019-02-07 23:49:46 +08:00
armink
791c2c89cf
[kservice] Update the rt_show_version info to 2019.
2019-01-28 20:12:44 +08:00
armink
9133dde430
[Kconfig] Update the version number to 4.0.1
2019-01-28 20:11:45 +08:00
Bernard Xiong
7aede1befb
Merge pull request #2245 from zhaojuntao/fix-sprintf
...
[src][kservice.c] 修复 snprintf 中 `print_number` 函数错误解析 `%.0d` format 的问题
2019-01-25 10:29:24 +08:00
Bernard Xiong
69994ca210
[Kernel] Fix rt_schedule_insert_thread issue
...
When suspend current thread and then enable interrupt, it's possible resume "the current thread" immediately and insert to ready queue. The rt_schedule_insert_thread should change the status of "current thread" to RUNNING statue.
2019-01-24 09:30:30 +08:00
MurphyZhao
5c76d3d516
[src][kservice.c] 修复 snprintf 中 `print_number` 函数错误解析 `.0` format 的问题
...
Signed-off-by: MurphyZhao <d2014zjt@163.com>
2019-01-21 19:28:44 +08:00
Bernard Xiong
de624c52c1
[Kernel] Enable RUNNING status in thread.
2019-01-13 11:23:08 +08:00
Bernard Xiong
d266d681a1
[kernel] Fix the 64bit issue for idle thread cpu binding.
2018-12-24 09:07:56 +08:00
Bernard Xiong
58be04b693
[kernel] format scheduler log.
2018-12-19 20:10:18 +08:00
Bernard Xiong
a74a3031f0
Merge pull request #2081 from jesven/sync_smp_skeleton
...
Sync smp skeleton
2018-12-18 14:02:04 +08:00
shaojinchun
eff767a074
remove rt_hw_mb define
...
sync smp skeleton
2018-12-17 11:02:09 +08:00
zhaohengbo
10d00ff41c
reduce change
2018-12-15 20:27:38 +08:00
zhaohengbo
afcd8b4521
fix some bug when stack grows upward
2018-12-15 11:20:24 +08:00
Bernard Xiong
f9f959f33e
[Kernel] Fix the thread->sp data type issue.
2018-12-14 22:46:34 +08:00
Bernard Xiong
1f37de29c4
Fix the value width issue under 32/64 bit arch.
2018-12-13 14:54:26 +08:00
shaojinchun
b3e1507bcf
1 RT_THREAD_CTRL_BIND_CPU define to 4
...
2 RTM_EXPORT(rt_cpus_lock_status_restore)
3 sync ARCH_CPU_STACK_GROWS_UPWARD in _rt_scheduler_stack_check()
2018-12-12 09:36:39 +08:00
Bernard Xiong
2a7d814f77
[libcpu] Add unified RISC-V libcpu porting.
2018-12-08 10:41:38 +08:00
armink
a0243d7795
Add RTT version number on Kconfig file.
2018-11-27 13:47:03 +08:00
shaojinchun
94a2e751a5
修正idle.c中一处宏定义位置
2018-11-22 22:06:02 +08:00
shaojinchun
fc6bc1ad39
Add smp support to RT-Thread 4.0
2018-11-22 18:16:47 +08:00
Bernard Xiong
46dae3f35f
Merge branch 'master' into dev-4.0.x
2018-11-20 23:13:45 +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
00a655ac1c
[Kernel] Add ARCH_CPU_STACK_GROWS_UPWARD option
2018-11-11 15:56:02 +08:00
geniusgogo
cca6e38758
Merge branch 'master' into fix_kconfig
2018-11-10 10:47:21 +08:00
geniusgogo
379451c081
code indent
2018-11-10 10:45:36 +08:00
Bernard Xiong
d1c177f48b
[Kernel] Fix typo.
2018-11-09 09:17:43 +08:00
geniusgogo
1b8d7b3557
fixed Kconfig IDLE hook config
2018-11-08 22:25:47 +08:00
armink
83b7b763b7
The dbg_log API is DISCARDED. Change all dbg_log to LOG_X.
2018-11-02 10:20:30 +08:00
Bernard Xiong
b31888de49
[Kernel] Fix the rt_memset/memcpy issue under 64bit ARCH.
2018-11-01 09:09:54 +08:00
Bernard Xiong
432210809d
[Kernel] Fix the data type issue in kservice.c
2018-10-31 21:32:34 +08:00
Bernard Xiong
484afe9d2c
[Kernel] Add 64bit CPU support.
2018-10-26 06:35:42 +08:00
armink
cc0f5ca1cd
[kernel][mem] Improve some ISR check range.
2018-10-23 16:03:17 +08:00
Bernard Xiong
ff08faf605
[Kernel] Adjust the copyright information
2018-09-25 11:06:07 +08:00
Bernard Xiong
b98a0ba804
[Kernel] Add ARMCC 6.x support.
2018-09-23 12:08:44 +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
Bernard Xiong
d74d5801c8
Merge pull request #1751 from RT-Thread/feature_libdl
...
[Kernel] move module to libc/libdl.
2018-08-31 18:41:16 +08:00
Bernard Xiong
efe4523132
[Kernel] move module tolibc/libdl.
2018-08-30 20:27:45 +08:00
Bernard Xiong
60f3d61acd
[Kernel] Fix the compiling warning
2018-08-29 02:35:51 +01:00
yangjie
4a43d3cdae
[src][timer.c]:modify -RT_EOK to RT_EOK
2018-08-23 15:57:45 +08:00
hichard_ren@yeah.net
bbb879717c
add config main thread priority
2018-07-31 17:05:01 +08:00
heyuanjie
c79fbd373f
[lwp]给thread添加lwp成员
2018-07-30 11:12:12 +08:00
liang yongxiang
39d0236194
[kernel] add all RT_DEBUG_* options macro to menuconfig
2018-07-17 20:15:02 +08:00
Bernard Xiong
6964d623aa
[Kernel] Add strdup for armcc
2018-07-15 16:03:40 +08:00
Bernard Xiong
b0dbdf4289
Merge pull request #1621 from armink/fix_idle_hook
...
[idle] Add idle hook list.
2018-07-14 15:20:59 +08:00
armink
d37c289b56
[kernel][idle] Improve rt_thread_idle_sethook and rt_thread_idle_delhook code.
2018-07-14 14:04:08 +08:00
Bernard Xiong
1758f5773e
Merge pull request #1617 from armink/fix_rtdbg
...
Fix rtdbg
2018-07-14 06:46:50 +08:00
armink
e9c165034e
[kernel][idle] Add idle hook list.
2018-07-13 10:02:27 +08:00
liang yongxiang
d645525a0b
[kernel] add assert to module object
2018-07-11 18:31:01 +08:00
liang yongxiang
9945ced57b
[kernel] add assert to thread object
2018-07-11 18:16:39 +08:00
liang yongxiang
f706131fc6
[kernel] add assert to ipc object
2018-07-11 18:02:54 +08:00
liang yongxiang
2bbf98e5ed
[kernel] add assert to timer object
2018-07-11 18:02:51 +08:00
liang yongxiang
0509af9319
[kernel] add assert to memheap object
2018-07-11 18:02:25 +08:00
liang yongxiang
ade8822352
[kernel] add assert to mempool object
2018-07-11 15:00:10 +08:00
liang yongxiang
5213fd0e95
[kernel] splite rt_device_unregister() and rt_device_destroy(), add assert to device object
2018-07-11 14:58:59 +08:00
liang yongxiang
7b984c2f54
[kernel] add rt_object_get_type() function who return type of object without static flag
2018-07-11 14:48:32 +08:00
liang yongxiang
c5ed45237e
[kernel] reset type when object delete or detach
2018-07-11 14:46:35 +08:00
armink
6cd8658dad
[rtdbg] Change all DBG_SECTION_NAME to new format.
2018-07-11 10:23:19 +08:00
Bernard Xiong
ef132f3c94
[Kernel] clean code for indentation.
2018-06-26 11:57:20 +08:00
Bernard Xiong
a1a56ce1d1
[Kernel] Add flag in wait queue and fix wakeup issue.
2018-06-26 11:19:38 +08:00
Bernard Xiong
df64a297ab
[Kernel] Remove memory ops when SLAB and module enable
2018-06-10 18:46:11 +08:00
Bernard Xiong
884fb70fe9
[Kernel] Add device ops feature.
2018-06-10 17:59:17 +08:00
Bernard Xiong
682da9b249
[Kernel] Remove object container in module feature.
2018-06-10 17:56:02 +08:00
guozhanxin
d44790c8f9
[src/ipc.c]adjust rt_event_send() hook function position|调整rt_event_send()钩子函数位置
2018-05-18 19:59:30 +08:00
Bernard Xiong
6ac213d622
Add GCC version detection.
...
Add cconfig.h file for different version of GCC, which is automatically
detected and generated by scons script.
2018-05-14 21:37:11 +08:00
heyuanjie
93afe69c90
添加mdelay接口
2018-05-12 12:08:47 +08:00
Bernard Xiong
3c31567f14
[kernel] Fix vstart_addr issue in module.
2018-04-25 23:25:49 +08:00
liang yongxiang
8dc8382277
[kernel] fixed signed/unsigned mismatch warning
2018-04-09 12:05:49 +08:00
liang yongxiang
b09445cbfe
[Kernel][memheap] fix rt_realloc bugs
...
- missing free old memory after malloc new
- free memory when new size is zero
2018-03-28 10:19:32 +08:00
朱天龙 (Armink)
4e54df820b
[kservice] Update show version year info to 2018.
2018-03-02 08:11:17 +08:00
BernardXiong
38b9ed3118
[Kernel] add sigwait implementation
2018-03-01 13:36:22 +08:00
skawu
2357842f59
没用使用RT_USING_HEAP宏时,增加一条语句用于消除此警告
...
没用使用RT_USING_HEAP宏时,components.c文件第211行会报警告,增加一条语句用于消除此警告(使用四个空格代替TAB)
2018-02-28 22:53:47 +08:00
714826565
d4d22d34d3
没用使用RT_USING_HEAP宏时,components.c文件第211行会报警告,增加一条语句用于消除此警告
2018-02-28 16:04:30 +08:00
emlslxl
2340408e3c
fix code style
2018-02-24 16:10:44 +08:00
parai
74622c6ed3
Fix issue when loading *.o when do internal function call
...
Fox example for the below example code:
#include <stdio.h>
void goodBye(void)
{
printf("Good Bye!\n");
}
int main(int argc, char* argv[])
{
printf("Hello World!\n");
goodBye();
return 0;
}
2018-02-08 20:19:10 +08:00
Bernard Xiong
55e2fabbc5
[kernel] lock scheduler when cleanup thread
2018-02-07 19:55:35 +08:00
Bernard Xiong
1f37c1a497
[Kernel] Fix the object find issue when enable MODULE
2018-01-25 17:46:59 +08:00
BernardXiong
992e10ae08
[Kernel] fix the compiling warning.
2017-12-31 14:45:16 +08:00
Bernard Xiong
e2d88e433e
[Kernel] fix the object container initialization issue
2017-12-25 20:55:20 +08:00
Bernard Xiong
8bb0a1a151
[Kernel] Fix the module object initialization issue
2017-12-24 09:33:47 +08:00
Bernard Xiong
8ff8436fcd
[Kernel] Add device_create/destroy api
2017-12-24 00:06:29 +08:00
Bernard Xiong
5326bd55a5
[Kernel] Add memory trace for small memory management
2017-12-22 14:36:35 +08:00
Bernard Xiong
2f409c85f1
[Kernel] Use rt_object_get_information to get object chain
2017-12-12 07:36:37 +08:00
bernard
ae7237dc53
[BSP] Fix the WIN32 compiling issue.
...
rename _errno to __rt_errno for conflict in WIN32.
2017-11-30 23:56:52 +08:00
Bernard Xiong
7bc87e4ae8
[Kconfig] Rename all of KConfig files to 'Kconfig'
2017-11-30 20:12:53 +08:00
weety
c8e64a629a
[kernel] Fixed module issue.
2017-11-23 11:29:02 +08:00
bernard
21cf0919b4
[Kernel] Update Kconfig to fix memory heap option.
2017-11-13 16:31:05 +08:00
bernard
bbe6425f94
[KConfig] Update Kconfig
...
1. Change the type of RT_DEBUG_THREAD to int;
2. Add Kconfig of VBUS.
2017-11-03 21:08:00 +08:00
ArdaFu
7706316a89
[src]Add missing key RT_USING_INTERRUPT_INFO
2017-11-03 11:11:43 +08:00
flyingcys
f6b71172b5
fix rt_memcpy buf in RT_USING_TINY_SIZE enable
2017-11-02 11:12:55 +08:00
bernard
c733086354
[Kernel] Fix sem_release twice issue in slab.
2017-10-31 11:38:28 +08:00
armink
7a99641c71
[Kernel] Fix a bug on rt_schedule().
2017-10-18 19:15:29 +08:00
bernard
8a38307e2c
[libc] Add RT_USING_POSIX macro.
...
1. Add macro check in rtdebug.h;
2. Use RT_USING_POSIX for poll/select, stdin etc.
3. Split dfs_posix.h to dfs_posix.h, dfs_poll.h and dfs_select.h;
2017-10-17 22:27:06 +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
bernard
326d405c26
[Kconfig] Use 256 as the default stack size for idle thread.
2017-10-09 15:13:19 +08:00
SummerGift
01aa54de2f
[添加]:添加IDLE_THREAD_STACK_SIZE设置。空闲进程栈大小。
2017-10-09 14:22:09 +08:00
SummerGift
75b1c0fbae
[错误]:RT_DEBUG_INIT不能是bool型
...
和一些使用这个宏的components起了冲突,无法编译通过。
2017-09-30 16:47:06 +08:00
bernard
cccff34fca
Merge branch 'master' of https://github.com/RT-Thread/rt-thread
2017-09-29 10:23:56 +08:00
bernard
e9a77b513f
[Kernel] mutex can be used before scheduler startup.
2017-09-29 10:23:49 +08:00
geniusgogo
2aae989f40
Merge branch 'master' into RT_MACRO
2017-09-18 16:27:20 +08:00
xieyangrun
6b06cb83e3
rename WEAK to RT_WEAK
2017-09-18 11:32:13 +08:00
emlslxl
e521decf2e
根据documentation/coding_style_cn.txt约定 对内核src和include目录下的文件代码进行格式化
2017-09-15 11:02:24 +08:00
parai
2957cf6f52
x86: bring up share object module on i386 machine
...
1. upddate kernel module to support i386
2. update libdl to support open *.so by absolute path
3. new test case bsp/x86/src/hello.c to test i386 module feature
Signed-off-by: parai <parai@foxmail.com>
2017-08-20 20:24:07 +08:00
armink
a7e7b3dc02
[Kernel] Fix rt_realloc issue when new size is 0.
2017-08-14 16:09:54 +08:00
Yohozzy
07514c0d0a
fix the end of module symbol bug when using iar compiler
2017-08-06 01:01:47 +08:00
tanek liang
dcfaa9a909
[kernel] fix incompatible type error for "__rt_ffs()"
2017-07-29 14:20:08 +08:00
Bernard Xiong
b9a718b80c
Update components.c
2017-07-24 08:56:49 +08:00
tanek liang
2448b69d02
[kernel] rename RT_TINY_SIZE to RT_USING_TINY_SIZE
2017-07-24 00:28:15 +08:00
tanek liang
d835d91ae8
[kernel] use the macro definition instead of the user main thread
2017-07-24 00:23:35 +08:00
Bernard Xiong
1f0081e796
[Kernel] Fix typo
2017-06-26 09:16:19 +08:00
Bernard Xiong
8437c049e6
[Kernel] Fix the number_mask initialization issue in TCB.
2017-06-15 23:30:18 +08:00
bernard
279fac7cbb
[Kernel] Change RT_USING_IDLE_HOOK as simple definition.
2017-06-07 09:24:22 +08:00
bernard
53f042b44b
Add module feature in KConfig.
2017-06-06 18:21:47 +08:00
geniusgogo
05052127c3
Update idle.c
2017-05-23 11:04:22 +08:00
geniusgogo
3c14a8867d
Update idle.c
2017-05-22 23:53:55 +08:00
geniusgogo
662f619cf6
Update idle.c
2017-05-16 10:42:29 +08:00
xieyangrun
e05186dd95
separate idle hook
2017-05-16 10:02:19 +08:00
朱天龙 (Armink)
c3c26baf6f
Update kservice.c
...
Update year info from 2016 to 2017
2017-04-14 14:55:35 +08:00
armink
2d593a22b7
[Kernel] Fix thread delete and thread detach bug. #712
2017-04-10 09:53:45 +08:00
Bernard Xiong
b1f1536688
[kernel] Add thread_inited_hook.
2017-04-09 19:12:53 +08:00
Bernard Xiong
033d254c4d
[tools] rename KConfig menu name
2017-01-31 13:22:25 +00:00
Bernard Xiong
a1e5a3b309
[Kernel] Fix the Kconfig filename
2017-01-31 10:15:54 +00:00
bernard
2ce7382534
[Kernel] Add rt_kputs routine.
2017-01-31 13:18:20 +08:00
bernard
d692001fd5
[tools] Add KConfig files.
2017-01-31 11:54:12 +08:00
Bluebear233
689f316100
Update components.c
...
修正断言错误
2017-01-02 19:52:00 +08:00
Bluebear233
0d43ebffe1
Update components.c
...
修正断言错误
2017-01-02 19:43:55 +08:00
Bluebear233
8d7686179c
Update components.c
2017-01-01 20:23:27 +08:00
Bluebear233
6c1d60f987
Update components.c
2017-01-01 19:24:52 +08:00
dogandog
20fb863ddf
Correct comments about doxygen format
...
chang /*@{*/ to /**@{*/ and /*@}*/ to /**@}*/
2016-08-19 10:19:46 +08:00
dogandog
2bfacd85ae
Correct comments about doxygen format
...
chang /*@{*/ to /**@{*/ and /*@}*/ to /**@}*/
2016-08-19 10:18:38 +08:00
dogandog
beb005e20d
Correct comments about doxygen format
...
chang /*@{*/ to /**@{*/ and /*@}*/ to /**@}*/
2016-08-19 10:17:36 +08:00
dogandog
70d34bce3c
Correct comments about doxygen format
...
chang /*@{*/ to /**@{*/ and /*@}*/ to /**@}*/
2016-08-19 10:16:07 +08:00
dogandog
ed7088024d
Correct comments about doxygen format
...
chang /*@{*/ to /**@{*/ and /*@}*/ to /**@}*/
2016-08-19 10:15:10 +08:00
dogandog
91fb7ee1d6
Correct comments about doxygen format
...
chang /*@{*/ to /**@{*/ and /*@}*/ to /**@}*/
2016-08-19 10:13:58 +08:00
dogandog
aff68a36cd
Correct comments about doxygen format
...
chang /*@{*/ to /**@{*/ and /*@}*/ to /**@}*/
2016-08-19 10:12:39 +08:00
dogandog
3e249d2169
Correct comments about doxygen format
...
chang /*@{*/ to /**@{*/ and /*@}*/ to /**@}*/
2016-08-19 10:11:38 +08:00
dogandog
4c9bd71f22
Correct comments about doxygen format
...
chang /*@{*/ to /**@{*/ and /*@}*/ to /**@}*/
2016-08-19 10:10:26 +08:00
dogandog
50393389ff
Correct comments about doxygen format
...
chang /*@{*/ to /**@{*/ and /*@}*/ to /**@}*/
2016-08-19 10:08:35 +08:00
dogandog
c314417e0b
Correct comments about doxygen format
...
chang /*@{*/ to /**@{*/ and /*@}*/ to /**@}*/
2016-08-19 10:07:12 +08:00
dogandog
b54e72275a
Correct comments about doxygen format
...
chang /*@{*/ to /**@{*/ and /*@}*/ to /**@}*/
2016-08-19 10:05:00 +08:00
zhangjun
65ac4a0810
增加rt_strnlen,lua采用单独的线程
2016-08-12 22:14:07 +08:00
ArdaFu
189e9b9632
[Kernel] add new hooks for support trace componment.
2016-08-09 11:29:11 +08:00
Jason Pan
e4b138f810
Fix type size for 16bit cpu
2016-08-01 19:06:34 +08:00
Aubr.Cool
99e1b0d29b
[src] scheduler update stackcheck
2016-06-02 09:30:34 +08:00
weety
62e770f9de
Fixed 64KB stack size limit.
2016-05-31 20:39:33 +08:00
Bernard Xiong
c8c4d2edcf
[Kernel] Update year information in version info.
2016-04-18 13:58:01 +08:00
Bernard Xiong
49b1172b8d
[Kernel] change rt_thread_exit() as a global function.
2016-04-05 14:40:49 +08:00
Bernard Xiong
daf488ca77
fix the open_flag initialization issue.
2016-04-02 14:42:38 +08:00
pathletboy
63c51fbfc8
Sorry, fix missed, related #590 .
2015-11-23 16:10:49 +08:00
pathletboy
78c9ddef86
fix code indent.
2015-11-23 13:23:55 +08:00
pathletboy
30cbe3cc3e
add document.
2015-11-22 15:55:19 +08:00
pathletboy
5b03e37ae1
allow parameter "recved" can be null in function "rt_event_recv"
2015-11-21 20:55:41 +08:00
Bernard Xiong
c7bd0aca21
[Kernel] Add rti_board_start to replace rti_start.
2015-11-09 15:25:48 +08:00
yuanbin
5968121332
Thread: Make comments in more accurate way
2015-10-23 21:54:40 +08:00
Bernard Xiong
730592df19
[Kernel] mark the free mem block with HEAP_MAGIC.
2015-09-24 21:07:54 +08:00
Bernard Xiong
d0dcdd11fe
[Kernel] Export more symbols for module.
2015-09-24 20:59:00 +08:00
GalaIO
b886340e67
open and then get the new device
...
in rt_console_set_device, open new device first and get the new device to _console_device.
我在编写程序时,在device驱动中打印log,但是使用rt_kprintf时,如果_console_device存在非空,那就执行驱动的write函数,但是这是device还没有初始化成功,但是已经提前给_console_device赋值,导致了程序无故fault,以上述修改可避开这样的矛盾。
2015-09-10 22:59:51 +08:00
Bernard Xiong
266496cef3
[Kernel] Use rt_assert_handler() function to handle assertion.
2015-08-03 16:07:30 +08:00
Bernard Xiong
abd19b8dd7
[Kernel] More better support for module.
2015-08-03 16:02:24 +08:00
Bernard Xiong
db73a31ec8
[Kernel] Fix compiling warning.
2015-08-03 16:02:02 +08:00
Bernard Xiong
783753d943
[Kernel] export more symbols.
2015-08-03 16:01:50 +08:00
ardafu
9201cbc29b
[Kernel Init] Add support to use RT_USING_USER_MAIN with IAR
2015-07-29 09:58:26 +08:00
armink
892eac2cce
[kservice]add hook for RT_ASSERT
2015-06-11 10:59:25 +08:00
prife
1b1908b35d
[kservice] fix rt_strcmp/strncmp/strlen prototype
2015-05-20 20:40:57 +08:00
pangwei
be7b8421a5
[Kernel]when the macro of RT_USING_COMPONENTS_INIT is not open ,then remove the source of components.c from the project.
...
Signed-off-by: pangwei <271372443@qq.com>
2015-05-20 15:21:29 +08:00
Bernard Xiong
2d27251d21
[Kernel] fix the Keil MDK compiling warning.
2015-05-18 18:09:16 +08:00
Bernard Xiong
90e95eca54
[Kernel] Rename init.c to components.c in kernel to avoid same file name issue.
2015-05-04 20:38:22 +08:00
Bernard Xiong
9339c2d96e
[Kernel] Fix main() issue in Keil MDK
2015-04-24 11:48:24 +08:00
Grissiom
b3214ed45f
SConscript: fix LINKFLAGS over-written
...
Fix a regression on 62a0172d11
.
2015-04-14 18:34:09 +08:00
Grissiom
54f8b19e12
SConscript: fix the `--keep` parameter for Keil
...
The old `--keep` parameter for Keil is wrong. RTFM of Keil and get it
right.
2015-04-14 18:22:46 +08:00
Bernard Xiong
4b838caaf8
Merge remote-tracking branch 'upstream/master'
2015-04-10 06:34:02 +00:00
Grissiom
2d3b2f1e94
memheap: check the USED bit in rt_memheap_free
...
This will ease the debugging of double-free bug.
2015-04-08 16:39:50 +08:00
Bernard Xiong
655054b1c5
[Kernel] Use main function in the Keil MDK
2015-04-03 14:27:56 +00:00
Bernard.Xiong
62a0172d11
[Kernel] Fix the system initialization link issue
2015-03-22 09:06:48 +08:00
Bernard Xiong
fbd620a7f4
[Kernel] Move the components initailzation to the kernel
2015-02-25 10:50:21 +08:00
Bernard Xiong
b83b1ee53d
[Kernel] Change the copyright date information
2015-01-21 14:19:01 +08:00
Grissiom
f8c171d5ad
memheap: check against over written in rt_memheap_free
2015-01-16 11:41:20 +08:00
Grissiom
57b5c74a71
rt_kprintf: force the open_flag to be RT_DEVICE_FLAG_STREAM
...
Commit a6251a439e
changed the serial device to check open_flag
instead of flag. So we should change the rt_kprintf counterpart as well.
2015-01-04 19:43:33 +08:00
Grissiom
c045281ee2
object: fix module name testing
2014-12-24 12:10:00 +08:00
Grissiom
4bb6c8cf0c
module: add !__CC_ARM when test __GNUC__
...
ARMCC will define __GNUC__ in "GNU mode"(with --gnu command line
option). So iff __GNUC__ && !__CC_ARM is GCC.
2014-12-01 18:54:55 +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
Bernard Xiong
bd6b39cace
Update device.c
2014-09-19 14:29:03 +08:00
bernard
3b5c2e2f9f
Merge branch 'master' of https://github.com/RT-Thread/rt-thread
2014-09-11 12:55:18 +08:00
bernard
1f3ea02c5a
[Kernel] Use stream mode to open console device.
2014-09-11 12:54:05 +08:00
bernard
b23de95ff4
[Kernel] comments clean up.
2014-09-11 12:51:52 +08:00
bernard
ab786679c7
[Kernel] comments clean up.
2014-09-11 12:50:41 +08:00
Grissiom
d4133990b0
kernel/idle: fix rt_thread_idle_excute in high optimization level
...
The rt_list_isempty has prototype of "int rt_list_isempty(const rt_list_t *l)".
So the compiler has a good reason that the rt_thread_defunct list does
not change within rt_thread_idle_excute thus optimize the "while" loop
into a "if".
So add the volatile qualifier when test against the rt_thread_defunc list.
2014-09-02 17:21:31 +08:00
tcz717
c0629b342e
fix:comment spelling mistake
...
relation=>relocation
2014-08-24 23:46:31 +08:00
Grissiom
b8bf6bef76
kernel: mempool: fix race condition in rt_mp_alloc
...
When thread wake up from waiting for memory, there is a chance that
there is no memory available in high pressure. So use a loop to check
again. Otherwise, there will be a NULL reference.
2014-08-20 10:16:04 +08:00
bernard
33fed1b167
[Kernel] Better documentation for doxygen.
2014-07-21 06:29:15 +08:00
bernard
4e2a6cc361
[Kernel] The rt_object_find routine can support to find an object inside a module. The usage is: rt_object_find("module_name/object_name").
2014-07-21 06:28:43 +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
bernard
1e7b089494
[Kernel] Remove rt_device_init_all implemetation.
2014-07-10 13:34:52 +08:00
bernard
a1766b6c71
Add WEAK definition;
2014-06-26 14:47:53 +08:00
Grissiom
dc366ecf7a
device: only increase the ref_count when device is truly opened
2014-06-18 11:16:21 +08:00
Grissiom
a78e42a7c8
[mempool] reset the thread->error before suspending thread
...
Time out result and other errors is recorded in thread->error. Dirty
error will screw up the error handling code after the thread has been
wake up.
2014-04-16 10:59:33 +08:00
bernard
8bd3e6f6dc
[Kernel] Change command line to const parameter and add system() function.
2014-04-02 14:05:15 +08:00
bernard
dbcb4a1ccf
[Kernel] declare more APIs in module
2014-03-11 15:44:35 +08:00
bernard
898e0d2f3f
[Kernel] stop thread timer when suspend a thread
2014-03-11 14:19:24 +08:00
bernard
31446eab4c
[Kernel] application module can support arguments
2014-01-11 16:33:31 +08:00
Grissiom
04f432f47b
kernel: let rt_thread_idle_excute loop until there is no dead thread
...
Out side world is difficult to tell whethere there is dead thread
remaining. If rt_thread_idle_excute only do one cleanup, it's hard to
finish cleanups outside the idle thread. So let is loop and do all the
cleanups in one call.
2013-12-21 11:31:40 +08:00
Grissiom
408ac34bc2
kernel: add rt_critical_level that return the lock count of scheduler
...
Out side world may be interested in whether the scheduler is locked or
not. Provide an API to tell that.
2013-12-21 11:27:26 +08:00
Grissiom
6d9e793388
kernel: timer: fix compiling bug in d59aa279c3
2013-10-19 21:07:14 +08:00
Bernard Xiong
3eac58ce8e
Merge pull request #173 from grissiom/new-timer
...
kernel: use skip list to implement timer list
2013-10-17 15:44:20 -07:00
Bernard Xiong
c29ff6b0ac
Merge pull request #161 from aozima/pulls
...
make sure the device is in STREAM mode when used by rt_kprintf.
2013-10-17 15:43:56 -07:00
Grissiom
b72001fcac
kernel: mutex could only be released in thread context
...
Mutex has the idea of ownership, only the thread which owns the mutex
can release it. So rt_mutex_release could only be called in thread
context. Add a debug guard to it.
2013-10-14 09:50:18 +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
Grissiom
6f71308ef5
kernel: add RT_DEBUG_IN_THREAD_CONTEXT
...
In thread context means: 1) the scheduler has been started; 2) not in
interrupt context. It is more stronger than RT_DEBUG_NOT_IN_INTERRUPT.
With this commit, you will catch the error on situations like taking
mutex before scheduling instead of crashing on NULL pointer reference.
2013-10-11 22:51:38 +08:00
aozima
cad12ee14e
update rt_kprintf: make sure the device is in STREAM mode when used by rt_kprintf.
2013-09-24 15:29:08 +08:00
Grissiom
7b0a3afdf9
kservice: export vsnprintf as rt_vsnprintf
...
vsnprintf is a common string function that could be used in many places.
Using both vsnprintf in libc and vsnprintf in the RTT could make a
bigger image. Moreover, if newlib is not enabled when compiling with
GCC, referencing vsnprintf will lead to link error:
.../arm-none-eabi/lib/armv7-ar/thumb/softfp/libc.a(lib_a-sbrkr.o):
In function `_sbrk_r':
sbrkr.c:(.text._sbrk_r+0xc): undefined reference to `_sbrk'
collect2: error: ld returned 1 exit status
Using rt_vsnprintf could avoid such problem.
2013-09-23 11:34:13 +08:00
Grissiom
c465bc2c2e
rt_event_recv: add a check on the option flag
...
Either RT_EVENT_FLAG_AND or RT_EVENT_FLAG_OR should be set in the option
flag. If none of them is present, the waiting thread will never be
resumed.
2013-09-14 13:12:23 +08:00
Grissiom
ad17bc2908
fix debug output of scheduler
...
When print the thread names, we should use "%.*s" instead of bare "%s".
2013-08-19 10:08:11 +08:00
bernard
b96b35613f
add mount table
2013-07-22 07:46:10 +08:00
Grissiom
c3a39444da
memheap: dont alloc/memcpy when there is next node is enough for realloc
...
When realloc a bigger space and the next node is free and big enough, we
should directly relocate the next node instead of doing alloc/memcpy.
The new method not only faster in this cases, it would avoid memory
fragment as well.
2013-07-15 11:47:55 +08:00
Bernard Xiong
2c33678aac
fix the memory block splitting issue
2013-07-11 16:20:28 +08:00
Grissiom
7bcce9e87f
device: add ref_count support
...
This is a simple work around to the current device stack design. A
ref_count could let different modules to open/close the same device
independently without interfere others in some degree.
But there is still some data shared between the modules, like flag,
open_flag and user_data. Moreover, it won't yield an error if A open a
device, and B read from it before open it in B. Maybe alloc a new handle
in rt_device_open will be the ultimate solution. But that is much bigger
change and we may leave it to future development.
2013-07-09 15:44:55 +08:00
yiyue.fang
86db9ed965
reformat the coding style
...
convert Tabs to spaces
2013-06-29 10:00:14 +08:00
Bernard Xiong
79392bb082
Embedded GPLv2 license.
2013-06-24 17:06:09 +08:00
Bernard Xiong
b23dd15990
Update kservice.c
2013-06-24 00:09:52 +08:00
Bernard Xiong
98c8a23e94
Add component initialization.
2013-06-23 07:48:42 +08:00
Bernard Xiong
d80a471680
Fix the memheap_realloc issue
2013-06-03 06:44:35 +08:00
Bernard Xiong
4afdf44da2
add RT_KERNEL_MALLOC/FREE
2013-04-25 14:22:07 +08:00
Bernard Xiong
608bf2cb3d
add rt_memheap_realloc function
2013-04-17 22:09:48 +08:00
yiyue.fang
bdeb0e501f
update the version information
...
2006 - 2013 Copyright by rt-thread team
2013-04-10 03:58:33 +08:00