Hallo Christian,
Address Space (Virtual Size) kann aber deutlich hoeher liegen als der tatsaechliche RAM-Verbrauch eines Prozesses. Ich wuerde eher die Direktive "data" nehmen (siehe limits.conf(5)).
Du hast recht, da ist der Heap mit drin, hatte ich überlesen :-)
Auch das scheint noch nicht das gelbe vom Ei zu sein:
man 3 malloc
NOTE: Normally, malloc() allocates memory from the heap, and adjusts the size of the heap as required, using sbrk(2). When allocating blocks of memory larger than MMAP_THRESHOLD bytes, the glibc malloc() implementation allocates the memory as a private anonymous mapping using mmap(2). MMAP_THRESHOLD is 128 kB by default, but is adjustable using mallopt(3). Allocations performed using mmap(2) are unaffected by the RLIMIT_DATA resource limit (see getrlimit(2)).
Also vielleicht doch "as", mit vorher mal schauen was das Programm alles mapped...
MfG Maddin