Weiß jemand, was der Unterschied zwischen mmap(2)
und mmap(3)
ist? Man Abschnitt 3 wird wie folgt beschrieben: "Dieses Kapitel beschreibt alle Bibliotheksfunktionen mit Ausnahme der in Kapitel 2 beschriebenen Bibliotheksfunktionen, die Systemaufrufe implementieren." Führt mmap(3)
keinen Systemaufruf aus?mmap (2) vs mmap (3)
Lesen der beiden man-Seiten, sehe ich, dass mmap(2)
scheint eine viel breitere Palette von Flags als mmap(3)
akzeptiert akzeptiert, und in der Lage, Gerät I/O-Räume abzubilden. mmap(3)
behauptet, in der Lage zu sein, "shared memory objects" und "typed memory objects" zusätzlich zu Dateien abzubilden, erwähnt jedoch nicht die Geräte-E/A.
Da die beiden Funktionen den gleichen Namen haben, bin ich mir nicht einmal sicher, wie ich den einen und nicht den anderen wählen kann.
Danke, das war sehr klar. Danke auch für den Zeiger in den Quellbaum der C-Bibliothek. Obwohl ich auf Kernel- und Treiberebene ziemlich viel Arbeit verarbeite, stoße ich nur selten auf User-Bereiche für andere Tools als Test-Utilities und habe Glibc-Source überhaupt nicht untersucht. Ich sehe, dass mir eine sehr nützliche Herangehensweise an eine Reihe von Problemen fehlte. – EQvan