s i s t e m a o p e r a c i o n a l m a g n u x l i n u x | ~/ · documentação · suporte · sobre |
Página seguinte
Página anterior
Índice
578. Programando os chips Intel (i82586 and i82593)
Estes chips são usados num número de placas, a saber, a 3c507 ('86), a Intel EtherExpress 16 ('86), Microdyne's exos205t ('86), a Z-Note ('93), e a Racal-Interlan ni5210 ('86). Russ Nelson escreve: `A maioria das placas baseadas na 82586 podem usar novamente bastante de seu código. Na verdade, mais que os adaptadores baseados 8390. Há somente três diferenças entre elas:
A Intel EtherExpress 16 é uma exceção, pois a I/O mapeia a 82586. Sim, a I/O a mapeia. Bastante desajeitadamente, mas funciona. Garrett Wollman fez um programa de controle AT&T para BSD que usa o direito autoral da BSD. A verão mais recente que eu tenho (Set. '92) só usa um buffer simples de transmissão. Você pode e deve fazer melhor que isto se você tem memória. Os adaptadores da AT&T e 3c507 têm; a ni5210 não tem. As pessoas da Intel me deram uma grande dica em como enfileirar pacotes de transmissão múltipla. Você configura uma lista de blocos de início NOP-> XMIT-> NOP-> XMIT-> NOP-> XMIT->) e então você configura o próximo indicador de todos os blocos NOP para eles mesmos. Agora você começa a unidade de comando nesta cadeia. Ela continuamente processa o bloco NOP primeiro. Para transmitir um pacote, você coloca no próximo bloco de transmissão, então aponta o NOP para ele. Para transmitir o próximo pacote você coloca no próximo bloco de transmissão e aponta o NOP anterior para it. Desta maneira, você não tem que esperar pelo término da transmissão anterior, e você pode enfileirar múltiplos pacotes sem nenhuma ambigüidade no que diz respeito a aceitação, e você pode evitar a unidade de comando de demora de início.'
Página seguinte Página anterior Índice |