Commit Graph

311 Commits

Author SHA1 Message Date
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