logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Linux 内核 semaphore(信号量)机制详解

Linux信号量机制是操作系统实现并发控制的重要工具,主要用于资源计数、进程同步和互斥访问。内核通过struct semaphore结构体实现计数信号量,包含计数器count、自旋锁lock和等待队列wait_list。核心操作包括down(获取资源)和up(释放资源),支持阻塞、中断、超时等多种获取方式。信号量适用于生产者-消费者模型、资源池管理等场景,但与互斥锁相比性能较低且无持有者概念。使用

文章图片
#linux
Linux 内核等待队列(wait queue)机制详解

本文介绍了Linux内核中的等待队列机制,该机制通过wait_queue_head和wait_queue_entry数据结构实现进程/线程的睡眠与唤醒。等待队列广泛应用于驱动、内存管理等领域,支持普通、独占和优先级等唤醒策略。文章详细讲解了等待队列的声明初始化、使用流程(睡眠/唤醒)、高级用法(条件等待宏)及内核实现原理,包括链表结构、并发保护等。最后总结了典型应用场景和使用建议,强调合理选择唤醒

文章图片
#linux
到底了