ImVirt(3) detects several virtualizations

SYNOPSIS


use ImVirt;
print imv_get(IMV_PROB_DEFAULT, imv_detect()),"\n";

DESCRIPTION

The "ImVirt" package tries to detect if it is run in a virtualization container. At least the following container should be detected:
ARAnyM
KVM
lguest
LXC
OpenVZ
QEMU
UML
VirtualBox
Virtual PC/Server
VMware
Xen

DETECTION HEURISTIC

The detection is based on a heuristic - you should not trust the result at all.

ImVirt probes for different well-known characteristics of different virtualization containers. Any characteristics found or not found are weighted by their significance.

The result of the heuristic is a weighted tree. The leaves are the (not) detected containers.

FUNCTIONS

The following functions should be used to retrieve the detected virtualization containers:
imv_get($prob) Returns exactly one string describing the detected container. If the detected container has a smaller match probability than $prob the string 'Unknown' is returned.
imv_get_all() Returns a hash any positive detected containers as keys and their corresponding match probability as value.
imv_get_pos_results() Returns a list of all possible results which might be returned by all detection modules. The list entries might be appended by some additional data like version numbers etc.