On Fri, May 9, 2025 at 11:47 AM Valentin Nechayev <netch@netch.kiev.ua> wrote:
hi,

 Fri, May 09, 2025 at 10:33:42, vsharun wrote about "[uanog] Re: NIC interrupts / IRQs / Cores":

> Александр Васильевич,
> Современная сетевая карта - это полноценный комп, это больше не 8237,
> саундбластер про и десяток их регистров/портов.
> Драйвера для нее настолько сложны, что нет смысла даже начинать, это сотни
> мегабайт кода фирмвари и мегабайты кода интерфейса со стороны ОС к этой
> фирмвари.

Ну обычно таки поменьше:)
Весь e1000 в Linux, например, это полмега, из которых, если ужать все
switch до конкретной модели, останется 100kB.

Я ж про современные сетевые, 25-100G, с RDMA, RoCE, FCoE

 
Я удивляюсь, что 8237 для чего-то в современной платформе ещё живо.
Почему его не снесли, когда исчез последний ISA разъём с материнки?

Ретро. Один из челенджей - на каком самом быстром железе можно запустить голый дос без эмуляции с ISA звуковой (как правило что-то из последнего, где все глюки DMA вылечены, ESS1868/69, Yamaha 719, Crystal), и чтобы нетребовательные в хорошем смысле игры давали звук максимально выжимаемый - это не так просто как кажется. Т.е. General Midi дочки на waveblaster порт, хардварные модификации ямаховских карт, чтобы работал нормально low pass filter и т.п.
На текущий момент - это Z87/Z97 (Haswell, т.к. разгоняются легко) с LPC to ISA мостом Fintek (LPC берется из TPM хедера) и висящей от PCH линии LDRQ#1.
Стандарт sound blaster'а - он через 8237 DMA, Gravis Ultrasound - тот еще жестче завязан на DMA. LPC до 100й версии чипсетов Интела был полноценной ISA только в сериал варианте, у АМД в процессоре оно, пока трудно всё там.