Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Prozess-Speichernutzung (RES/SHR)
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) Diskussionsforum
View previous topic :: View next topic  
Author Message
Vortex375
Veteran
Veteran


Joined: 03 Mar 2005
Posts: 1739
Location: Deutschland

PostPosted: Fri Aug 08, 2008 7:30 pm    Post subject: Prozess-Speichernutzung (RES/SHR) Reply with quote

Hallo zusammen,

zeigt man sich die Speichernutzung eines Prozesses zum Beispiel mit top an, dann gibt es da mehrere Werte.

Unklar ist mir hier die Bedeutung der Werte RES (Resources) und SHR (Shared) zueinander. Start ich beispielsweise ein Programm, dass die Grafik-Bibliothek Qt benutzt und danach ein weiteres Qt-Programm, dann nehme ich mal an, dass die Bibliothek sich nur einmal im Speicher befindet.

Die typische Speichernutzung eines solchen Programms sieht dann etwa so aus:
Code:

RES: 25m
SHR: 19m

Bedeutet das nun, dass der Prozess effektiv nur 4MB Speicher verbraucht, weil die restlichen 19MB mit anderen (Qt-) Anwendungen geteilt werden können, oder bedeutet das, dass der Prozess zusätzlich zu den 19MB Shared-Memory noch 25MB "eigene" Daten im Speicher hat?

Oder ist das etwa ganz anders?

Vielen Dank schonmal.
Back to top
View user's profile Send private message
Hilefoks
l33t
l33t


Joined: 29 Jan 2003
Posts: 849
Location: Emden / Deutschland

PostPosted: Fri Aug 08, 2008 8:38 pm    Post subject: Reply with quote

Von http://wiki.debianforum.de/LinuxSpeichermanagement
Quote:
Die Unterschiede zwischen VIRT, RES und SHR in top
VIRT steht für die virtuelle Größe eines Prozesses und ist die Summe seines aktuell belegten Speichers, von Speicher, den der Prozess in seinen Speicherbereich eingeblendet hat (beispielsweise Grafikkartenspeicher für den X-Server), von Dateien auf der Festplatte, die der Prozess eingeblendet hat (besonders "Shared Libraries") und von Speicher der mit anderen Prozessen geteilt wird. VIRT steht somit für die Speichermenge, auf die ein Programm momentan Zugriff hat.

RES steht für "Resident Size" und damit für genau die Menge an physichem Speicher, die momentan von einem Prozess belegt wird. Hieraus ergibt sich auch die im Bezug auf den verfügbaren Speicher angegebene prozentuale Speichernutzung in der %MEM-Spalte. Dieser Wert wird praktisch immer niedriger sein als der virtuelle Speicherverbrauch eines Prozesses (VIRT), da die meisten Programme zumindest von der C-Library abhängen.

SHR schließlich besagt, wie viel des virtuell belegten Speichers (VIRT) "shareable" ist, also mit anderen Prozessen geteilt werden kann. Benutzt ein Prozess beispielsweise eine bestimmte Library, so heißt dies nicht zwangsläufig, dass sich auch die gesamte Bibliothek tatsächlich im Speicher befindet. Verwendet der Prozess nur einige Funktionen der Bibliothek, so wird zwar die gesamte Bibliothek als Datei auf der Festplatte eingeblendet und sowohl unter VIRT, als auch unter SHR mitgerechnet, aber nur die Teile der Library, aus denen auch Funktionen benutzt werden, befinden sich wirklich im Speicher und zählen somit unter RES.


Mit diesen Werten ist es aber nicht wirklich möglich den realen Speicherverbrauch einer beliebigen Anwendung zu messen. Gerne vergessen wird z.B. das einige Bibliotheken und auch viele Anwendungen (besonders solche die in Programmiersprachen mit automatischer Speicherbereinigung geschrieben sind) mehr Speicher allokieren als sie tatsächlich verwenden. Da sie diesen Speicher aber auch an das System zurückgeben, sollte der Speicher knapp werden, sollte dieser Speicher also nicht mitgezählt werden.

MfG,
Hilefoks
_________________
- Der Computer rechnet vor allem damit, dass der Mensch denkt. -
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) Diskussionsforum All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum