rt-thread
rt-thread copied to clipboard
RT-Thread is an open source IoT real-time operating system (RTOS).
- 为什么没有抽出为同一个函数,不同点进行处理既可 - 是效率问题吗? https://github.com/RT-Thread/rt-thread/blob/b586889216a4cbe7995498b40ae3a69110b3a2d4/src/timer.c#L774-L843 https://github.com/RT-Thread/rt-thread/blob/b586889216a4cbe7995498b40ae3a69110b3a2d4/src/timer.c#L670-L750
## 拉取/合并请求描述:(PR description) [ #### 为什么提交这份PR (why to submit this PR) Replace the former implementation of flag-based spinlock which is unfair. Besides, C11 atomic implementation is more readable (it's C...
## 拉取/合并请求描述:(PR description) [ #### 为什么提交这份PR (why to submit this PR) #### 你的解决方案是什么 (what is your solution) #### 请提供验证的bsp和config (provide the config and bsp) - BSP: - .config: - action:...
- [x] 内核:整理kservice.c/.h - [ ] 部分BSP的HAL库需要拆成软件包的方式,不能把HAL库嗷嗷往主仓提交,例如STM32的HAL库 - https://github.com/RT-Thread/rt-thread/pull/8907 - [x] pin框架read返回值从rt_uint8_t 改为rt_ssize_t - [ ] 使用os.join.path函数,而不是直接用/连接路径 - [ ] 整理BSP - [ ] MM32 - [x] NXP - [x]...
## 拉取/合并请求描述:(PR description) [ #### 为什么提交这份PR (why to submit this PR) #### 你的解决方案是什么 (what is your solution) #### 请提供验证的bsp和config (provide the config and bsp) - BSP: - .config: - action:...
- 单元测试提供的宏太少了,对比其[Unity](https://github.com/ThrowTheSwitch/Unity)测试框架来说的话 - 对于断言失败也没有退出机制,还得自行手动退出 https://github.com/ThrowTheSwitch/Unity/blob/25ca536caf5c085c453917fe139b3303b8a36e9d/src/unity.h#L102-L691
发现自 #8664 之后,所有 BSP 里 Kconfig 的 “option env=” 特性都无效了, 进一步对比以前的代码,是 kconfiglib.py 的函数“_parse_block”处少了如下代码: ``` if node.item.env_var: if node.item.env_var in os.environ: os.environ[node.item.name] = os.environ[node.item.env_var] else: os.environ[node.item.name] = ((node.defaults[0])[0]).name ``` 此特性还要用吗?是不是以后还会修复?如果已经永久停用了,是不是应该清理所有 BSP...
## 拉取/合并请求描述:(PR description) [ #### 为什么提交这份PR (why to submit this PR) 修复C++11 thread_local对象析构函数与实际内存释放动作顺序相反问题 原实现方案缺陷:顺序遍历_pthread_key数组,调用TLS析构函数,这导致可能首先遍历到emutls_key_destructor清除实际分配内存,后续才遍历到对象析构函数,造成use after free内存安全隐患,例如,当对象中存在指针时,需要先调用析构函数释放对应指针空间 #### 你的解决方案是什么 (what is your solution) 使用emutls_pthread_key作为标志,从emutls_pthread_key标志前一个index开始倒序遍历, 使得emutls_key_destructor最后被调用 #### 请提供验证的bsp和config (provide the config and...
Make it easier and safer for users to suspend the current thread. ## 拉取/合并请求描述:(PR description) [ #### 为什么提交这份PR (why to submit this PR) 用户在不是很了解的情况下挂起自身线程,可能不会调用`rt_schedule`。 更新 src/thread.c 中的`rt_thread_suspend`函数,使挂起当前线程更方便、更安全。 #### 你的解决方案是什么 (what...
## 拉取/合并请求描述:(PR description) [ #### 为什么提交这份PR (why to submit this PR) #### 你的解决方案是什么 (what is your solution) #### 请提供验证的bsp和config (provide the config and bsp) - BSP: - .config: - action:...