Linux TMP 自旋锁

自旋锁

在多处理器环境下,用于保护数据。

自旋锁锁住的进程一直旋转,而不是睡眠,因此能够用在中断等禁止睡眠的场景。

示例代码:

spin_lock(shost->host_lock);
shost->host_busy++;
spin_unlock(shost->host_lock);

信号量

类似于自旋锁,也是保护数据。

但是,如果无法获取信号量时,进程将进入睡眠状态 ⇒ 所以不能在中断中使用。

原子变量

原子变量提供 原子的、不可中断的 操作。如下所示:

atomic_t mapped

内核还提供系列源自变量操作函数:

atomic_add()
atomic_sub()
atomic_set()
atomic_read()

The post 「Linux」- TMP appeared first on K4NZ BLOG.

本文《Linux TMP 自旋锁》由网赚联盟( wangzhuan.org.cn )整理或原创,感谢您的阅读。

随机文章

SEO教程
站长导航
关键词排名优化
网站内容优化
GEO培训
SEO小小课堂网
站长导航
友情链接交换

百度搜索“网赚联盟”即可找到本站,微信搜索“小小课堂网”关注小小课堂网公众号。网赚联盟( wangzhuan.org.cn )欢迎用户投稿,发布者:用户投稿,文章版权归作者所有,投稿文章不代表网赚联盟立场,中二少年发布为网赚联盟原创文章,转载请注明出处:https://wangzhuan.org.cn/200313.html