Wieso wird /dev/shm nicht genutzt ? Oder besser gefragt, wof

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
Benutzeravatar
notdefine
Beiträge: 114
Registriert: 17.11.2003 13:18:41
Wohnort: Rhede (NRW)
Kontaktdaten:

Wieso wird /dev/shm nicht genutzt ? Oder besser gefragt, wof

Beitrag von notdefine » 28.04.2004 15:49:49

Geschweige denn weiß ich wofür die überhaupt da ist.
ein df gibt mir immer 0% usage aus...

tmpfs 236M 0 236M 0% /dev/shm

Ist das ein Fehler? Wenn ja woran liegts ?

Benutzeravatar
peschmae
Beiträge: 4844
Registriert: 07.01.2003 12:50:33
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: nirgendwo im irgendwo

Beitrag von peschmae » 28.04.2004 16:49:36

hab mich auch schon gefragt wozu das gut sein soll.

Google schweigt sich darüber aus. Die schlauste Diskussion die ich gesehen habe lief darauf hinaus dass einer ganz erstaunt festgestellt hat dass man darauf tatsächlich eine Datei anlegen kann und das Dateisystem dann nicht mehr zu 0% belegt ist :D

MfG Peschmä

Benutzeravatar
notdefine
Beiträge: 114
Registriert: 17.11.2003 13:18:41
Wohnort: Rhede (NRW)
Kontaktdaten:

Beitrag von notdefine » 28.04.2004 17:10:47

Wenn dem so ist, knallt der sich fast 240mb Arbeistspeicher fuer nichts rein...

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 28.04.2004 18:34:19

Shared Memory wird glaube ich für X-Clients benötigt

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 29.04.2004 16:51:26

tmpfs (früher shmfs) ist ein Pagecache basiertes Filesystem ohne Backing Store. Auf gut deutsch heisst das: Das Dateisystem lebt im Prinzip komplett im Cache System von Linux (Plattencaches) und es hängt kein dauerhaftes Medium (wie z.B. ein Platte) dahinter.

Das ganze biete sich z.B. für bestimmte Formen von tmp Verzeichnissen an. Ursprünglich war es für Shared memory entwickelt worden (daher der ursprüngliche Name). Shared memory ist eine Möglichkeit für Prozesse, die sonst nichts miteinander zu tun haben Daten auszutauschen. Da es im Prinzip geanz normale Dateisystem Semantik anbietet (Dateien anlegen, open, close, Permissions usw.) wird der ganze Austausch vom Programmstandpunkt aus sehr einfach.

Das Filesystem belegt auch nur soviel Speicher, wie wirklich belegt ist. Wenn das also leer ist, belegt es (ausser einigen Datenstrukturen) kein RAM.

Ich habe gerade 'mal getestet ein tmpfs (Nachfolger von shmfs) anzulegen, und habe da eine 1000K Random Datei reingeschrieben:

Code: Alles auswählen

none                    257680      1032    256648   1% /mnt/testpart
Die Anzeige und das Accounting selbst funktionieren also.

Ich nehme an, dass der /dev/shm mount entweder von X nicht, oder nur "zwischendurch" benutzt wird. Es kann auch sein, dass X dort keine Files anlegt, sondern nur Named Pipes. Dies sind Pseudo Dateien, die so ähnlich funktionieren, wie die Shell Pipe: Einer schreibt rein, und ein anderer liest Nach dem FIFO Prinzip aus, was auf der anderen Seite reingeschrieben wird. Diese Pipes belegen auch keinen realen Platz...

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

Antworten