m_get Kernel-Service
Zweck
Weist einen Speicherpuffer (mbuf) aus dem mbuf Pool zu.
Syntax
Parameter
| Element | Beschreibung |
|---|---|
| wait | Gibt an, was zu tun ist, wenn es keine freien mbuf Strukturen gibt. Mögliche Werte sind:
|
| Typ | Gibt einen gültigen mbuf-Typ an, wie er in der Datei /usr/include/sys/mbuf.h aufgeführt ist. |
Beschreibung
Der Kernel-Dienst m_get weist eine mbuf-Struktur des angegebenen Typs zu. Wenn der Pufferpool leer ist und der Warteparameter auf M_WAIT gesetzt ist, kehrt der Kernel-Dienst m_get erst zurück, wenn eine mbuf-Struktur verfügbar ist.
Ausführungsumgebung
Der Kernel-Dienst m_get kann entweder aus der Prozess- oder der Interrupt-Umgebung aufgerufen werden.
Ein Interrupt-Handler kann den Warteparameter nur als M_DONTWAIT angeben.
Rückgabewerte
Nach erfolgreichem Abschluss gibt der m_get-Dienst die Adresse einer zugewiesenen mbuf-Struktur zurück. Wenn der Warteparameter auf M_DONTWAIT gesetzt ist und keine freien mbuf-Strukturen vorhanden sind, gibt der Kernel-Dienst m_get einen Nullwert zurück.