file vs virtual?