Qual é a diferença entre linux / ip.h e netinet / ip.h?

3

Descobri que existem linux/ip.h e netinet/ip.h em /usr/include e alguns deles são iguais. Por que existem arquivos duplicados aqui com nomes diferentes, qual é a diferença entre eles?

    
por shengfu zou 10.04.2016 / 03:09

1 resposta

2

Histórico.

De volta aos primeiros dias, antes de os computadores percorrerem a Terra, dois grupos de pessoas completamente independentes iniciaram o desenvolvimento em dois subsistemas de software separados.

Aproveitando os privilégios dos desenvolvedores, cada grupo escolheu nomes adoráveis para as partes de seus subsistemas. " ip.h " é esse nome.

Quando chegou a hora de fundir seus subsistemas, ambos os grupos queriam manter seus nomes adoráveis.

Ao colocar a cópia de ip.h , as necessidades do subsistema em um subdiretório facilitam para os desenvolvedores. Um usuário que deseja usar as definições na versão de netinet de ip.h precisa apenas de #include <netinet/ip.h> , enquanto um desenvolvedor que deseja compilar com a versão linux faz #include <linux/ip.h> .

    
por waltinator 10.04.2016 / 21:20

Tags