哪个处理器将获得自旋锁?
which processor will acquire the spinlock?
在4处理器系统中,三个处理器(所有3个处理器都在自旋获取自旋锁)中的哪一个将获得第四个处理器释放的自旋锁?
在简单的自旋锁中,它是不确定的。自旋锁释放后第一个测试自旋锁的处理器将获得它。这可能会导致饥饿,当一个进程永远不会获得锁时,因为在等待进程之后请求锁的进程总是首先获得它。出于这个原因,处理器时间的腰部忙于等待大多数操作系统不实现这样的自旋锁。 Windows 有一个排队的自旋锁,而 Mac OS X 和 Solaris 使用自适应互斥锁。
在4处理器系统中,三个处理器(所有3个处理器都在自旋获取自旋锁)中的哪一个将获得第四个处理器释放的自旋锁?
在简单的自旋锁中,它是不确定的。自旋锁释放后第一个测试自旋锁的处理器将获得它。这可能会导致饥饿,当一个进程永远不会获得锁时,因为在等待进程之后请求锁的进程总是首先获得它。出于这个原因,处理器时间的腰部忙于等待大多数操作系统不实现这样的自旋锁。 Windows 有一个排队的自旋锁,而 Mac OS X 和 Solaris 使用自适应互斥锁。