Bernard Xiong
da7751c044
Merge pull request #3129 from jesven/fix_same_prio
...
修正相同优先级任务切换太频繁的问题
2019-11-12 22:47:18 +08:00
Bernard Xiong
6fca4a7722
[Kernel] Fix the signal issue when the context switch is triggered but not immediately handled.
2019-11-12 21:23:56 +08:00
shaojinchun
cdaf8c65ca
修正rt_thread_delete在特定点被切走后不能回来继续执行的问题
2019-11-12 16:02:24 +08:00
shaojinchun
e03ac83ad3
将yield状态置于tcb的stat位域中
2019-11-05 08:41:38 +08:00
shaojinchun
9a38bba168
使can_yield成员的赋值更好理解
2019-10-12 11:57:27 +08:00
shaojinchun
b53bd79783
同步单核时的同优先级切换问题
2019-10-12 11:52:08 +08:00
shaojinchun
234af6aaa2
修正相同优先级任务切换太频繁的问题
2019-10-12 10:51:47 +08:00
Bernard Xiong
413fcba30a
Merge pull request #3108 from enkiller/master
...
[kernel][ipc] 修复创建0长度的消息队列宕机问题
2019-09-29 09:28:30 +08:00
Bernard Xiong
71311b73ae
[Kernel] Fix the wrong indentation
2019-09-28 12:26:48 +08:00
Bernard Xiong
5cd6509296
[Kernel] cleanup code of spinlock in SMP Kernel
2019-09-28 11:56:03 +08:00
shaojinchun
cb07e5fb24
开放spinlock相关函数
2019-09-27 14:38:33 +08:00
tangyuxin
255825835e
[kernel][ipc] 修复创建0长度的消息队列宕机问题
2019-09-27 14:21:52 +08:00
tangyuxin
e4671d2916
[kernel][ipc] add send wait support for message queue
2019-09-19 10:10:02 +08:00
Bernard Xiong
ae7a33c27c
Merge pull request #3077 from jesven/fix_mempool
...
修正rt_mp_free有可能唤醒一个错误任务指针的问题
2019-09-17 14:11:14 +08:00
shaojinchun
ae1fdc70f0
修正rt_mp_free有可能唤醒一个错误任务指针的问题
2019-09-16 16:55:40 +08:00
yangjie
e7cb38c9c3
[src]解除组件初始化与使用user main的依赖
2019-09-11 12:01:24 +08:00
LinJieqiang
d16d78c53e
fix spelling mistake for "RT_IDEL_HOOK_LIST_SIZE"
2019-09-05 08:33:12 +08:00
iglencao
37de4d6054
Create IPC.ipch
...
这里注释应该由semaphore改为mutex
2019-08-10 22:45:00 +08:00
tyustli
85a9f5add9
fix bug in Thread.cpp/Thread.h/components.c files
2019-07-27 17:33:36 +08:00
tangyuxin
6a170ddbe4
[src][idle] 修复一处编译警告
2019-07-13 09:30:23 +08:00
tangyuxin
df3a9e573f
[src][irq] 添加 WEAK 修饰,中断嵌套数可由外部提供。
2019-07-12 11:15:20 +08:00
tyx
c8e27adf1f
[src][ipc]完善 message queue 相关定义
2019-07-09 21:34:56 +08:00
guozhanxin
5e6f852cbe
[src/mempool.c] add parameter check.|添加参数检查。
2019-07-01 12:56:12 +08:00
tyustli
d8eb0cfc1e
fix kernel and framework no cast type error
2019-06-18 20:09:19 +08:00
Bernard Xiong
3463a756d9
[kernel] skip warning when disable debug.
2019-06-07 22:44:24 +08:00
armink
6408aac04a
Update the version number to 4.0.2
2019-05-17 13:49:32 +08:00
HubretXie
edccf1c07d
Update kservice.c
...
修复rt_kprintf输出long long类型数据问题
2019-05-16 10:24:54 +08:00
shaojinchun
8dd2a07d45
去除scheduler.c的_get_highest_priority_thread函数中重复判断
2019-05-11 13:51:50 +08:00
shaojinchun
057c7da3a3
修改signal模块默认log级别
2019-05-11 09:37:39 +08:00
shaojinchun
c5249157d7
增加signal的状态位说明及一处代码修改,以防止编译警告
2019-05-11 09:35:26 +08:00
shaojinchun
737d58fbb9
修正_get_highest_priority_thread中对“是否只有idle可运行”判断位置的问题
2019-05-11 09:35:17 +08:00
shaojinchun
6cdfb2ac92
fix signal code
2019-05-11 09:34:26 +08:00
Bernard Xiong
2bf9ba0675
Merge pull request #2661 from BernardXiong/pre-release_v4.0.1
...
Pre-release for v4.0.1
2019-05-09 12:57:47 +08:00
Bernard Xiong
43c1236ec9
[Kernel] code cleanup for indentation.
2019-05-09 08:57:24 +08:00
Bernard Xiong
4127cc13bf
[Kernel] Move the ++/-- operator outside of condition.
2019-05-09 08:48:38 +08:00
EvalZero
c57f2370ad
[components][pm]improve low power management components
2019-05-06 18:17:55 +08:00
shaojinchun
7bcee9bcb1
semaphore结构中value仍改为uint16_t,加入对其设置范围的检测,加入对齐变量
2019-04-24 09:14:00 +08:00
yangjie
ce51a27f87
[src/components.c]remove the repetitive rt_hw_interrupt_disable() function before rtthread_startup()
2019-04-15 17:56:19 +08:00
armink
fa4d4ab7cf
Update all of debug log definition to DBG_TAG and DBG_LVL.
2019-04-12 10:18:57 +08:00
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
Bernard Xiong
1abaa0492d
implement __rt_ffs in kernel service library
2013-03-23 11:27:29 +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
Bernard Xiong
72782e9203
convert end of line
2013-01-08 05:05:02 -08:00
dzzxzz@gmail.com
965c25d3a4
fixed the coding style in memheap.c
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2569 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-30 16:11:12 +00:00
bernard.xiong@gmail.com
975610477e
Add RT_USING_MEMHEAP_AS_HEAP feature: system can use "heap" memheap as system default memory heap.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2554 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-29 12:29:03 +00:00
dzzxzz@gmail.com
4952adb4f0
fixed coding style in src/slab.c
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2527 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-25 09:24:41 +00:00
dzzxzz@gmail.com
ff65841125
fixed coding style in src/scheduler.c
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2526 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-25 09:17:21 +00:00
dzzxzz@gmail.com
dec45642fb
fixed coding style in src/mempool.c
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2525 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-25 09:10:39 +00:00
dzzxzz@gmail.com
dc5a16861a
fixed coding style in src/memheap.c
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2524 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-25 08:35:19 +00:00
dzzxzz@gmail.com
07ea5e8fec
fixed coding style in src/mem.c
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2523 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-25 08:27:29 +00:00
dzzxzz@gmail.com
55f1cb72b6
fixed coding style in kservice.c
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2522 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-25 08:23:12 +00:00