MRAM是一种利用电子自旋的磁性来提供非易失性的存储器。该技术具有无限的耐用性。STT-RAM是第二代磁性RAM技术,可以解决常规MRAM结构带来的一些问题。现在正在开发的大多数MRAM都是通过施加由流过隧道磁阻(TMR)元件附近的导线的电流产生的磁场来改变磁化强度来写入数据的。这可以实现快速操作。
分类:
其他好文 时间:
2020-08-10 17:28:29
阅读次数:
82
STT-MRAM是一种电阻存储技术,其中材料中电子的磁性自旋变化会产生可测量的电阻率变化。从概念上讲,每个单元由两个磁体组成:一个是固定的,另一个是可以翻转的。当磁体彼此平行时,电阻低。当第二个磁铁反转方向时,电阻很高。
分类:
其他好文 时间:
2020-08-05 13:14:53
阅读次数:
64
CAS 也叫自旋锁,用来保证操作的一致性,比如用2个线程同时对一个变量累加1000,000次,得到的结果可能比2000,000少: package juc.test.cas; import org.junit.Test; import java.util.concurrent.CountDownLa ...
分类:
编程语言 时间:
2020-08-02 12:45:13
阅读次数:
98
前言: 再看Ribbon底层是如何实现负载轮询算法的时候看到了这一段,以前了解CAS也就是知道是自旋锁,深的并不了解。 ...
分类:
其他好文 时间:
2020-07-30 21:53:37
阅读次数:
63
JAVA锁分类Java中锁有多重分类方式,根据粒度可分为:重量锁、轻量锁、偏向锁、分段锁;根据锁获取公平性又分为:公平锁、非公平锁。根据策略又分为:乐观锁、悲观锁、自旋锁;根据不同的分类还有:共享锁、独占锁、可重入锁、互斥锁等概念。重量级锁Synchronized是通过对象内部的一个叫做监视器锁(monitor)来实现的。但是监视器锁本质又是依赖于底层的操作系统的MutexLock来实现的。而操作
分类:
编程语言 时间:
2020-07-27 10:01:22
阅读次数:
98
线程锁 自旋锁:为了不放弃CPU执行事件,循环的使用CAS技术对数据尝试进行更新,直到成功。 悲观锁:假定会发生并发冲突,同步所有对数据的相关操作,从数据就开始上锁。 乐观锁:假定没有冲突,在修改数据时如果数据发现和之前获取的不一致,则读最新数据,修改后重新修改。 独享锁(写):给资源加上写锁,线程 ...
分类:
编程语言 时间:
2020-07-22 11:25:38
阅读次数:
64
公平和非公平锁 公平锁:是指多个线程按照申请锁的顺序来获取锁,类似排队,先来后到。 非公平锁:是指多个线程获取锁的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的线程优先获取锁在高并发的情况下,有可能会造成优先级反转或者饥饿现象。 两者区别: 并发包中ReentrantLock的创建可以指定 ...
分类:
其他好文 时间:
2020-07-21 09:46:12
阅读次数:
82
这一章介绍的是计算机存储结构的下一个层次:二级存储单元。用来保存当前没有被处理的大量数据,这些存储设备包括硬盘,固态硬盘和CD等。 1.磁存储技术 材料的磁性可能是最明显的数据存储方式,因为磁性是很好的二进制记录介质:磁性粒子可以磁化为N-S或者S-N方向。当某材料被磁化后,它将保持磁化状态直到按照 ...
分类:
其他好文 时间:
2020-07-13 13:32:59
阅读次数:
69
###无锁 无锁是指线程通过无限循环来执行更新操作,如果执行成功就退出循环,如果执行失败(有其他线程更新了值),则继续执行,直到成功为止。CAS操作就属于无锁。如果从性能的角度来看,无锁状态的性能是非常高的。 ###自旋锁 自旋锁是一种通过让线程不释放当前的CPU执行一个忙循环,来尝试获取锁的方式。 ...
分类:
其他好文 时间:
2020-07-12 14:38:57
阅读次数:
85
在iOS中,atomic表示一个类的属性getter/setter具有原子性。那么iOS底层是如何保证这种原子性的呢? 我们有一个类A,它有一个属性X具有atomic: @property (atomic, strong) X *x; 当我们为这个这个X属性赋值的时候:-[A setX:]的汇编代码 ...
分类:
移动开发 时间:
2020-07-12 00:48:34
阅读次数:
103