Warum sind die RSS-Werte von /proc/status und /proc/smaps unterschiedlich?

Warum sind die RSS-Werte von /proc/status und /proc/smaps unterschiedlich?

Wenn ich alle RSS-Felder in /proc/smaps zusammenfasse, erhalte ich nie das gleiche Ergebnis wie im VmRss-Feld in /proc/status

Wer weiß, warum das passiert? Welcher Wert ist echter RSS?

Beispiel:

cat /proc/16004/smaps | grep -P 'Rss'
Rss:                 836 kB
Rss:                 892 kB
Rss:                  92 kB
Rss:                  32 kB
Rss:                 440 kB
Rss:                   0 kB
Rss:                 168 kB
Rss:                  16 kB
Rss:                   0 kB
Rss:                   4 kB
Rss:                   0 kB

Summe ist: 2480 Kb

cat /proc/16004/status | grep -i VmRSS
VmRSS:      2384 kB

PS: Der Prozess in diesem Beispiel ist eine statisch verknüpfte ausführbare Datei. Keine gemeinsam genutzten Bibliotheken.

file ~/cm_f_regex 
....: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, not stripped

verwandte Informationen