VirtualBox allows you to create virtual machines which emulates a complete PC hardware environment on top of the existing operating system (the host operating system).
VirtualBox then allows you to install a wide variety of guest Operating Systems (such as older versions of Windows (98,NT,2000,XP,Vista,7,8), FreeDOS, MSDOS/Windows 3.x, Linux distros such as Ubuntu, Fedora, Debian, Red Hat ; Solaris, FreeBSD, OS/2, QNX, BeOS) inside these virtual machines and can run those virtual machines simultaneously.
You can also create snapshots of the virtual machine, saving the exact state of the machine and can revert back to that state at a future time. So you can experiment with the guest OS in the virtual machine (install software, remove files) and then switch back to the snapshot to undo those changes. See also the extensive VirtualBox documentation
After installing Virtualbox and created your first guest machine, you can install Oracle VM Virtualbox Extension Pack, which adds additional features to VirtualBox guest machines such as support for USB 2.0 devices. This software is not open source, but available under a VirtualBox Personal Use and Evaluation License (PUEL).