自旋锁是一个互斥设备,它只有两个值:“锁定”和“解锁”。它通常实现为某个整数值中的某个位。希望获得某个特定锁得代码测试相关的位。如果锁可用,则“锁定”被设置,而代码继续进入临界区;相反,如果锁被其他人获得,则代码进入忙循环(而不是休眠,这也是自旋锁和一般锁的区别)并重复检查这个锁,直到该锁可用为止,这就是自旋的过程。“测试并设置位”的操作必须是原子的,这样,即使多个线程在给定时间自旋,也只有一个线程可获得该锁。
大内核就不知道是什么东东了。
應該沒有大內核這種名詞
只有三種 spinlock (busy waiting)
mutex (只有0 1兩種狀態)
semaphore (可以多重)
以上
大内核应该指的是biglittle架构中的big吧,那个一般指的是功耗大且性能强的内核,如A73 A72等
自旋锁用来锁定一个资源,只允许一个进程访问