A
computer appliance is generally a separate and discrete hardware device with integrated software (
firmware), specifically designed to provide a specific computing resource. These devices became known as "appliances" because of their similarity to
home appliances, which are generally "closed and sealed" – not serviceable by the owner. The hardware and software are pre-integrated and pre-configured before delivery to customer, to provide a "turn-key" solution to a particular problem. Unlike general purpose
computers, appliances are generally not designed to allow the customers to change the software (including the underlying
operating system), or to flexibly reconfigure the hardware.