linux/ip.h 和 netinet/ip.h 有什么区别?

linux/ip.h 和 netinet/ip.h 有什么区别?

我发现中有linux/ip.h和,而且有的是一样的。为什么这里有重复的文件,而且名字不一样,它们有什么区别?netinet/ip.h/usr/include

答案1

历史。

回顾早期,在计算机普及地球之前,两个完全独立的群体开始开发两个独立的软件子系统。

各个小组利用开发人员的特权,为各自的子系统的各个部分取了好听的名字。“ ip.h”就是这样一个名字。

当需要合并两个子系统时,两个团队都希望保留各自可爱的名字。

将子系统需求的副本放在ip.h子目录中,可方便开发人员使用。开发人员只需使用netinet版本的需求定义,而开发人员则需要 版本进行编译。ip.h#include <netinet/ip.h>linux#include <linux/ip.h>

相关内容