Em Thu, Jan 03, 2002 at 04:41:27PM -0300, Alexandre Ferreira escreveu: > Estou estudando sobre a suite TCP/IP e dentre outros materiais que estou > estudando o livro "Interliga��o em rede com TCP/IP" do Douglas E. > Comer/David L Stevens. > N�o ofi dif�cil entender o funcionamento do protocolo ARP com as > explica��es de tal obra, no qual aborda o S.O Xinu e as estruturas com a > programa��o do protocolo ou n�o senti dificuldade, pois j� programa em C > h� algum tempo. Dito isso, queria saber se algu�m pode falar algo sobre a > linguagem usada no protocolo ARP do kernel 2.4.17 do Linux que acabei de > baixar do kernel.org, pois eu n�o entendi NADA !!! parece que o fonte foi
a linguagem utilizada � C com extens�es do gcc, mais notadamente inicializa��o de structs com membros nomeados, que � algo bastante interessante pois facilita a compreens�o e evita que a adi��o de um membro �s structs cause problemas na inicializa��o de todas as inst�ncias desta struct. Note tamb�m que o objetivo do Comer com o Xinu � educacional, como o Tanembaum com o Minix, e o objetivo do Linux � _performance_, nem que isto torne o c�digo obscuro. > escrito em uma variante do C que nunca vi, pois a struct parece mais um > class ?!?! vjea o arquivo "/usr/src/linux/net/ipv4/arp.c" e o que eh pior > n�o possui NENHUM coment�rio. Normal, no Linux documenta��o � c�digo fonte, existe um esfor�o para documentar as func�es mas as pilhas de rede geralmente n�o tem documenta��o. Vide Documentation/kernel-doc-nano-HOWTO.txt em sua �rvore dos fontes do kernel (pelo que vi voc� ainda usa /usr/src/linux 8) ). > Algu�m est� estudando est� suite de protocolos e poderia/queria trocar > infor ou simplesmente indicaria material explicativo das sintaxes que s�o > utilizadas nesses arquivos ???? Neste momento estou alterando todos os protocolos de rede do Linux para que usem um slabcache por protocolo nos protocolos mais importantes (TCP/IP v4 e v6) e alterando os demais para que usem o campo sock->protinfo como um void pointer e n�o como uma union 'gorda', o que causa uma diminui��o sens�vel no uso de mem�ria n�o 'swap�vel' e uma melhora na performance da cria��o de sockets, o que melhorar� de forma n�o desprez�vel a performance e uso de mem�ria em servidores carregados e tamb�m ser� ben�fico mesmo em esta��es de trabalho. Quanto �s extens�es do GCC para a linguagem C, execute: pinfo gcc procure por 'C extensions', depois 'Labeled elements'. Para discuss�o de temas relacionados a desenvolvimento do kernel Linux recomendo visitar o canal #kernelnewbies no servidor IRC irc.openprojects.net. Vide tamb�m: http://kernelnewbies.org http://kerneljanitor.org - Arnaldo Assinantes em 04/01/2002: 2285 Mensagens recebidas desde 07/01/1999: 148792 Historico e [des]cadastramento: http://linux-br.conectiva.com.br Assuntos administrativos e problemas com a lista: mailto:[EMAIL PROTECTED]
