社区
Linux_Kernel
帖子详情
驱动多线程中频繁使用mdelay会对系统造成问题吗?
donny0923
2012-01-14 07:59:57
驱动中开一个线程一直在运转,然后每隔100us(使用udelay延时),就操作一次硬件,那么这个100us会受到应用层阻塞线程或者 其他阻塞的影响么?
...全文
308
3
打赏
收藏
驱动多线程中频繁使用mdelay会对系统造成问题吗?
驱动中开一个线程一直在运转,然后每隔100us(使用udelay延时),就操作一次硬件,那么这个100us会受到应用层阻塞线程或者 其他阻塞的影响么?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
德生coding
2012-01-16
打赏
举报
回复
楼上两位都说得很不错!顶一下!
dongjiawei316
2012-01-15
打赏
举报
回复
udelay是忙等待,会一直占着你的CPU的,如果你循环每操作一次硬件就udelay一下,那么你其他应用程序几乎都不能跑了。。。。
建议msleep,虽然是ms级的。但是他不会一直占着你的CPU
deep_pro
2012-01-14
打赏
举报
回复
驱动开的是内核线程 跟普通进程一样是可以调度的
udelay是靠死循环实现的延迟,当你的内核线程没有占用cpu时,很可能超过1ms都不会执行你的程序
100us是小于进程可能的最小时间片的 (HZ=1000时,1ms才产生一个时钟中断,假设时间片为1个jiffes,1ms才可能发生进程切换,轮到你的内核线程)
所以这是靠不住的,会受到其他阻塞进程的影响
你需要使用内核高精度定时器 ,一般的内核定时器都不能达到us级
这种时间级别的操作,应该都有装用的硬件控制器来做
RT-Thread与LVGL整合实战:
多线程
HMI游戏开发与性能优化
本文基于STM32F429平台,详述RT-Thread实时操作系统与LVGL嵌入式GUI库的深度整合方法,涵盖显示/触摸
驱动
适配、LVGL心跳线程设计、
多线程
架构(UI/逻辑/动画分离)、消息队列通信机制、双缓冲与局部刷新优化、内存池配置及坐标映射调试等关键技术,实现轻量级交互式HMI游戏“Lucky 3”的流畅运行。
STM32F103移植RT-Thread实战:从零构建
多线程
应用与深度裁剪
本文详细阐述在STM32F103C8T6上基于Keil MDK5移植RT-Thread v3.1.5的完整流程,涵盖BSP适配、SysTick时钟配置、PendSV上下文切换、串口
驱动
与FinSH控制台启用、静态内存管理、深度内核裁剪、线程栈优化及
多线程
应用开发。重点解决资源受限下的RAM/Flash优化、HardFault调试、FinSH运行时诊断等关键技术
问题
。
RT-Thread下elmfat文件系统调试:从挂载失败到缓存一致性的实战解决方案
本文详述在RT-Thread嵌入式系统
中
调试elmfat文件系统的全过程,涵盖挂载失败(如“no such device”)、块设备初始化时序
问题
、文件读写异常、缓存一致性导致的数据丢失与内存破坏、
多线程
/
中
断安全访问、扇区与缓存配置调优、内存碎片防控,以及FinSH日志、压力测试和逻辑分析仪等调试手段。核心聚焦DFS抽象层、SDIO
驱动
、FAT元数据一致性及嵌入式缓存管理等关键技术点。
RT-Thread互斥锁实战:解决
多线程
资源竞争与串口数据错乱
本文深入剖析RT-Thread互斥锁机制,涵盖优先级继承防反转、与信号量的本质区别、API实战(初始化/临界区保护/递归锁)、死锁预防策略、锁粒度与性能优化、msh调试技巧,以及面向对象封装等工程实践。重点解决
多线程
下串口等共享资源竞争导致的数据错乱
问题
,强调安全、实时与可调试性。
RT-Thread completion:嵌入式
多线程
同步的隐藏宝藏
本文深入剖析RT-Thread
中
completion(完成量)这一轻量级同步原语,阐述其作为一次性事件通知机制的核心设计:仅支持单次完成、无忙等待、语义清晰。对比信号量与事件集,突出其在设备初始化、生产者-消费者单批同步、异步操作回调等场景下的简洁性与高效性。涵盖超时控制、
中
断安全调用、重置陷阱及混合IPC死锁规避等关键实践要点,强调其在嵌入式
多线程
同步
中
的精准适用边界。
Linux_Kernel
4,469
社区成员
17,458
社区内容
发帖
与我相关
我的任务
Linux_Kernel
Linux/Unix社区 内核源代码研究区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章