Netzwerkmonitor-BLOBs

Das Network Monitor Binary Large Object (BLOB) ist eine generische Datenstruktur, die Konfigurations- und Standortinformationen von Netzwerkschnittstellenkarten (NICs) enthält. Verwenden Sie BLOBs, um NiCs darzustellen und Einträge in einer Liste von NICs zu filtern. BLOBS kann auch anwendungsspezifische Daten enthalten, ohne sich auf die anderen darin enthaltenen Daten zu auswirken. Die BLOB-Implementierung ist für alle Ebenen undurchsichtig, die mit BLOB-APIs auf BLOBs zugreifen müssen.

BLOB-Struktur

Ein BLOB kann als hierarchische Struktur betrachtet werden, die zum Festlegen von Zeichenfolgen verwendet wird. Diese Struktur hat drei Ebenen: Besitzer, Kategorie und Tag. Besitzer ist eine Zeichenfolge, die im Allgemeinen angibt, wer einen Eintrag liest. Die Kategorie ist auch eine Zeichenfolge, die eine allgemeine funktionale Gruppierung von Tags unter dem Besitzer angibt. Das Tag ist der tatsächliche Name des Eintrags.

Zu den strukturellen Merkmalen von BLOBs gehören:

  • BLOB-Hilfsprogramme innerhalb eines Prozesses werden durch ein in jedes BLOB integriertes Mutex voreinander geschützt.
  • Jedes BLOB verfügt über eine interne Versionsnummer, sodass die Hilfsprogramme sowohl aktuelle als auch zukünftige BLOB-Formulare verarbeiten können. Versionskonflikte können auftreten, wenn Sie ein BLOB über einen Remoteprozeduraufruf an einen anderen Computer senden.
  • Das BLOB selbst ist ein Zeiger auf eine Leerstelle. Beachten Sie, dass Anwendungen BLOBs mit dem Const-Modifizierer zuordnen sollten, um eine Änderung des Inhalts zu vermeiden.
  • Jeder der Bezeichner sowie ihre Werte sind Zeichenfolgen. Beachten Sie, dass die von GetString-Funktionen zurückgegebenen Zeichenfolgen tatsächlich Zeiger auf das BLOB sind und nicht geändert werden sollten. Aus diesem Grund müssen diese Zeichenfolgen als const char**pX* angegeben werden, damit Anwendungen sie nicht versehentlich ändern.

Im Allgemeinen ermutigen alle Parameter mit dem Const-Designator den Aufrufer, die Werte nicht zu ändern, anstatt die Hilfsfunktionen daran zu hindern, sie zu ändern. Tatsächlich ändern die Hilfsfunktionen diese Werte in der Regel.