All of our LHC@home projects run using BOINC - a long-established platform which is used by the vast majority of volunteer-computing projects around the world.
Some of the LHC@home projects also require some extra software in order to manage the CERN-specific algorithms. More below!
BOINC (Berkeley Open Infrastructure for Network Computing) is the underlying client software we use. It allows scientists to plug their own projects into the software, so volunteers can easily download and run applications on their computer. The BOINC client, used by the volunteers, can be configured to run only when the PC is not in use, or to run at the lowest priority while the PC is in use.
More on BOINC can be found in Wikipedia.
Some of the LHC@home projects also use software called VirtualBox. VirtualBox is a free and open source virtualization tool that allows the creation of virtual machine(s) inside your PC. On these virtual machines, you can run any operating system independently of your hardware-installed OS.
We use VirtualBox to place a CERN Virtual Machine on your computer (see below).
CERN has developed the CERNVM (CERN Virtual Machine) to run the complex CERN experiment code in your computer.
Some of our LHC@Home projects run very large CERN software packages with complex dependencies that cannot be easily ported to all the volunteers' operating systems (eg. Windows, GNU/Linux and Mac OS X).
For this reason, we use virtualization - creating virtual machines to run inside VirtualBox, which enables us to run complex codes independently of your platform.
Additionally, using virtualization adds an extra layer of security - if something goes wrong in the physics code, this will not affect your computer.
For more general information, see: Virtualisation - key for LHC physics volunteer computing in the Science Node online magazine.
The virtual machines running in your volunteer PC are controlled by the BOINC client using a software module called Vboxwrapper. This is part of the standard BOINC software, supported by the BOINC development team.