Ich erinnere mich, dieses Konzept irgendwo zu lesen. Ich weiß nicht mehr wo. Ich habe eine Datei sagen file.c, die zusammen mit anderen Dateien zusammen mit einigen anderen Dateien als eine Bibliothek für die Verwendung von Anwendungen kompilieren.Datei in beiden KLM und User-Space
Nun nehme ich an, ich kompiliere die gleiche Datei und baue sie mit einem Kernel-Modul. Daher befindet sich das gleiche Dateiobjekt sowohl im Benutzer- als auch im Kernel-Bereich und erlaubt mir den Zugriff auf Kernel-Datenstrukturen, ohne einen Systemaufruf aufzurufen. Ich meine, ich kann APIs in der Bibliothek haben, über die Anwendungen auf Kernel-Datenstrukturen zugreifen können, ohne dass Systemaufrufe erforderlich sind. Ich bin mir nicht sicher, ob ich etwas in den Kernel schreiben kann (was meiner Meinung nach auf diese Weise unmöglich ist), aber das Lesen einiger Datenstrukturen aus dem Kernel wäre in Ordnung?
Kann mir jemand mehr Details über diesen Ansatz geben. Ich konnte in Google diesbezüglich nichts finden.
Hey, es war der Overhead des Kontextwechsel zu lösen. Während ich deine Antwort lese, sehe ich jetzt deutlich, was in meinem Denken falsch war. Procfs ist der Weg yo gehen, wenn ich die Daten lesen muss. Für alles andere muss ich den Soft-Interrupt durchlaufen, ich meine syscall. – Pkp
Für das Overhead-Problem hängt es sehr stark davon ab, welche Daten Sie suchen. Wie oft ändern sich die Daten, nach denen Sie fragen? –