Why is VSZ more than RSS in ps aux even if I'm not using any swap?
Linux - HardwareThis forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
In a virtual memory(1) system, a process' resident set is that part of a process' address space which is currently in main memory. If this does not include all of the process' working set, the system may thrash.
In other words,
a) VSZ *includes* RSS
b) "ps -aux" alone isn't enough to tell you if a process is thrashing (although, if your system *is* thrashing, "ps -aux" will help you identify the processes experiencing the biggest hits).
I suspect the OP is aware of basic virtual storage concepts - hence the question.
Most of the (unaccounted) virtual will be for the shared libraries - that is handled via the page cache. Swap is only used for (dirty) anonymous pages. Probably being contained within the swap cache, without need to be actually swapped to disk.
Init is a bad example to look at BTW - have a look at a userspace process - /proc/<pid>/smaps will be helpful.
sorry that I hijack your thread; but I have a similar problem and i do not understand.
weijie90,
from your thread post; i dont know if the data are both in kbs or megs. Top usually display data in kbs, and free typically in kbs. but saying that you have 881 kbs in your system is impossible. So i assume that you have 881megs of ram space total. which makes sense, your application only uses 1.584 meg of virtual memory.
Well, my problem is, my process memory is more than my RAM memory given that I do not use any disk swap memory. Can this be possible. Here is an illustration:
Free mem in Kbs
total used free shared buffers
Mem: 118648 61824 56824 0 3204
Swap: 0 0 0
Total: 118648 61824 56824
Such are the joys of "virtual" - nothing is as it seems. Applications ask for ridiculous amounts of storage, and users expect them to work. It's only when data is actually written to a page that anyone starts to care.
For example, on my latop: /proc/meminfo/
VmallocTotal: 34359738367 kB
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.