操作系统相关面试题

互斥锁和自旋锁的区别

互斥锁:线程会从sleep(加锁)——>running(解锁),过程中有上下文的切换,cpu的抢占,信号的发送等开销。

自旋锁:线程一直是running(加锁——>解锁),死循环检测锁的标志位,机制不复杂。

如何避免死锁

银行家算法:系统对进程发出的每一个资源申请进行检查

你可能感兴趣的:(操作系统相关面试题)