BEZEICHNUNG
shm_overview - Überblick über gemeinsame Speichernutzung gemäß POSIX
BESCHREIBUNG
Die POSIX-API für gemeinsame Speichernutzung ermöglicht Prozessen den Austausch von Informationen in einem gemeinsamen Speicherbereich.
In der API werden die folgenden Schnittstellen genutzt:
erstellt und öffnet ein neues Objekt oder öffnet ein vorhandenes Objekt. Das ist analog zu open(2). Der Aufruf gibt einen Dateideskriptor zurück, der für die Nutzung durch die im Folgenden aufgelisteten Schnittstellen bestimmt ist. | |||
bestimmt die Größe des gemeinsamen Speicherobjekts. (Ein neu erzeugtes gemeinsames Speicherobjekt hat eine Ausdehnung von Null). | |||
bildet das gemeinsame Speicherobjekt in den virtuellen Adressraum des aufrufenden Prozesses ab. | |||
löst das gemeinsame Speicherobjekt aus dem virtuellen Adressraum des aufrufenden Prozesses heraus. | |||
entfernt den Namen eines gemeinsamen Speicherobjekts. | |||
schließt den von shm_open(3) bereitgestellten Dateideskriptor, wenn dieser nicht mehr benötigt wird. | |||
beschafft eine stat-Struktur, die das gemeinsame Speicherobjekt beschreibt. Zu den von diesem Aufruf zurückgegebenen Informationen gehören die Größe des Objekts (st_size), Rechte (st_mode), Besitzer (st_uid) und Gruppe (st_gid). | |||
ändert den Besitzer eines gemeinsamen Speicherobjekts. | |||
ändert die Rechte eines gemeinsamen Speicherobjekts. |
Versionen
Gemeinsamer Speicher gemäß POSIX wird seit Linux
2.4 und Glibc 2.2 unterstützt.
Dauerhaftigkeit
Gemeinsame POSIX-Speicherobjekte sind im Kernel sehr
langlebig: Ein gemeinsames Speicherobjekt besteht fort, bis
das System heruntergefahren wird oder bis alle Prozesse das
Objekt aus ihrem Adressraum entfernt haben und es mittels
shm_unlink(3) »zerstört« wurde.
Linken
Programme, die die POSIX-API für gemeinsame
Speichernutzung verwenden, müssen mit cc -lrt
übersetzt werden, damit sie gegen die
Echtzeit-Bibliothek librt gelinkt werden.
Zugriff auf
gemeinsame Speicherobjekte über das Dateisystem
Unter Linux werden gemeinsame Speicherobjekte in einem
virtuellen Dateisystem (tmpfs(5)) erzeugt, das
üblicherweise unter /dev/shm eingehängt
wird. Seit Kernel 2.6.19 unterstützt Linux die
Verwendung von Zugriffssteuerlisten (access control list,
ACL) zur Rechtevergabe für die Objekte im virtuellen
Dateisystem.
ANMERKUNGEN
Normalerweise müssen Prozesse ihren Zugriff auf ein gemeinsames Speicherobjekt synchronisieren, beispielsweise mit POSIX-Semaphoren.
Gemeinsam genutzter System-V-Speicher (shmget(2), shmop(2), etc.) ist eine ältere API für gemeinsame Speichernutzung. Gemeinsamer Speicher nach POSIX stellt eine einfachere und besser entworfene Schnittstelle bereit. Auf der anderen Seite ist gemeinsamer Speicher nach POSIX nicht so weit verbreitet (besonders auf älteren Systemen) als das System-V-Verfahren.
SIEHE AUCH
fchmod(2), fchown(2), fstat(2), ftruncate(2), mmap(2), mprotect(2), munmap(2), shmget(2), shmop(2), shm_open(3), shm_unlink(3), sem_overview(7)
KOLOPHON
Diese Seite ist Teil der Veröffentlichung 5.07 des Projekts Linux-man-pages. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Eberhard Schauer <Martin.E.Schauer [AT] gmx.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <debian-l10n-german [AT] lists.org>.