There are some interesting additional fields in this output. The %CPU and %MEM fields just indicate the percentage of CPU time and memory used. The size field indicates the total size of the program and RSS indicates the total resident size of the program. As these values differ the question arises where the rest of the program has gone. The answer is quite simple. As not every program is running at the same time, not all programs have to be in physical RAM at the same time. Also some parts of programs are never used, so they do not have to be in RAM. Other programs wait for user input and do not have to be in RAM until they get some input. These programs are swapped out onto the hard disk to make space for more needy programs and disk caching. In this way a computer with very little physical RAM can appear to have an enormous amount of memory.