我已经开始在操作系统中学习信号量概念。 我在linux中使用POSIX信号量。我使用sem_init(),sem_wait()和sem_post()来初始化,递减和递增信号量变量。
我见过semaphore.h文件中给出的函数声明。
但我无法找到上述功能的源代码。我已经浏览了一些内核源文件但我无法找到它们。我从哪里可以获得这些源代码文件?
我正在使用linux 3.6.11-4内核。
感谢。
答案 0 :(得分:3)
与较旧的"SysV IPC"信号量(semctl
,semop
等)不同,POSIX信号量API不是由内核直接实现的。相反,C库在futex
通用同步原语之上实现它。