接触到linux加锁内容时,其中一文说加锁指令为单条指令,原子执行就不会存在竞争问题。比较困惑,假设两条原子指令在两个CPU上同时执行,难道就不会发生竞态问题?下面链接的文章中提到LOCK数据,阻止别的CPU访问数据总线http://www.linuxidc.com/Linux/2011-06/3732p2.htm使用LOCK总线的方法确实又降低了并发的可能。但是假设两条锁数据总线的原子操作指令确实是真真的并发执行的话,那么是否会出现所有的CPU的#HLOCK pin同时电位拉低情况?若如此,所有CPU都不能访问数据总线,结果会如何?如果多个CPU使用的同一个晶振呢?降低多CPU并发可能性方法还有就是每一个不同的CPU使用独立的晶振,晶振频率相同但是起震不同步,也许只有这样才可能杜绝真的并发产生。但是不同的晶振又能保证其频率一定是一样的么?就算频率真的是一样的,又真能保证不同晶振起震时间是交叉的么?不解,也许我那哥们每天从几千万条数据中寻找数据库重复主键的原因就在于没有真的锁,只有并发可能性最小的锁吧!
ThinkPHP URL自己带上参数PHPSESSIDLinux容器虚拟技术LXC简明手册相关资讯 Linux知识
- 时光总是太匆匆!Linux已经诞生23 (08/29/2014 14:12:03)
- Linux虚拟文件系统之文件打开(sys (02/14/2012 11:41:54)
- 2012 年 Linux 峰会时间表 (02/14/2012 06:47:27)
| - 报告称当前 Linux 人才抢手 高薪也 (02/15/2012 06:35:56)
- 解析企业为何选择Linux及其特别之 (02/14/2012 08:17:59)
- Linux禁用字符闪烁的方法 (11/02/2011 10:28:25)
|
本文评论 查看全部评论 (0)