Operating system-level virtualization imposes little overhead as guest programs use the host OS interface without emulation. However, it is not as flexible as other approaches as it can only host the same OS as the host and not different OSes. Some OS virtualizers provide file-level copy-on-write to back up data more efficiently than block-level schemes used by whole system virtualizers. Restrictions are placed on containers to prevent modifying the kernel or accessing certain resources. Virtualization has matured and is used for server consolidation, operational agility through live migration, high availability, and improving responsiveness of IT operations.