NAME

Sys::Statistics::Linux::MemStats - Collect linux memory informations.

SYNOPSIS

use Sys::Statistics::Linux::MemStats;

my $lxs   = new Sys::Statistics::Linux::MemStats;
my $stats = $lxs->get;

DESCRIPTION

This module collects statistics by the virtual /proc filesystem (procfs) and is developed on default vanilla kernels. It is tested on x86 hardware with the distributions SuSE (SuSE on s390 and s390x architecture as well), Red Hat, Debian, Asianux, Slackware and Mandrake on kernel versions 2.4 and 2.6 and should run on all linux kernels with a default vanilla kernel as well. It is possible that this module doesn't run on all distributions if the procfs is too much changed.

Further it is necessary to run it as a user with the authorization to read the /proc filesystem.

MEMORY INFORMATIONS

Generated by /proc/meminfo.

memused      -  Total size of used memory in kilobytes.
memfree      -  Total size of free memory in kilobytes.
memusedper   -  Total size of used memory in percent.
memtotal     -  Total size of memory in kilobytes.
buffers      -  Total size of buffers used from memory in kilobytes.
cached       -  Total size of cached memory in kilobytes.
realfree     -  Total size of memory is real free (memfree + buffers + cached).
swapused     -  Total size of swap space is used is kilobytes.
swapfree     -  Total size of swap space is free in kilobytes.
swapusedper  -  Total size of swap space is used in percent.
swaptotal    -  Total size of swap space in kilobytes.

The following key are only available by kernels from 2.6.

slab         -  Total size of memory in kilobytes that used by kernel for data structure allocations.
dirty        -  Total size of memory pages in kilobytes that waits to be written back to disk.
mapped       -  Total size of memory in kilbytes that is mapped by devices or libraries with mmap.
writeback    -  Total size of memory that was written back to disk.

METHODS

new()

Call new() to create a new object.

my $lxs = new Sys::Statistics::Linux::MemStats;

get()

Call get() to get the statistics. get() returns the statistics as a hash reference.

my $stats = $lxs->get;

EXPORTS

No exports.

SEE ALSO

proc(5)

REPORTING BUGS

Please report all bugs to <jschulz.cpan(at)bloonix.de>.

AUTHOR

Jonny Schulz <jschulz.cpan(at)bloonix.de>.

COPYRIGHT

Copyright (c) 2006, 2007 by Jonny Schulz. All rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.