E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Spinlock
Linux RT(1)-硬实时Linux(RT-Preempt Patch)在PC上的编译、使用和测试
by @宋宝华Barry Vanillakernel的问题Linuxkernel在
spinlock
、irq上下文方面无法抢占,因此高优先级任务被唤醒到得以执行的时间并不能完全确定。
21cnbao
·
2012-10-03 19:00
硬实时Linux(RT-Preempt Patch)在PC上的编译、使用和测试
by @宋宝华Barry Vanillakernel的问题Linuxkernel在
spinlock
、irq上下文方面无法抢占,因此高优先级任务被唤醒到得以执行的时间并不能完全确定。
·
2012-10-03 18:40
linux
linux系统
硬实时
cyclictest
硬实时Linux(RT-Preempt Patch)在PC上的编译、使用和测试
by @宋宝华Barry Vanillakernel的问题Linuxkernel在
spinlock
、irq上下文方面无法抢占,因此高优先级任务被唤醒到得以执行的时间并不能完全确定。
21cnbao
·
2012-10-03 18:40
linux
linux系统
硬实时
cyclictest
各种
spinlock
形式及使用条件
从严格意义上说,semaphore和
spinlock
_XXX属于不同层次的互斥手段,前者的实现有赖于后者,这有点象HTTP和TCP的关系,都是协议,但层次是不同的。
myxmu
·
2012-10-01 15:00
spinlock
from: http://www.chinaitpower.com/2005September/2005-09-13/200503.html在这篇文章中,我将会介绍Kernel提供用来使用
spinlock
grantxx
·
2012-09-26 22:00
linux
function
String
Microsoft
UP
portability
mutex
spinlock
from: http://www.parallellabs.com/2010/01/31/pthreads-programming-spin-lock-vs-mutex-performance-analysis/POSIXthreads(简称Pthreads)是在多核平台上进行并行编程的一套常用的API。线程同步(ThreadSynchronization)是并行编程中非常重要的通讯手段,其中最典
grantxx
·
2012-09-26 22:00
thread
null
compiler
pthreads
loops
linux内核
spin_lock详解
与UP和SMP无关的定义:typedefstruct{volatileunsignedintlock;}
spinlock
_t;#defineSPIN_LOCK_UNLOCKED(
spinlock
_t){
eleven_yy
·
2012-09-25 16:15
Linux
代码分析
Linux驱动
linux驱动自旋锁问题
我是一个linux驱动新手,今天在学习关于驱动的自旋锁
spinlock
时遇到了一个问题:在加载好我所编译的驱动后,运行读写测试程序,该程序只能运行一次,第二次运行时电脑死机(虚拟机死机)。
dadongwusheng
·
2012-09-24 17:50
linux
linux驱动
linux驱动自旋锁问题
我是一个linux驱动新手,今天在学习关于驱动的自旋锁
spinlock
时遇到了一个问题:在加载好我所编译的驱动后,运行读写测试程序,该程序只能运行一次,第二次运行时电脑死机(虚拟机死机)。
·
2012-09-24 17:50
linux
linux驱动
mutex 和
spinlock
对比
理论上:mutex和
spinlock
都是用于多进程/线程间访问公共资源时保持同步用的,只是在lock失败的时候处理方式有所不同。
dong976209075
·
2012-09-21 16:00
thread
UP
Linux 并发、竞态管理的实现机制
linux下用于并发、竞态管理的机制有:
spinlock
_t,semaphore,mutex,completion,atomic_t等,下面依次分析其实现原理1.
spinlock
_t:其实就是一个volatileunsignedint
yyt8yyt8
·
2012-09-19 17:00
linux
struct
list
Semaphore
内核同步方法
http://blog.csdn.net/unbutun/article/details/6554990原子操作
spinlock
---忙等待,不释放cpu。
an_zhenwei
·
2012-09-17 11:00
优化
存储
编译器
自旋锁与互斥量的选择
自旋锁(
spinlock
)与互斥量(mutex)的比较自旋锁是一种非阻塞锁,也就是说,如果某线程需要获取自旋锁,但该锁已经被其他线程占用时,该线程不会被挂起,而是在不断的消耗CPU的时间,不停的试图获取自旋锁
tujiaw
·
2012-09-14 23:00
多线程
c
IO
测试
linux内核
内核printk的实现分析
static
spinlock
_tlogbuf_lock=SPIN_LOCK_UNLOCKED; //定义logbuf_lock,并初始化为unlock状态staticcharlog_buf[LOG_BUF_LEN
skyflying2012
·
2012-09-12 11:00
struct
Semaphore
null
buffer
任务调度
output
内核等待队列机制原理分析
每个等待队列都有一个等待队列头(waitqueuehead),等待队列头是一个类型为wait_queque_head_t的数据结构:struct__wait_queue_head{
spinlock
_tlock
zhang_j_h
·
2012-09-10 16:00
数据结构
struct
list
function
UP
Signal
内核等待队列机制原理分析
每个等待队列都有一个等待队列头(waitqueuehead),等待队列头是一个类型为wait_queque_head_t的数据结构:struct__wait_queue_head{
spinlock
_tlock
xitong
·
2012-09-10 16:00
队列
一些并发的文章
无锁队列的实现 http://coolshell.cn/articles/8239.html Linux 内核的排队自旋锁(FIFO Ticket
Spinlock
) http://www.ibm.com
我是小小鸟
·
2012-09-07 13:00
并发
一些并发的文章
无锁队列的实现 http://coolshell.cn/articles/8239.html Linux 内核的排队自旋锁(FIFO Ticket
Spinlock
) http://www.ibm.com
我是小小鸟
·
2012-09-07 13:00
并发
Linux中的
spinlock
和mutex
内核同步措施为了避免并发,防止竞争。内核提供了一组同步方法来提供对共享数据的保护。我们的重点不是介绍这些方法的详细用法,而是强调为什么使用这些方法和它们之间的差别。Linux使用的同步机制可以说从2.0到2.6以来不断发展完善。从最初的原子操作,到后来的信号量,从大内核锁到今天的自旋锁。这些同步机制的发展伴随Linux从单处理器到对称多处理器的过度;伴随着从非抢占内核到抢占内核的过度。锁机制越来越
myxmu
·
2012-09-06 14:00
Linux内核:
spinlock
和睡眠
spinlock
是linux内核锁机制的一种,而linux内核锁机制是linux内核同步机制的一部分。
myxmu
·
2012-09-06 13:00
分析Linux中
Spinlock
在ARM及X86平台上的实现
本文主要以2.6.22.6内核分析Linux中
spinlock
在ARM及X86平台上的实现(不同版本的内核实现形式会有一些差异,但原理大致相同)。
Alan0521
·
2012-09-04 10:00
Linux下写者优先的读写锁的设计
Linux下写者优先的读写锁的设计一、本文的目的在linux下有两种实现数据互斥的基本机制,包括了semaphore(信号量),
spinlock
(自旋锁)。
ilvu999
·
2012-09-04 01:00
spinlock
,mutex,semaphore,critical section的作用与区别
spinlock
是自旋锁,用于多cpu的情况mutex就是普通的跨进程同步对象semaphore用于对资源数的控制--------------------------------------------
zhaohc_nj
·
2012-08-27 10:00
object
Semaphore
HTTP服务器
mfc
任务
attributes
U盘病毒原理分析和解决方法
http://
spinlock
.blog.51cto.com/607469/300801由于现在U盘相当普及,导致了U盘病毒的泛滥。很多人对U盘病毒非常痛恨,但是却找不到一种较好的解决方案。
tingyuanss
·
2012-08-19 14:00
windows
server
shell
command
Microsoft
exe
spinlock
与linux内核调度的关系
一、自旋锁(
spinlock
)简介 自旋锁在同一时刻只能被最多一个内核任务持有,所以一个时刻只有一个线程允许存在于临界区中。这点可以应用在多处理机器、或运行在单处理器上的抢占式内核中需要的锁定服务。
慎思
·
2012-08-07 10:00
Linux内核中的信号量解析
但是它不能在内核之外使用,内核信号量实际上是一种睡眠锁原型:/*Pleasedon'taccessanymembersofthisstructuredirectly*/structsemaphore{
spinlock
_tlock
tsuibin
·
2012-08-02 22:00
Linux内核中的自旋锁
Pcilynx.c(\linux-2.6.30.4\drivers\ieee1394) 1声明structti_lynx{ intid;/*sequentialcardnumber*/
spinlock
_tlock
tsuibin
·
2012-08-02 22:00
spinlock_t
ARM命令LDREX和STREX实现
spinlock
在include/asm-arm/
spinlock
.h下有這麼一段#if__LINUX_ARM_ARCH__=6才可以繼續:all
spinlock
primitives到最後都是使用下面這個基本型: staticinlinevoid
qianlong4526888
·
2012-07-31 14:00
assembly
Access
performance
compiler
branch
output
spinlock
在多核处理器上的性能比较
最近在看“多处理器编程的艺术”,其中讲解自旋锁的章节甚是精彩。这是我第一遍就看个9成明白了的几个重要章节之一。觉得此书大有玩味之必要,于是又复习了一下量化体系结构的牛书。 突然想到,其中书中提到的TAS(test-and-set)/TTAS(test-test-and-set)锁中遇到的问题是不是在现在流行的“多核处理器”也存在呢?即,在解锁时存在着总线“流量风暴”,导致所有其他处理器的ca
cybertan
·
2012-06-20 09:00
JOIN
编程
cache
测试
null
pthread_spin_lock 自旋锁
Pthreads提供了多种锁机制,常见的有:1)Mutex(互斥量):pthread_mutex_***2)
Spinlock
(自旋锁):pthread_spin_***3)ConditionVariable
I_am_JoJo
·
2012-05-22 19:00
linux设备驱动模型之 kset原理与实例分析
kobject的集合,在sysfs中体现成一个目录,在内核中用kset数据结构表示,定义为:structkset{structlist_headlist;//连接该kset中所有kobject的链表头
spinlock
_tlist_lock
yinjiabin
·
2012-05-19 22:00
数据结构
linux
struct
list
filter
Module
双核互斥问题
如下代码:staticvolatile__comu32
spinlock
;voidspin_lock(void){ u32lock=1; u32ret0=0; u32ret1=1; u32unlock;
junllee
·
2012-05-18 11:00
浅析linux内核内存管理之内存池
下边是内存池对象的类型:[cpp] viewplaincopytypedef struct mempool_s {
spinlock
_
hsly_support
·
2012-05-09 22:00
linux
api
cache
object
Module
linux内核
spinlock
与linux内核调度的关系
spinlock
与linux内核调度的关系作者:刘洪涛,华清远见嵌入式学院高级讲师,ARM公司授权ATC讲师。关于自旋锁用法介绍的文章,已经有很多,但有些细节的地方点的还不够透。
kyokowl
·
2012-04-26 09:00
linux
工作
嵌入式
任务
linux内核
Linux
spinlock
_t
Linux
spinlock
_t我的经验: 如果出现死锁的情况,检查:1.lock和unlock是否成对出现了,检查所有的程序分支。
jk110333
·
2012-04-24 12:00
timer
linux
redhat
api
reference
locking
nmi-watchdog测试
#include#include#include#include
spinlock
_ttest_lock;staticint__initnmi_test_init(void){ intcpu=smp_processor_id
cybertan
·
2012-04-20 23:00
测试
Module
include
linux2.6.32内核信号量的实现
首先看看信号量的相关数据结构:structsemaphore{
spinlock
_tlock;#lock应该是这个信号量的自旋锁 unsignedintcount;#count表示的是这个信号量的计数器
caijp1090
·
2012-04-18 20:00
Windows 自旋锁分析(四)
5,KeAcquireInStackQueued
SpinLock
的实现机制 在单核处理器(WindowsXP)下观察KeAcquireInStackQueued
SpinLock
的实现hal!
·
2012-04-10 15:00
windows
算法
struct
汇编
null
存储
Windows 自旋锁分析(三)
4,KeAcquire
SpinLock
RaiseToDpc的实现机制在MSDN上是这么说的:调用KeAcquire
SpinLock
RaiseToDpc的程序必须运行在IRQL<=DISPATCH_LEVEL
·
2012-04-10 14:00
Windows 自旋锁分析(二)
3KeAcquire
SpinLock
AtDpcLevel的实现机制MSDN上说明调用KeAcquire
SpinLock
AtDpcLevel的程序必须运行在DISPATCH_LEVEL上。
·
2012-04-10 14:00
windows
工作
汇编
存储
byte
自旋锁及其衍生锁
自旋锁自旋锁(
spinlock
)是用在多个CPU系统中的锁机制,当一个CPU正访问自旋锁保护的临界区时,临界区将被锁上,其他需要访问此临界区的CPU只能忙等待,直到前面的CPU已访问完临界区,将临界区开锁
meijia_tts
·
2012-04-10 11:00
数据结构
timer
struct
api
测试
linux内核
arm
spinlock
MOVr1,#0x1 ;loadthe‘locktaken’valuetry LDREXr0,[LockAddr] ;loadthelockvalue CMPr0,#0 ;isthelockfree? STREXEQr0,r1,[LockAddr] ;tryandclaimthelock CMPEQr0,#0
jgdu1981
·
2012-04-10 09:00
关键代码段(Critical Sections) 和自旋锁(
Spinlock
s)
关键代码段(CriticalSections)和自旋锁(
Spinlock
s)写在前面:今天一哥们问我,windows的临界代码是自旋还是等待,当时想了想应该是等待,后来翻了一下《WindowsviaC/
summerhust
·
2012-04-05 14:00
编程
linux
工作
windows
unix
Microsoft
Pthread_Mutex_t Vs Pthread_
Spinlock
_t (转载)
Pthreads提供了多种锁机制,常见的有:1)Mutex(互斥量):pthread_mutex_***2)
Spinlock
(自旋锁):pthread_spin_***3)ConditionVariable
yuyin86
·
2012-04-05 09:00
thread
多线程
测试
delete
任务
pthreads
工作队列分析
http://linux.chinaunix.net/techdoc/net/2007/01/08/947611.shtml一、用法structcpu_workqueue_struct{
spinlock
_tlock
suer0101
·
2012-03-29 20:00
thread
timer
工作
list
struct
recursion
spinlock
,mutex,semaphore,critical section的作用与区别
-------------------------------------------------------------------------------------------- Mutex是一把钥匙,一个人拿了就可进入一个房间,出来的时候把钥匙交给队列的第一个。一般的用法是用于串行化对critical section代码的访问,保证这段代码不会被并行的运行。Semaph
dolaameng328
·
2012-03-23 10:00
Semaphore
mutex
spinlock
Linux内核同步机制之信号量与锁
一、信号量 首先还是看看内核中是怎么实现的,内核中用structsemaphore数据结构表示信号量(中):structsemaphore{
spinlock
_tlock; uns
bullbat
·
2012-03-21 09:00
thread
struct
list
Semaphore
Module
linux内核
ldd3 error: expected expression before '
spinlock
_t' (access.c中)
这是由于,新内核的DEFINE_
SPINLOCK
(x)发生变化导致的。
djinglan
·
2012-03-20 22:00
<深入浅出>读写锁 读写信号量
spinlock
顺序锁 etc
经典的读写锁,读者优先,写者次之,核心之思想是rwlock_t结构体,有一个字段,写者尝试加锁的时候,就减去0x1000000,读者加锁的时候,就尝试减去1,只要非负就加锁成功。如果想把读写锁改成写者优先,就是说,当读者发现有写者被pending时,读者不去获取锁,而是等待写者获取到锁之后把pend位清空。 #ifdefCONFIG_RWSEM_PIstructrt_rw_semaphore{
chenyu105
·
2012-03-17 21:00
list
struct
Semaphore
loops
linux内核
recursion
工作队列分析 queue_work
一、用法 struct cpu_workqueue_struct {
spinlock
_t lock; long remove_sequence;/* Least-recently added (next
allen6268198
·
2012-03-16 13:00
thread
timer
工作
struct
list
insert
上一页
16
17
18
19
20
21
22
23
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他