当前位置: 技术问答>linux和unix
有关临界区 锁问题
来源: 互联网 发布时间:2015-05-30
本文导语: 记得在windows下有系统锁函数 就是在lock unlock之间独占cpu,不知道在linux下是否也有类似的函数? 或者有其他方法可以实现此要求。 谢谢各位大虾。 | 独占CPU?好象不行。 | ...
记得在windows下有系统锁函数 就是在lock unlock之间独占cpu,不知道在linux下是否也有类似的函数? 或者有其他方法可以实现此要求。 谢谢各位大虾。
|
独占CPU?好象不行。
|
pthread_mutex_t
man pthread_mutex_init
man pthread_mutex_luck
man pthread_mutex_unlock
man pthread_mutex_init
man pthread_mutex_luck
man pthread_mutex_unlock
|
不是独占CPU,是用来保护共享数据的
|
好像有atomic_t的东西,不过不知道怎么用的。
还有一些内核中的,spinlock等等,都没有用过,你有兴趣研究一下,然后教我。
还有一些内核中的,spinlock等等,都没有用过,你有兴趣研究一下,然后教我。
|
sig_atomic_t不是干这个的。
|
简单点,用信号量(semaphore)不行吗?(单cpu下)
|
独占cpu是不是太狠了点?
|
呵呵,就不该用linux。DOS比较合适。
|
你可以嵌入汇编,直接Lock CPU具体指令自己查查吧
|
临界区可以用信号量进行互斥的控制。
如果是多CPU可以用TSL指令。
如果是多CPU可以用TSL指令。