hardware or virtual