OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4669|回复: 1

内核定时器实验,为啥要用自旋锁保护修改定时器周期?

[复制链接]

42

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
238
金钱
238
注册时间
2019-8-20
在线时间
90 小时
发表于 2022-4-19 16:11:19 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 sn3707 于 2022-4-19 16:12 编辑

IOCTL函数:
case OPEN_CMD:
spin_lock_irqsave(&dev->lock, flags);
timerperiod = dev->timeperiod;
spin_unlock_irqrestore(&dev->lock, flags);

定时器函数内;
spin_lock_irqsave(&dev->lock, flags);
timerperiod = dev->timeperiod;
spin_unlock_irqrestore(&dev->lock, flags);

难道就是为了保护多个进程在IOCTL时候正好遇到定时器去更改?

回复

使用道具 举报

527

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165777
金钱
165777
注册时间
2010-12-1
在线时间
2124 小时
发表于 2022-4-19 23:19:08 | 显示全部楼层
帮顶
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /1 下一条

正点原子公众号

如发现本坛存在违规或侵权内容, 请点击这里发送邮件举报 (或致电020-38271790)。请提供侵权说明和联系方式。我们将及时审核依法处理,感谢配合。

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2026-3-31 12:46

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表