并发与竟态,以及自旋锁,原子操作等
并发:多个任务并行执行。
竟态:并发的线程对共享资源的访问容易发生竟态。
竟态发生情况举例:
1.多处理器SMP的多个cpu,smp是一种紧耦合,共享总线存贮的系统模型。
2.单CPU内进程与抢占他的进程。
3.中断与进程之间:硬中断,软中断,tasklet,低半部。
竟态的解决方案:途径是保证对共享资源的互斥访问。访问共享资源的代码区域是临界区,临界区要i有互斥机制。
互斥机制有:
1.中断屏蔽
2.原子操作
3.自旋锁
4.信号量
死锁的因素:
1.多进程调度导致的死锁
1.1互相排斥1.2循环等待1.3部分分配1.4缺少优先权
2.单线程导致死锁
引用引起阻塞的函数,比如:copy_from_user();还有自旋锁进程又调用自旋锁函数。
几个概念:
互斥锁=互斥量,mutex,是信号量semaphore在取值0/1时的特例。
标签:互斥,小计,并发,死锁,自旋,进程,竟态 来源: https://www.cnblogs.com/zhihui-3669/p/11665002.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。