用Source Insight阅读Linux源码的朋友一定注意到过,类似于PageReserved() PageDirty() PageWriteback()之类的函数,都是白色的,找不到它们的定义在哪里。如图所示:
在kernel/include/linux/page-flags.h 中我们找到了答案:
这些函数都是通过宏展开在编译期生成的。
下面以PageLocked()函数的生成过程为例:
用Source Insight阅读Linux源码的朋友一定注意到过,类似于PageReserved() PageDirty() PageWriteback()之类的函数,都是白色的,找不到它们的定义在哪里。如图所示:
在kernel/include/linux/page-flags.h 中我们找到了答案:
这些函数都是通过宏展开在编译期生成的。
下面以PageLocked()函数的生成过程为例: