Kapitel 3. BPF-Karten

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Die Nachrichtenübermittlung zum Aufrufen von Verhaltensweisen in einem Programm ist eine weit verbreitete Technik in der Softwareentwicklung. Ein Programm kann das Verhalten eines anderen Programms ändern, indem es Nachrichten sendet; dies ermöglicht auch den Austausch von Informationen zwischen diesen Programmen. Einer der faszinierendsten Aspekte der BPF ist, dass der Code, der auf dem Kernel läuft, und das Programm, das diesen Code geladen hat, zur Laufzeit per Message Passing miteinander kommunizieren können.

In diesem Kapitel erfahren wir, wie BPF-Programme und User-Space-Programme miteinander kommunizieren können. Wir beschreiben die verschiedenen Kommunikationskanäle zwischen dem Kernel und dem User-Space und wie sie Informationen speichern. Wir zeigen dir auch, wie du diese Kanäle nutzen kannst und wie du die Daten in diesen Kanälen zwischen den Programminitialisierungen beständig machst.

BPF-Maps sind Schlüssel/Wertespeicher, die sich im Kernel befinden. Jedes BPF-Programm, das sie kennt, kann auf sie zugreifen. Programme, die im User-Space laufen, können ebenfalls auf diese Maps zugreifen, indem sie Dateideskriptoren verwenden. Du kannst jede Art von Daten in einer Map speichern, solange du die Datengröße vorher korrekt angibst. Der Kernel behandelt Schlüssel und Werte als binäre Blobs und es ist ihm egal, was du ...

Get Linux Observabilität mit BPF now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.