Various tools can be used to allocate hardware resources to VMs, depending on the virtualization software and operating system. For example, VMware Workstation is a desktop virtualization software that allows for the creation and running of multiple VMs on one computer. Through its graphical user interface or command-line interface, hardware resources can be assigned to each VM. Furthermore, features like snapshots, clones, and teams are available for managing multiple VMs with ease. Hyper-V is a hypervisor-based virtualization software built into Windows 10 and Windows Server, with a graphical user interface or PowerShell commands for allocating hardware resources. Additionally, features such as checkpoints, replication, and migration can be used to protect and move VMs across different hosts. VirtualBox is a cross-platform virtualization software that is free and open source; its graphical user interface or command-line interface allows for the allocation of hardware resources as well as features like snapshots, clones, and extensions for enhancing and customizing VMs.