Ritiro e avanzamento delle operazioni
NDIS offre funzioni di ritiro e avanzamento per modificare le strutture NET_BUFFER . Le operazioni di ritiro rendono disponibile spazio dati più usato per il driver corrente. Rilascio delle operazioni avanzateusato spazio dati.
Le operazioni di ritiro sono necessarie durante le operazioni di invio o quando un driver restituisce i dati ricevuti a un driver sottostante. Ad esempio, durante un'operazione di invio, un driver può chiamare la funzione NdisRetreatNetBufferDataStart per rendere disponibile la stanza per i dati di intestazione.
Le operazioni avanzate sono necessarie quando un'operazione di invio viene completata o quando un driver riceve i dati da un driver sottostante. Ad esempio, durante un'operazione di ricezione, un driver può chiamare la funzione NdisAdvanceNetBufferDataStart per ignorare i dati di intestazione usati da un driver di livello inferiore. In questo caso, i dati dell'intestazione rimangono nel buffer nello spazio dati inutilizzato.
Nella figura seguente viene illustrata la relazione tra i dati di rete e queste operazioni.
Gli argomenti seguenti forniscono altre informazioni sulle operazioni di avanzamento e ritiro: