linux内核知识
1、自旋锁适合段的代码段,以前看的时候知道自旋锁不会睡眠,信号量会睡眠,但是一直不是很确定为啥有的代码虽然长一点,但不能使用自旋锁,原因在于在自旋锁所保护的代码段内是否含有可能会睡眠的函数,比如内核的kmalloc函数,在极端情况下,分配不到内存有可能会睡眠,如果该进程无法被调度,其他CPU又需要这把锁,那么会造成忙等待,系统也就死了。需要特别注意会睡眠的函数,待补充···
2、
linux内核知识
1、自旋锁适合段的代码段,以前看的时候知道自旋锁不会睡眠,信号量会睡眠,但是一直不是很确定为啥有的代码虽然长一点,但不能使用自旋锁,原因在于在自旋锁所保护的代码段内是否含有可能会睡眠的函数,比如内核的kmalloc函数,在极端情况下,分配不到内存有可能会睡眠,如果该进程无法被调度,其他CPU又需要这把锁,那么会造成忙等待,系统也就死了。需要特别注意会睡眠的函数,待补充···
2、