Problemi di implementazione per i dispositivi WavePci
Questa sezione presenta le linee guida per la progettazione hardware e software che i fornitori di hardware audio possono usare per migliorare le prestazioni e l'affidabilità dei dispositivi WavePci. Tutte queste linee guida si applicano a dispositivi audio e driver progettati per funzionare con Microsoft Windows XP e versioni successive, ma molti si applicano anche alle versioni precedenti di Windows che tornano a Windows 98 Second Edition.
Come descritto in Wave Filters, il driver di sistema della classe di porta, Portcls.sys, fornisce due driver di porta diversi per il rendering delle onde e i dispositivi di acquisizione:
WaveCyclic è meno impegnativo di hardware e software, ma le prestazioni sono limitate dal sovraccarico software di copia dei dati tra buffer.
WavePci è l'alternativa orientata alle prestazioni a WaveCyclic, ma richiede software hardware e driver più sofisticati.
Anche se il nome WavePci implica un dispositivo audio che collega il bus PCI, in realtà, il requisito principale per un dispositivo WavePci è che contiene un controller DMA a dispersione/raccolta in grado di accedere ai dati ovunque nella memoria di sistema:
Un dispositivo WavePci tipico si trova su un bus PCI, ma, in teoria, almeno un driver miniport WavePci può essere scritto per un dispositivo che risiede in un bus di sistema diverso da PCI (ad esempio, AGP).
Un dispositivo wave che risiede in un bus PCI ma non dispone di DMA a dispersione/raccolta può essere rappresentato da un driver WaveCyclic, ma non da un driver WavePci.
Storicamente, alcuni fornitori hanno avuto difficoltà a implementare dispositivi WavePci completamente funzionanti. Le due principali aree problematiche sono:
Difetti di progettazione hardware che riducono le prestazioni.
Errori di implementazione del driver che influiscono sulle prestazioni o sull'affidabilità.
Questa esperienza viene distillata negli argomenti seguenti, che affrontano i principali problemi di progettazione hardware e software per i dispositivi WavePci:
Requisiti hardware per i dispositivi WavePci