Commit Graph

1033 Commits

Author SHA1 Message Date
螺丝松掉的人 9f38248f11
[src][scheduler] Split scheduler.c (#7103) 2023-03-29 19:04:26 +08:00
Yaochenger de4f237482
[atomic]添加arm与risc-v下的常用原子操作函数 (#7053)
* Update Kconfig
* Update trap_gcc.S
* Update bsp/hifive1/drivers/SConscript

Co-authored-by: Man, Jianting (Meco) <920369182@qq.com>
* Update SConscript
* [atomic]提交一份arm与risc-v架构下的常用原子操作函数
* 修改变量类型
* 更新rtatomic.h与atomic_port.c
* 更新rt-thread\libcpu\arm\common\atomic_port.c
* 更新include/rtatomic.h与libcpu/arm/common/SConscript
* 更新include/rtatomic.h
* 修正格式与Kconfig
* 修正格式与文件结构

* 规范文件格式与文件重命名
* 添加测试用例与CI
* 添加函数声明
* 修改virt64/SConscript 添加atomic_riscv.c
  * 1.规范代码风格
  * 2.添加RISC-V64原子指令支持 解决在RV64下编译器将32-bit运算结果扩展为64-bit 导致判断错误
* 添加C11标准库原子操作测试

---------

Co-authored-by: Man, Jianting (Meco) <920369182@qq.com>
2023-03-23 20:06:50 +08:00
Meco Man 0f461e870c [errno code][-RT_ERROR] fix that use RT_ERROR without - 2023-03-20 00:06:16 -04:00
Shell 64cd64baf9
[mutex] mutex may suspend a thread already suspended & fix ceilingprio (#7046)
* [fix] reinsert should not suspend twice

* [mutex] fix prioceiling

* [mutex] fix prioceiling
2023-03-13 19:21:41 +08:00
Man, Jianting (Meco) 423f0c6134 Revert "[kernel][timer] 修复在IAR下数据类型报错 (#6804)"
This reverts commit 93a7cff44c.
2023-03-01 02:11:59 -05:00
bernard 75c3261181 [Kernel] Fix the alignment issue for memheap. 2023-02-28 17:32:36 -05:00
zhkag 111a5b88cb smart select POSIX timer clock 2023-03-01 00:37:20 +08:00
zhkag feed84b258 fix rt_kprint 64bit error 2023-02-21 15:49:30 +08:00
wangxiaoyao 26891e9117 [fix] pipeline 2023-02-21 08:48:49 +08:00
wangxiaoyao ed58f6676d [src] add assertion for debugging 2023-02-21 08:48:49 +08:00
Meco Man f58d3c5200 rt_device_write/read return data type as rt_ssize_t
rt_ssize_t can give negative error code, which follows the unix style correctly
2023-02-07 21:43:57 -05:00
tuduweb 9fbf63441e
[doxygen] Fix some warnings in doxygen (#6899) 2023-02-02 21:00:58 -05:00
Bernard Xiong 8945e8d9ed
[Kernel] Add Smart ID in logo show (#6898) 2023-02-02 16:36:55 +08:00
supperthomas d5a5a32273 [doxygen][src] Fix the comment in rt_custom_object_create
Signed-off-by: supperthomas <78900636@qq.com>
2023-01-19 09:14:54 -05:00
Meco Man ddccef3a64 modify RT_ALIGN_SIZE as 8 by default 2023-01-12 22:47:23 -05:00
Shell 7450ef6c4d
[rt-smart] kernel virtual memory management layer (#6809)
synchronize virtual memory system works.
adding kernel virtual memory management layer for page-based MMU enabled architecture
porting libcpu MMU codes
porting lwp memory related codes
2023-01-08 21:08:55 -05:00
Man, Jianting (Meco) 93a7cff44c
[kernel][timer] 修复在IAR下数据类型报错 (#6804) 2023-01-02 12:42:55 +08:00
Meco Man a2676b0544 [kernel] RT_NAME_MAX set the range from 1
RT_NAME_MAX为0是nano中使用,完整版中不支持const name
2022-12-26 01:35:14 -05:00
Man, Jianting (Meco) 061af7b092
[kenel] add static name for rt_object (#6422)
增加静态object 名字,用户可以根据内存实际使用情况决定使用动态还是静态。适用于资源极度受限的情况下使用。该功能在RT-Thread完整版本中不常用,主要用于RT-Thread Nano,以缩减对内存的占用。由于没有动态拼接支持,在静态名字下,空闲线程的名字在多核时将命名成相同的名字。
2022-12-20 22:36:32 -05:00
Shell e8504c7cf1
[smart/aarch64] code sync (#6750)
* [smart/aarch64] sync aarch64
2022-12-20 17:49:37 +08:00
guo 68ca9f07a6
[rt-smart] 弱化 RT_USING_LWP,使用 RT_USING_SMART 作为宏配置 (#6740)
* [dfs] sync cromfs

* [rt-smart]Weaken RT_USING_LWP, use RT_USING_SMART as macro configuration

* [format] fix some format issue.
2022-12-16 18:38:28 +08:00
Man, Jianting (Meco) 99bdf978d7
[rtdef] use lower-case to define attributes (#6728)
* [rtdef] rename RT_WEAK attribute as rt_weak

* [rtdef] rename RT_USED attribute as rt_used

* [rtdef] rename RT_SECTION attribute as rt_section

* [rtdef] rename ALIGN attribute as rt_align

* [legacy] add RT_USED ALIGN RT_SECTION RT_WEAK as legacy support
2022-12-11 13:12:03 -05:00
guo ecf2d82159
sync branch rt-smart. (#6641)
* Synchronize the code of the rt mart branch to the master branch.
  * TTY device
  * Add lwP code from rt-smart
  * Add vnode in DFS, but DFS will be re-write for rt-smart
  * There are three libcpu for rt-smart:
    * arm/cortex-a, arm/aarch64
    * riscv64

Co-authored-by: Rbb666 <zhangbingru@rt-thread.com>
Co-authored-by: zhkag <zhkag@foxmail.com>
2022-12-03 12:07:44 +08:00
Man, Jianting (Meco) 10451fb95b Revert "[kernel] 修正复制name字段时潜在的内存踩踏问题"
This reverts commit 2d17fe736f.
2022-11-21 21:32:13 -05:00
Meco Man d1c353f6b6 [kernel] 优化Sconscript脚本 2022-11-14 22:20:23 -05:00
Meco Man 2d17fe736f [kernel] 修正复制name字段时潜在的内存踩踏问题 2022-11-14 19:20:06 -05:00
Bernard Xiong 79e298147b
Merge pull request #6523 from BernardXiong/nested_mutex
[Kernel] Add nested mutex feature
2022-11-06 08:59:12 +08:00
liangyingjian 6da7ee128b [update]更正 RT_MEMHEAP_BSET_MODE -> RT_MEMHEAP_BEST_MODE 拼写错误。 2022-11-05 10:45:09 -04:00
Man, Jianting (Meco) e9a2dc0e02
Update src/ipc.c 2022-10-25 23:39:03 -04:00
Yunjie Gu 8fa9fde43a
[bsp][c28x] add support to not disable global interrupt in context-switch to enable zero-latency isr for critical interrupts. 2022-10-19 23:41:13 -04:00
Bernard Xiong 63b97db64a [Kernel] Remove the debug definition for mutex 2022-10-17 08:01:48 +08:00
Bernard Xiong e645c95eb8 [Kernel] Trim trailing spaces in ipc.c 2022-10-16 18:23:26 +08:00
Bernard Xiong 6823a5110b [Kernel] Add prioceiling feature in mutex 2022-10-16 17:58:51 +08:00
Bernard Xiong 34c77da153 [Kernel] Add nested mutex feature 2022-10-15 16:19:13 +08:00
Frank Buss e80facfd06 remove unused code to improve speed
The RT_ASSERT(obj != object) line is only compiled for debug mode.
But the rt_enter/exit_critical causes the compiler not to optimize
at least these 2 calls, even if it could optimize out the whole loop,
because the rt_list_entry function has no side effect, and RT_ASSET
is a no-operation in release mode. So this patch fixes this:
- no warnings anymore
- better speed in release mode
2022-10-08 22:37:41 -04:00
Tangyuxin ca30428cee
修复低概率终端无法输入问题 (#6464)
* [ulog] Fix the problem that the terminal cannot input

* [mem] Fix NULL pointer access
2022-09-27 11:11:29 +08:00
Tangyuxin a4829b1c00
[fix] Fix simulator compilation warnings (#6438)
* [fix] Fix simulator compilation warnings

* Update bsp/simulator/rtconfig_project.h

Co-authored-by: Man, Jianting (Meco) <920369182@qq.com>
2022-09-20 10:31:11 -04:00
tangyuxin 655beb3bda [memheap] Fix the Oz optimization problem of AC6 compiler 2022-09-19 23:30:44 -04:00
Meco Man ce16945cba [kernel][version] 采用新的版本宏定义
版本控制规范:https://semver.org/

目前的版本子号不是很规范,其中RT_VERSION甚至和VS那边造成了冲突
```c
/* RT-Thread version information */
#define RT_VERSION                      4L              /**< major version number */
#define RT_SUBVERSION                   1L              /**< minor version number */
#define RT_REVISION                     1L              /**< revise version number */
```

参考ESP32:
```c
/** Major version number (X.x.x) */
#define ESP_ARDUINO_VERSION_MAJOR   2
/** Minor version number (x.X.x) */
#define ESP_ARDUINO_VERSION_MINOR   0
/** Patch version number (x.x.X) */
#define ESP_ARDUINO_VERSION_PATCH   3
```

建议改成:
```c
/* Major version number (X.x.x) */
#define RT_VERSION_MAJOR   4
/* Minor version number (x.X.x) */
#define RT_VERSION_MINOR   2
/* Patch version number (x.x.X) */
#define RT_VERSION_PATCH   0
```
2022-09-07 10:11:45 -04:00
winfenggao cbbea1a0f5
[kservice] 增加printf格式2进制和8进制,RT_KPRINTF_USING_LONGLONG 和 RT_PRINTF_SPECIAL 做了相应处理 (#6361)
* 增加printf格式2进制和8进制,RT_KPRINTF_USING_LONGLONG 和 RT_PRINTF_SPECIAL 做了相应处理
2022-09-02 10:00:28 +08:00
Yunjie Gu 945486c29e
[kservice][ti c28x]rt_vsnprintf (#6349) 2022-08-31 15:30:59 -04:00
Ylne bfa357958d [kernel] 当tick为0时rt_thread_sleep不应该挂起线程 2022-08-31 13:57:43 +08:00
Ylne 069086ae28 [kernel] 为rt_thread_sleep添加上下文检查 2022-08-31 13:56:49 +08:00
YuQi b11cb41ae7
tms320f28379d fix init (#6343)
解决 tms320f28379d bsp 启动的问题。主要改动如下。

修正context.s中汇编代码错误。在旧版的代码中,操作数为32位而汇编命令却使用了针对16位数据的命令MOV,导致程序在某些情况无法正常启动线程。
由于C28x的平台下,SP只支持16bit寻址,所以用于线程空间存放的heap以及ebss段都需要放在低16位的空间,针对这个问题修改了CMD文件。此外还增加基于CMD文件基于RAM的支持,方便调试。
新增rtdef.h中RT_SECTION,RT_USED,ALIGN和RT_WEAK的定义。旧版bsp中这些定义为空,导致INIT_EXPORT注册的函数失效。
修改程序启动代码,在程序入口直接调用原生启动代码
以上改动在LAUNCHXL-F28379D 通过了测试。
2022-08-29 15:35:23 -04:00
Man, Jianting (Meco) 7d58cf1644
change version number to v5.0.0 (#6291) 2022-08-28 23:28:30 +08:00
Meco Man 43ede1859a [kernel] 优化内置线程命名
main线程栈指定对齐字节数
2022-08-25 10:11:35 +08:00
Yunjie Gu d49ac097ab
[kernel] 修复 rt_memset 使其 word size independent.
For compatibility with 16bit addressing 32bit CPU (e.g. TI C28x).
2022-08-24 17:12:11 -04:00
Yunjie Gu b43f0e7205
[bsp][tms320f28379d] Fix compile ti (#6254)
* compile_ok

Issues fixed:
(1) update .config: select FINSH_USING_SYMTAB
(2) add rt_size_t in rtconfig_project.h
(3) fix finsh problems of using sym table
(4) update .project to include ipc source codes.
Todo list:
(1) automate the build source selection of ccs and reconcile it with scons

* change compiler

* msh can run now

the key step is to swap the order of rt_interrupt_nest -- and RT_OBJECT_HOOK_CALL(rt_interrupt_leave_hook,()) in irq.c. This is an improvised solution and an issue has been raised.

* Update 2837x_FLASH_lnk_cpu1.cmd

The original one is also fine. Just to make it more rigorous since FSymTab is in data section.

* update readme.md

Complier selection and maintainer update.

Co-authored-by: YuQi <qiyu_sjtu@163.com>
2022-08-20 13:16:41 -04:00
blta 7750358bed [kernel/schedule] fix the time slice issue 2022-08-16 00:05:56 -04:00
Meco Man ef659661d4 [kservice] 增加换行符 2022-08-14 21:49:43 -04:00
xiangxistu e61d05ca1a
[fix] the risk for function exit() when open pthread support. (#6229)
* [fix] the risk for function exit() when open pthread support.
* [update] modify annotation from "user data" to "pthread_data".
2022-08-07 23:16:17 -04:00
dongly 3363586cbb
Fix some compilation warning (#5744)
* Fix some compilation warning

* 补充修正一些数据类型的使用错误

Co-authored-by: Meco Man <920369182@qq.com>
2022-08-02 12:09:49 -04:00
a1012112796 697bf139b2
[enhancement] Add string information for error (#3186)
* [enhancement]Add string information for error

* Update src/kservice.c

* Update src/kservice.c

Co-authored-by: Man, Jianting (Meco) <920369182@qq.com>

* remove %m

Signed-off-by: a1012112796 <1012112796@qq.com>

Co-authored-by: Meco Man <920369182@qq.com>
2022-06-29 14:21:21 +08:00
rewine c13b03604f [kernel][mem.c] tighten size before check with mem_size_aligned 2022-06-22 14:11:43 +08:00
朱天龙 (Armink) 33be34d8ec [kservice] add NULL check for rt_free and rt_free_align. 2022-06-13 21:14:14 +08:00
Meco Man 99a1c36f02 attach: remove strnlen #6026 2022-06-08 14:45:10 +08:00
Jianhui Zhao 20029456d3
[fix] remove the executable permission of thread.c (#6001)
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2022-06-02 06:58:48 +08:00
HubretXie 18116a3879
[kernel][timer] fixed bug (#6004) 2022-05-28 08:32:11 +08:00
liuxianliang 9f5a9b6bc8 [modify] the recycle logic about resource of pthread. 2022-05-18 08:44:30 +08:00
Man, Jianting (Meco) 1bdde74343
[kernel] update comments for rt_thread_suspend (#5887)
* [kernel] update comments for rt_thread_suspend
2022-04-29 14:46:28 +08:00
Man, Jianting (Meco) 62d2403ebe
[kernel] beautify code (#5890) 2022-04-29 08:59:53 +08:00
Man, Jianting (Meco) 4a12bc2ad8
[kernel] rename _rt_scheduler_stack_check as _scheduler_stack_check (#5889) 2022-04-29 06:35:12 +08:00
Man, Jianting (Meco) 6295ec108e
[kernel] remove the register keyword (#5888) 2022-04-29 06:34:42 +08:00
Stanley ef7280826f
correct descriptions (#5849)
* correct descriptions

correct descriptions in ipc.c and timer.c

Co-authored-by: Stanley <stanleylwinn@gmail.com>
2022-04-21 09:35:17 +08:00
Man, Jianting (Meco) 41631fe712
modify version to v4.1.1 (#5847) 2022-04-20 15:31:51 +08:00
thewon86 f5b0bfd3f4 uniform code writing-disable interrupt 2022-04-20 14:22:43 +08:00
Meco Man 5e9f525c41 [kernel] enable RT_DEBUG_DEVICE by default and move weak rt_hw_dealy_us in kservice.c 2022-04-19 11:26:41 +08:00
Stanley 2fa40dd602
Fix/parameter name (#5815)
* Update ipc.c

Parameter name standardization

Co-authored-by: Stanley <stanleylwinn@gmail.com>
2022-04-15 15:32:07 +08:00
Stanley d664edd64e Update ipc.c
Resolved feedbacks
2022-04-11 14:06:30 +08:00
Stanley eefc6d7825 Add descriptions
dd descriptions for rt_mq_recv and rt_sem_take timeout parameters
2022-04-11 14:06:30 +08:00
Man, Jianting (Meco) 03823b5016
[kconfig] add 64bit default value for stack size. set tick HZ as 1000 by default (#5778)
* [kconfig] add 64bit default value for stack size. set tick HZ as 1000 by default

* 用RT_KSERVICE_USING_STDLIB_MEMXXX代替RT_KSERVICE_USING_STDLIB_MEMCP/MEMSET
将RT_KSERVICE_USING_STDLIB设置为默认开启

* 优化rt_kprintf支持longlong的能力,默认在64位CPU为开启状态
RT_PRINTF_LONGLONG命名不规范,更改为RT_KPRINTF_USING_LONGLONG

* fix commit error

* fix error

* 优化 system 函数

* RT_KSERVICE_USING_STDLIB_MEMXXX->RT_KSERVICE_USING_STDLIB_MEMORY
2022-04-09 00:40:36 +08:00
Meco Man 6cf3256d4c [device.c] fix the comment, add RT_DEBUG_LOG 2022-03-27 23:19:25 -04:00
Tangyuxin 88de4f726d
[kservice] Fix 64 bit compilation warning (#5649) 2022-03-21 14:07:04 +08:00
guo 4562ae1246
[kernel] Revert modifications to the semaphore (#5682) 2022-03-17 14:48:14 +08:00
Man, Jianting (Meco) fa8c4bcaa2
[kernel][thread.c] remove duplicated clear to 0 (#5659) 2022-03-11 17:24:53 +08:00
guo 52d0dc691c
[kernel]Fixed issue that could all timers stop (#5637) 2022-03-07 11:53:34 +08:00
Chester guo 01b3a34cc6
[Fix bug] fix thread init bug (#4891)
When we create thread A by rt_thread_init but do
    not init the thread object,and then create thread
    B in the thread A,it maybe crash.
2022-02-17 00:44:37 +08:00
tyustli 5178e7ec0b
[add] src/clock.c add hook for rt_tick_increase (#5569)
* [add] src/clock.c add hook for rt_tick_increase

* [fix] clock.c rt_tick_incerase hook function

* Update clock.c

Co-authored-by: guo <guozhanxin@rt-thread.com>
2022-02-13 14:50:51 +08:00
guozhanxin 615824b5e3 [fix] memheap using assertions before scheduler starts. 2022-02-10 10:22:08 +08:00
Henson 500d26c257 optimize code 2022-01-26 21:39:06 +08:00
guozhanxin 9b44535740 add RT_DEBUG_SCHEDULER_AVAILABLE check 2022-01-26 16:03:31 +08:00
Man, Jianting (Meco) 5a0fea6987
[Kconfig][libcpu] 增加ARCH_CPU_BIG_ENDIAN (#5547)
* [cpu] 增加ARCH_CPU_BIG_ENDIAN
- 之前RT_USING_BIG_ENDIAN的命名并不合理,予以替换为ARCH_CPU_BIG_ENDIAN
- 删除一处多余的ARCH_CPU_64BIT
- 整理了libcpu/Kconfig的格式

* [libcpu][Kconfig] Cortex-M4&7 select ARCH_ARM_CORTEX_FPU

* revert last commit
2022-01-25 15:00:47 +08:00
thewon86 4db9cfbebe return thread error when resumed by signal 2022-01-25 13:58:33 +08:00
Man, Jianting (Meco) 0f6e2bbf27
[kservice] rt_show_version更新年份 (#5552) 2022-01-24 14:20:09 +08:00
Meco Man 36cbc1fd2f [workqueue] time参数改为ticks,防止误解单位为ms 2022-01-20 20:58:46 +08:00
Meco Man 1874bd25aa [timer] improve parameter checking 2022-01-20 20:58:46 +08:00
Meco Man 65ecca80ee [kernel] improve comments 2022-01-20 20:58:46 +08:00
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
Meco Man d6d84ed055 [kernel][pm] beautify code 2022-01-17 19:07:17 -05:00
Meco Man ebe9fc5771 [kservice] fix the problem of rt_strlen crashed in win32 2022-01-14 23:13:28 +08:00
Meco Man 3ac9eece5a [kernel] rt_thread_suspend/resume增加注释 2022-01-14 22:59:19 +08:00
Bernard Xiong 43e7186a99
Merge pull request #5443 from mysterywolf/removeinit
[kernel] remove .init_priority
2022-01-14 22:55:54 +08:00
guo 0f77fab0a1
Merge pull request #5510 from Eureka1024/master
[kernel]Delete an extra semicolon
2022-01-12 09:53:38 +08:00
杨澄 eab086122e
[kernel]Delete an extra semicolon 2022-01-11 21:25:08 +08:00
Man, Jianting (Meco) c6852aa306
Merge branch 'master' into removeinit 2022-01-10 14:25:46 -05:00
Gabriel Wang 844f2ef76f
Merge branch 'master' into master 2022-01-08 20:07:54 +00:00
Gabriel Wang 6bb9e546de change all double-empty-lines to single-empty-lines 2022-01-08 20:04:43 +00:00
Meco Man dd62b2b106 [kservice] 增加RT_KSERVICE_USING_STDLIB_MEMSET RT_KSERVICE_USING_STDLIB_MEMCPY 2022-01-09 00:23:18 +08:00
Man, Jianting (Meco) bb1084556f [console] 解决在没有定义RT_USING_DEVICE的情况下使用device报错的问题
* [console] 解决在没有定义RT_USING_DEVICE的情况下使用device报错的问题

* format codes

* [libc] 整理格式

* refresh projects
2022-01-09 00:20:32 +08:00
tangyuxin 09f439bcc2 [memheap] Fix 64 bit potential risk 2022-01-08 15:50:14 +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
guozhanxin 0e5dd7d1ab update Kconfig, add RT_HOOK_USING_FUNC_PTR 2022-01-05 15:48:42 +08:00
Meco Man e6cd32a1ad [kernel] 将rt_thread_timeout设置为私有函数 2021-12-30 01:30:21 +08:00
Meco Man f1ba7c65ad [kernel] rt_thread_suspend增加断言 2021-12-30 01:27:54 +08:00
Meco Man 1f2e93f1a3 [kernel] remove .init_priority 2021-12-27 20:34:35 -05:00
Meco Man 457348e21a [kservice] implement rt_strcpy() 2021-12-22 13:04:45 +08:00
Meco Man 093b9700c8 [kservice] remove RT_USING_ASM_MEMCPY RT_USING_ASM_MEMSET 2021-12-19 08:45:08 -05:00
jihongbin eda0df469e [update] Correct some code comments 2021-12-16 18:43:45 +08:00
Tangyuxin d724eed9fc
分离内存分配接口与内存分配算法 (#5175)
* [kernel][mem] Multiple instances of small memory allocation algorithm

* [kernel][mem] Change small memory management algorithm memory header flag

* [kernel][mem] Fix assertion problem

* [kernel][slab] Multiple instances of slab memory management algorithm

* [kernel][memheap] Remove rt_malloc/rt_free/rt_realloc and other related memory interfaces

* [kernel][mem] Clean up memory space of small memory management objects

* [kernel][kservice] Add memory application interface and thread protection interface

* [kernel][kservice] Fix function return value problem

* [kernel][memheap] Optimize memheaptrace print

* [kernel][memheap] Support best mode

* [kernel][memory] Remove semaphore lock

* [kernel][memheap] Add locked flag

* [kernel][memory] Support malloc memory in interrupt

* [kernel][memheap] Add 'memheapcheck' cmd

* [kernel][mem] Fix failure to request full memory

* [kernel][memheap] Fix compilation warning

* [kernel][mem] Fix mem realloc ASSERT

* [examples][testcases] Add small mem testcase

* [examples][mem_tc] Modify test memory size

* [examples][testcases] Add slab memory management algorithm test case

* [examples][testcases] fix small memory management algorithm test case

* [kernel][memory] Adjusting memory allocation algorithm object definition and interface

* [kernel][memory] Fix compilation warning

* [examples][utest] Fix mem test case

* [examples][utest] fix slab test case

* [utest][testcases] Shorten test time

* [kernel][memory] Formatting code

* [examples][utest] Adjust test run time

* [examples][utest] Formatting code

* [bsp] update all rtconfig.h
2021-12-16 16:23:58 +08:00
zhouji ee1e85455a [update] 使用memheap内存管理算法时,对rt_system_heap_init传入的地址进行对齐。 2021-12-14 06:16:59 +08:00
zhouji 3327ffaa15 [update] 使用memheap内存管理时,rt_malloc 0长度返回RT_NULL, 与slab与小内存管理等算法保持一致。 2021-12-14 06:16:59 +08:00
guo 1e03864fcb
Merge pull request #5278 from thewon86/master
remove duplicate work between idle and thread_exit
2021-12-10 18:55:10 +08:00
guo fda37d55f8
Merge pull request #5319 from RT-Thread/master
【PSE分支】同步master到PSE分支
2021-12-02 10:09:37 +08:00
Bernard Xiong 7c012afdf8
Merge pull request #5314 from GuEe-GUI/master
fixup .bss size define in link.lds and set spsel=1 in aarch64
2021-12-01 09:18:50 +08:00
GuEe-GUI efbdbc2636 fixup .bss size define in link.lds and set spsel=1 in aarch64 2021-11-30 11:14:17 +08:00
Meco Man 2d505d8ffd [kservice] 精简RT_PRINTF_PRECISION 2021-11-27 23:52:34 -05:00
Meco Man e13230ba72 [kernel] 整理Kconfig 2021-11-27 18:34:44 -05:00
Meco Man 6a863ef65c [kservice] 优化RT_PRINTF_LONGLONG,减少重复代码 2021-11-27 18:30:41 -05:00
thewon86 5ae6b54e21 remove duplicate work between idle and thread_exit 2021-11-26 09:13:18 +08:00
armink 75063a1b5e [timer] update the RT_TIMER_CTRL_GET_STATE code in rt_timer_control 2021-11-25 15:31:43 +08:00
Meco Man 7c789d4b11 revise some RT_USING_POSIX to RT_USING_POSIX_DEVIO 2021-11-24 09:47:55 -05:00
Bernard Xiong 6a6b43fe3e
Merge pull request #5261 from mysterywolf/weak
[kernel] prepare to support full functional sprintf-family functions
2021-11-24 17:38:15 +08:00
Meco Man cc44316410 [master] modify version to v4.1.0 2021-11-19 17:27:43 -05:00
Meco Man 857428bd23 [kservice] add return value's comment 2021-11-16 18:54:40 -05:00
Meco Man 5e19b71eca 将返回值类型由signed int改为int,符合ISO C标准,防止编译器报错 2021-11-16 03:41:26 -05:00
Jianting (Meco) Man b98539e3f8
Merge branch 'master' into weak 2021-11-11 10:55:44 -05:00
Bernard Xiong 301856ac95
Merge pull request #5063 from Eureka1024/master
[kernel]增加一种新的查找字节最低非0位的算法
2021-11-11 10:18:29 +08:00
杨澄 216cd309ea
Update kservice.c 2021-11-09 23:32:51 +08:00
杨澄 e509b9fe32
Update Kconfig 2021-11-09 23:30:18 +08:00
Meco Man da0bb7f629 [kservice] add RT_WEAK for rt_vsnprintf 2021-11-07 13:24:07 -05:00
杨澄 46fe85e2c2
精简简化版的__rt_ffs()函数 2021-11-07 15:51:24 +08:00
杨澄 e6e9062977
Update kservice.c 2021-11-07 14:57:02 +08:00
guo 389d2f948a
Merge pull request #5203 from HelloByeAll/master
【更新】ipc init/create增加 flag 判断
2021-10-21 10:16:37 +08:00
HelloByeAll a5b684d29c 【更新】删除空行上的tab 2021-10-19 16:50:09 +08:00
wangqinglin 758ef39024 【更新】调整RT_ASSERT和RT_DEBUG_NOT_IN_INTERRUPT,维持代码风格 2021-10-19 10:13:25 +08:00
wangqinglin 4c4f107436 【更新】ipc init/create增加 flag 判断 2021-10-19 09:39:45 +08:00
Meco Man bd24c67d06 define RT_USING_BIG_ENDIAN for the long-term version 2021-10-18 17:41:14 -04:00
guozhanxin 0546b4b524 Merge remote-tracking branch 'remotes/gitee/gitee_master' 2021-10-14 14:07:13 +08:00
mazhiyuan d006905c88 修改size_t为rt_size_t 2021-10-13 16:23:06 +08:00
Bernard Xiong 0c82690f32
Merge pull request #5160 from cndabai/bsp
修复部分bsp编译报错
2021-10-13 15:40:38 +08:00
mazhiyuan 99e9ea61bc 修复部分bsp编译报错 2021-10-13 11:02:01 +08:00
Meco Man 663991897b fixed bug #5138 2021-10-12 21:47:57 -04:00
nrush 861c579c60 [Kernel] Add build time to the boot printing
When the firmware is built many times in a day, we can not distinguish
them by current boot printing for the lack of compile time. So, it is
necessary to add __TIME__ to rt_show_version().

Signed-off-by: nrush <1741598985@qq.com>
2021-10-11 15:25:26 +00:00
Bernard Xiong 173913b96e
Merge pull request #4872 from aozima/aozima_memheap_develop
优化memheap内存管理:1.自动多块粘合可配置;
2021-09-27 14:16:17 +08:00
liukangcc d99737d8a9 [update] functions annotation. 2021-09-18 16:56:44 +08:00
aozima 2e5b4736fe [kernel] update memheap auto binding policy. 2021-09-18 10:12:33 +08:00
杨澄 1ef31445fd
[src][Kconfig] 增加隐性RT_KSERVICE_USING_TINY_FFS定义 2021-09-15 00:10:35 +08:00
杨澄 9d8afc8ede
增加一种新的查找字节最低非0位的算法 2021-09-15 00:07:24 +08:00
Bernard Xiong 065f9586d0
Merge pull request #5047 from ShermanShao/master
[kservice] 完善 API 注释
2021-09-14 22:35:07 +08:00
Bernard Xiong b2c64b7977
Merge pull request #5039 from Guozhanxin/kernel_comment
Improve the Kernel comment
2021-09-14 22:33:51 +08:00
Bernard Xiong f76a192fb3
Merge pull request #5040 from yangjie11/comments
[kernel]Normalized kernel API annotation
2021-09-14 22:32:57 +08:00
guozhanxin 6cb093aa27 [kernel] Improve code comments. 2021-09-14 21:55:06 +08:00
Sherman d586417bb7 [kservice] 完善 API 注释 2021-09-14 11:32:11 +08:00
yangjie fe5d506ef2 【增加】memheap.c 2021-09-13 16:20:31 +08:00
liukangcc 202b23371d [update] thread.c api annotation. 2021-09-13 13:58:18 +08:00
yangjie 464d0c5a97 [kernel] update comments 2021-09-11 16:40:56 +08:00
liukangcc 48c7a455e6 [update] src/thread.c function description. 2021-09-10 18:18:37 +08:00
guozhanxin e6f5282f6e [kernel] Improve the code comment of the cpu.c 2021-09-10 18:08:32 +08:00
yangjie 5de6996670 [kernel]update format 2021-09-10 17:51:52 +08:00
yangjie a912a2f88f [kernel]Normalized kernel API annotation 2021-09-10 17:31:31 +08:00
guozhanxin e562c6f24b [kernel] 裁剪尾随空格 2021-09-10 16:31:31 +08:00
guozhanxin ce1402f773 [kernel] Improve the code comment of the components.c 2021-09-10 15:52:50 +08:00
guozhanxin 921e6057aa [clock] Improve the code comment of the clock.c 2021-09-10 15:52:03 +08:00
guozhanxin 4e4f381fec [add] a comment for the signal 2021-09-04 17:48:12 +08:00
Bernard Xiong c89e7e43ed
Merge pull request #4976 from mysterywolf/finsh_kconfig
[finsh] finsh组件可以选择是否包含内置命令
2021-09-02 10:03:03 +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
Meco Man 1997113fbc FINSH_USING_BUILT_IN_COMMANDS改MSH_USING_BUILT_IN_COMMANDS 2021-08-28 16:48:08 -04:00
supperthomas 320c44adf8 add the fixed comment 2021-08-28 23:33:13 +08:00
Meco Man 29828dc94f [finsh] finsh组件可以选择是否包含内置命令 2021-08-25 19:48:15 -04: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
supperthomas 33a6700f16 add the comment of irq.c 2021-08-15 23:04:22 +08:00
Bernard Xiong a6df4391ed
Merge pull request #4924 from GuEe-GUI/master
[bsp/virt64/aarch64]添加qemu-virt64-aarch64平台
2021-08-10 18:03:07 +08:00
GuEe-GUI b7dd004de0 [bsp/virt64/aarch64] Add 'qemu-virt64-aarch64' bsp 2021-08-06 18:35:58 +08:00
Meco Man 67f2f323a2 [kernel] 规范内部函数命名 2021-08-06 15:20:27 +08:00
Bernard Xiong 054f6db3e6
Merge pull request #4760 from mysterywolf/Internafunction
[kernel] 规范内核内部函数命名
2021-08-05 16:57:16 +08:00
Meco Man c10678c1f0 内部函数以_开头 2021-08-04 10:53:17 +08:00
Meco Man b339b5cf33 [src][Kconfig] 增加隐性RT_USING_ASM_MEMCPY定义 2021-08-03 12:05:07 +08:00
rtthread-bot 7ef6bb4a0d Merge remote-tracking branch 'rtt_gitee/gitee_master' 2021-07-15 16:26:44 +00:00
liuduanfei 4e40129e57 Kconfig 中添加 RT_PRINTF_LONGLONG 的选择,默认不选择 2021-07-15 08:30:17 +00:00
liuduanfei 1d276ac4b3 清除 kservice.c 中对 RT_PRINTF_LONGLONG 的支持 2021-07-15 08:28:30 +00:00
liuduanfei f33c89ce5a 64位模式下 默认支持 RT_PRINTF_LONGLONG 2021-07-14 07:02:56 +00:00
xukai c0e48f0417 [components][kernel] 解决多核下 finsh 不能响应串口输入问题 2021-07-09 17:37:46 +08:00
chenjh 9f3e349f69 [comment] Optimize the comment for ipc 2021-07-09 10:54:51 +08:00
Bernard Xiong a28fd885b0
Merge pull request #4846 from fenghuijie/master
修改irq handle接口rt_hw_trap_irq,支持核间IPI中断处理
2021-07-07 20:24:19 +08:00
Meco Man 6e334416e3 [ipc][mutex] 补充注释 2021-07-07 10:16:49 +08:00
Meco Man edcdd126ed [kernel][ipc] 移除mutex RT_IPC_FLAG_FIFO 功能 2021-07-07 09:47:09 +08:00
fenghuijie 0015af02e4 调整代码,以支持cpu usage 2021-07-05 18:33:22 +08:00
fenghuijie 05bb1a50b0 添加idle回收资源的修改 2021-07-03 17:54:58 +08:00
Bernard Xiong 8a23d0ccf2
Merge pull request #4796 from mysterywolf/__CLANG_ARM
将defined(__CC_ARM) || defined(__CLANG_ARM) 改为 ifdef __ARMCC_VERSION
2021-06-24 21:05:05 +08:00
杨澄 ec3c1d4d00
[kernel] Fix comment error for rt_mutex_detach(). 2021-06-23 21:23:07 +08:00
Meco Man 921e606426 将defined(__CC_ARM) || defined(__CLANG_ARM) 改为 ifdef __ARMCC_VERSION 2021-06-13 17:36:42 +08:00
guo b24447a60a
Merge pull request #4785 from mysterywolf/endif
[kernel] 补充endif后缀注释
2021-06-13 09:39:52 +08:00
Bernard Xiong 2be1cb420f
Merge pull request #4788 from yangjie11/memheap
[src] add RT_WEAK for rt_malloc_align,rt_free_align
2021-06-12 11:56:52 +08:00
Meco Man 4fa92ae3f6 [kernel] 补充endif后缀注释(4) 2021-06-11 13:13:36 +08:00
yangjie fa1f1ef485 [src] add RT_WEAK for rt_malloc_align,rt_free_align 2021-06-11 10:00:23 +08:00
Meco Man 8b53609f57 [kernel] 补充endif后缀注释(3) 2021-06-10 18:39:43 +08:00
Meco Man e019a57ff3 [kernel] 补充endif后缀注释(2) 2021-06-10 17:58:31 +08:00