A method and apparatus for the virtualization of appliances provides an
embedded operating system (OS) which is included in the system boot ROM
of a personal computer. When the system boots, the OS is launched and
looks for all available virtual appliances from, for example, the
following places: local USB, flash card, e.g. SD, xD, CF, CDROM/DVD, or
other storage media; local hard disk storage; and the Internet, e.g. an
appliance server. The user selects an appliance to use from the OS,
whereupon the appliance is loaded and launched. If the selected appliance
is not on a local storage, then it is downloaded, e.g. over the Internet
from an appliance server. The downloaded appliance can be cached in local
storage media such that, the next time it is needed, it need not be
downloaded from the appliance server. The user can also elect to boot an
operating system from the hard disk, if an operating system and hard disk
are installed, or to power-off the system.