config BR2_PACKAGE_SYSSTAT
	bool "sysstat"
	help
          The sysstat utilities are a collection of performance
          monitoring tools for Linux. These include sar, sadf, mpstat,
          iostat, pidstat and sa tools.

          Some Features :

           * Input / Output and transfer rate statistics (global, per
             device, per partition, per network filesystem and per
             Linux task / PID)
           * CPU statistics (global, per CPU and per Linux task /
             PID), including support for virtualization architectures
           * Memory and swap space utilization statistics
           * Virtual memory, paging and fault statistics
           * Per-task (per-PID) memory and page fault statistics
           * Global CPU and page fault statistics for tasks and all
             their children
           * Process creation activity
           * Interrupt statistics (global, per CPU and per interrupt,
             including potential APIC interrupt sources)
           * Extensive network statistics: network interface activity
             (number of packets and kB received and transmitted per
             second, etc.) including failures from network devices;
             network traffic statistics for IP, TCP, ICMP and UDP
             protocols based on SNMPv2 standards; support for
             IPv6-related protocols.
           * NFS server and client activity
           * Socket statistics
           * Run queue and system load statistics
           * Kernel internal tables utilization statistics
           * System and per Linux task switching activity
           * Swapping statistics
           * TTY device activity
           * Power management statistics

	  http://pagesperso-orange.fr/sebastien.godard/
