| Accuracy of the memory usage & activity screening
|
|
|
| ProcessController v3.0 adds memory usage screening, but be aware that is information is very inaccurate. BeOS offers no real way to monitor memory usage precisely. Nevertheless, it is possible to give some memory usage indications, but please, do understand that the figures given there are only indications!
|
| Here is an example of what ProcessController will tell you about the memory usage of the different applications of your BeOS system:
|
|
|
| The bars have different meanings:
|
|
|
| - The top "System Resources & Caches" bar will tell you how much memory is currently "committed", that is, used in any way by the system or any of the running applications. This is the biggest of all the measures given (the right number of the top line). This is also the only "reliable" number given by the system. When this number equals what your computer has of memory, BeOS will begin to "swap", that is, BeOS will use disk space to simulate more physical memory. The global performances of your system will decrease significantly in such situations, but you'll be able to continue working (well, unless you are trying to do real time processing, but that's an other story!). In the given example, 94.1 MB of memory are committed out of a total of 256 MB of memory. The committed memory is represented by the colored part of the bar (both blue & purple parts).
|
| The blue part of the bar represent the total memory used by the running applications for their various data. This this the exact sum of very rough figures (describe below), therefore, this "all applications memory usage indicator" is very inaccurate...
|
|
|
| The purple part is therefore a very rough representation what the BeOS itself uses of memory. This includes disk cache, cached binaries (when you launch an application, its binary is loaded in memory and cached. Relaunching an application will be much faster than the first start mostly because of that), and other internal BeOS structures. The more you have memory, the more BeOS will use to cache various data.
|
|
|
| - The next bar describe the memory usage of each application. Again, the bar has two colors, but first, it must be pointed out that the colored parts represent the memory usage taken out of the total committed memory, and not the total system memory. In the given example, if an application had a completely colored bar, it would be "using" at most 94.1 MB, not 256 MB.
|
|
|
| The dark blue part of the bar represents the usable data of your application, that is the quantity of memory where your application can currently write into, minus some data structures shared with application & network servers. This figure is probably the a fairly accurate approximation of what you application "really uses" of memory. Be aware nevertheless that the way this figure is calculated is very subjective and that many would argue with the way it is calculated. If an application leaks memory, this figure will grow. For a very simple application, this figure will be "small". Of course, this figure doesn't tell how much memory is used as a side effect in other applications, for instance in the application server.
|
|
|
| The second number (represented visually by blue part of the bar, both light & dark) tells how much memory your application currently has access to. Don't be confused by this second number: if you add this value for all the applications running in your system at the same time, you will find a number possible much bigger than the total memory of your computer! That's because a lot of memory is shared between applications to spare resources. Shared libraries represent a big part of that number (those are pieces of code shared by different applications). The light blue part of the bar represent the read-only parts of memory your application can currently access to.
|