码迷,mamicode.com
首页 >  
搜索关键字:自旋锁    ( 344个结果
内核同步机制
内核中用于临界区保护下的互斥机制,它包括自旋锁、原子操作和信号量,三者保证了对临界资源访问的互斥型。1.1 内核中的互斥机制1.1.1 自旋锁自旋锁用在多个CPU系统中。当一个线程在一个CPU上正使用资源,而另一个线程在另一个CPU上正忙等待这个资源的时候,就会用到自旋锁来保护临界资源。在单处理器系...
分类:其他好文   时间:2015-04-29 00:41:07    阅读次数:180
Linux驱动设计——并发控制
四种并发控制机制:原子操作、自旋锁、信号量和完成量。原子变量操作原子变量操作绝对不会再执行完毕前被任何其他任务或事件打断。原子操作需要硬件的支持,因此是架构相关的,其API和原子类型的定义都定义在内核源码树中的include/asm/atomic.h文件中,它们都是使用汇编语言实现的。常用于多个应用...
分类:系统相关   时间:2015-04-17 22:08:13    阅读次数:245
自旋锁spin_lock和raw_spin_lock
自旋锁spin_lock和raw_spin_lockhttp://blog.csdn.net/droidphone/article/details/7395983本文不打算详细探究spin_lock的详细实现机制,只是最近对raw_spin_lock的出现比较困扰,搞不清楚什么时候用spin_loc...
分类:其他好文   时间:2015-04-16 21:41:17    阅读次数:172
linux设备驱动第五篇:驱动中的并发与竟态
目录[-]综述信号量与互斥锁Completions 机制自旋锁其他的一些选择不加锁算法原子变量与位操作seqlock(顺序锁)读取-拷贝-更新(RCU)小结综述在上一篇介绍了linux驱动的调试方法,这一篇介绍一下在驱动编程中会遇到的并发和竟态以及如何处理并发和竞争。首先什么是并发与竟态呢?并发(c...
分类:系统相关   时间:2015-04-11 22:21:37    阅读次数:307
linux设备驱动第五篇:驱动中的并发与竟态
在上一篇介绍了linux驱动的调试方法,这一篇介绍一下在驱动编程中会遇到的并发和竟态以及如何处理并发和竞争。 首先什么是并发与竟态呢?并发(concurrency)指的是多个执行单元同时、并行被执行。而并发的执行单元对共享资源(硬件资源和软件上的全局、静态变量)的访问则容易导致竞态(race conditions)。可能导致并发和竟态的情况有: SMP(Symmetric Multi-Pr...
分类:系统相关   时间:2015-04-11 14:55:06    阅读次数:257
浅析线程间通信三:Barriers、信号量(semaphores)以及各种同步方法比较
之前的文章讨论了互斥量、条件变量、读写锁和自旋锁用于线程的同步,本文将首先讨论Barriers和信号量的使用,并给出了相应的代码和注意事项,相关代码也可在我的github上下载,然后对线程各种同步方法进行了比较。     Barriers     Barriers是一种不同于前面线程同步机制,它主要用于协调多个线程并行(parallel)共同完成某项任务。一个barrier对象可以使得每个...
分类:编程语言   时间:2015-04-02 22:40:38    阅读次数:468
自旋锁spin_lock和raw_spin_lock(转)
1. 临界区(Critical Section)我们知道,临界区是指某个代码区间,在该区间中需要访问某些共享的数据对象,又或者是总线,硬件寄存器等,通常这段代码区间的范围要控制在尽可能小的范围内。临界区内需要对这些数据对象和硬件对象的访问进行保护,保证在退出临界区前不会被临界区外的代码对这些对象进行...
分类:其他好文   时间:2015-03-14 10:59:25    阅读次数:153
Java并发包源码学习之AQS框架(二)CLH lock queue和自旋锁
上一篇文章提到AQS是基于CLH lock queue,那么什么是CLH lock queue,说复杂很复杂说简单也简单, 所谓大道至简:CLH lock queue其实就是一个FIFO的队列,队列中的每个结点(线程)只要等待其前继释放锁就可以了。AbstractQueuedSynchronizer...
分类:编程语言   时间:2015-03-11 22:51:46    阅读次数:191
java锁的种类以及辨析(转载)
java锁的种类以及辨析(一):自旋锁锁作为并发共享数据,保证一致性的工具,在JAVA平台有多种实现(如 synchronized 和 ReentrantLock等等 ) 。这些已经写好提供的锁为我们开发提供了便利,但是锁的具体性质以及类型却很少被提及。本系列文章将分析JAVA下常见的锁名称以及特性...
分类:编程语言   时间:2015-03-01 23:36:21    阅读次数:1195
浅析线程间通信二:读写锁和自旋锁
上文讨论了互斥量和条件变量用于线程的同步,本文将讨论读写锁和自旋锁的使用,并给出了相应的代码和注意事项,相关代码也可在我的github上下载。  读写锁  对于互斥量要么是锁住状态要么是不加锁锁状态,而且一次只有一个线程可以对其加锁,而读写锁对线程的读数据加锁请求和写数据加锁请求进行了区分,从而在某些情况下,程序有更高的并发性。对于读写锁,一次只有一个线程可以占有写模式的读写锁,但是多个线程可...
分类:编程语言   时间:2015-02-25 17:08:45    阅读次数:162
344条   上一页 1 ... 27 28 29 30 31 ... 35 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!