ChinaUnix.net
相关文章推荐:

lock指令

[code]static __inline__ int atomic_dec_and_test(atomic_t *v) { unsigned char c; __asm__ __volatile__( lock "decl %0; sete %1" :"=m" (v->counter), "=qm" (c) :"m" (v->counter) : "memory"); return c != 0; }[/code]lcok指令可实现原子操作,那么它的有效范围是什么呢?上面代码中lock对decl与sete都有效吗?如果在"decl %0; sete %1"之后又加了个"某指令",那么后面的指令还是原子操作吗?

by stuman - 内核源码 - 2014-04-01 12:32:10 阅读(922) 回复(2)

相关讨论

已经解决了 执行时候出现 illegal instruction,请问如何解决 [ 本帖最后由 @sky 于 2010-1-25 16:54 编辑 ]

by @sky - C/C++ - 2010-01-25 16:54:34 阅读(1517) 回复(1)

linux/include/linux/spinlock_api_up.h中关于__lock的宏定义: 27#define __lock(lock) \ 28 do { preempt_disable(); __acquire(lock); (void)(lock); } while (0) 先禁止抢占; lock/unlock匹配检查; (void)(lock); 请教这句话什么意思?

by rocky1972 - 内核源码 - 2008-05-11 12:40:20 阅读(2635) 回复(8)

lock "decl %0; sete %1" 上面代码是个内联汇编,请问lock对后面的两个指令都有效还是只对第一个指令有效?

by stuman - 内核源码 - 2014-05-19 08:50:15 阅读(811) 回复(2)

[code]__asm__ __volatile__( "# atomic up operation\n\t" lock "incl %0\n\t" /* ++sem->count */ "jle 2f\n" "1:\n" lock_SECTION_START("") "2:\tlea %0,%%eax\n\t" "call __up_wakeup\n\t" "jmp 1b\n" lock_SECTION_END ".subsection 0\n" :"=m" (sem->count) : :"memory","ax");[/code]以上代码用于释放信号量,请问其中的lock是什么?是一个汇编命令吗?为什么不给它加引号呢?

by stuman - 内核源码 - 2013-09-28 19:31:49 阅读(2087) 回复(5)

本帖最后由 yshihyu 于 2012-08-25 11:42 编辑 请问一下 recursive lock 跟一般 lock 差异在哪? 有什么特殊功能? 可以给个例子说一下吗? 谢谢

by yshihyu - C/C++ - 2012-08-25 13:38:23 阅读(15391) 回复(5)

1.v$lock中查询会话间相互阻塞
在v$lock视图中没有直接体现那个会话阻塞那个会话的信息,但某个会话阻塞另一个会话的话,其ID1和ID2字段值是相同的,同时阻塞的会话的字段block=1,被阻塞的会话的request的字段值大于0,这样通过如下查询就能知道那个会话阻塞了那些会话.

by hxl - Oracle - 2011-12-23 01:04:38 阅读(597) 回复(0)

TO_CHAR(TIMESTAMP,'YYYYMMDD'

by 听星星唱歌 - Oracle - 2011-12-21 08:43:58 阅读(646) 回复(0)

Is anyone know how to prevent lock escalation? I got a lot of this kind of message in my notify log: 2007-06-03-06.55.43.019190 Instance:db2test Node:000 PID:1216710(db2agent (TEST) 0) TID:1 Appid:*LOCAL.db2test.070602225057 data management sqldEscalatelocks Probe:2 Database:TEST ADM5500W DB2 is performing lock escalation. The total number of locks currently held is "65564", and t...

by toms1981 - DB2 - 2007-06-06 20:42:01 阅读(5281) 回复(12)

mysql 中如何以独占的方式锁表,即锁表后,其它进程只能等待锁的释放才能访问

by yyiiasc - MySQL - 2007-05-17 18:59:47 阅读(1569) 回复(1)