我是靠谱客的博主 健康蛋挞,最近开发中收集的这篇文章主要介绍linux同步锁总结,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Linux 同步锁总结

 

锁的基本原理就是一个简单的计数器;

很多锁本身不能用于进程间共享数据的同步(特别是内核中常用的锁),但是在应用层有办法可以用于进程间的数据同步(比如:在共享内存中)

 

在应用层常用:

1.       pthread_mutex_t

定义成全局变量,常用于线程间数据的同步

2.       信号量

常用于进程间数据的同步

 

由于应用层的进程是单独的虚拟进程空间,地址空间不一致,所以在应用层用于进程间数据同步的同步锁,需要采用一定的办法。

 

在内核层常用:

在内核中,经常会用到数据同步,但是内核中使用的虚拟地址空间都是一样的,所以内核中定义的锁(全局变量),在能访问到的地方都可以使用:

1.       自旋锁 spin_lock

2.       大读者锁

3.       顺序锁

4.       atomic 原子操作

5.       Per-CPU 变量

 

内核中用到的锁,都是可以移植到应用层去使用。后续有机会,在讲讲内核中的锁吧!

最后

以上就是健康蛋挞为你收集整理的linux同步锁总结的全部内容,希望文章能够帮你解决linux同步锁总结所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部