Coffeehouse Post

Single Post Permalink

View Thread: Why do some people not like .Net framework.
  • User profile image
    cain

    Don't worry imekon, you're definately not the first person to make the mistake you're making, and you certainly will not be the last.  The explanation below was written about Gnome, but it applies here too.  What you need to understand is that most of the 20MB you're seeing belongs to the .NET Framework itself (not the application), which falls into the Share part (i.e. if you run a bunch of managed apps at the same time they can share that memory and it only counts once for the whole lot of them, not once each)

    Understanding Memory usage in GNOME.
    Miguel de Icaza (miguel@gnu.org)

    People usually look at the memory sizes for the processes and
    misinterpret the information. This is a common mistake.

    When talking about memory usage and the reports you get from the
    operating system, you need to keep in mind the following terms and
    what they mean:

    SIZE This is the address space seen by the process. If the
    process maps 65 megs of memory, the address space of
    the process will be reported as 65 megs of memory.

    Even if only 100k of memory are actually used.

    This bit of information is not usually very useful and
    this is what most people believe is the actual memory
    usage of a program: it is not.

    RSS This is the "Resident Set Size". This is the amount
    of memory actually resident on memory. This is a
    better computation of what is actually loaded in
    memory.

    This does not include any piece of code that have been
    "swapped out".

    So, for example, if you have a program that uses 100k
    of memory and the operating system discards or swaps
    40k of memory, the RSS will be 60k.

    The RSS includes both the memory which is unique to
    this process and the memory shared with other
    processes. In most modern Unix systems, a large part
    of this accounts for the memory used by shared
    libraries. So it usually includes the ammount of
    memory that is used by other processes for the code
    that is shared: The libc is usually taken into
    account.

    GNOME uses many shared libraries (this makes the
    applications share more memory).

    SHARE This is the amount of memory from the RSS that is
    shared with other applications.

    So, the actual memory used uniquely by an application is RSS - SHARE.