Sanallaştırma kavramı ilk olarak 1950'lerde ortaya atılır. 1960'larda IBM'in bu konu üzerinde çalışmaları olur ve 1990'larda VMware ile popülerlik kazanır. VMware'in ardından XenSource, Microsoft ve Oracle da bu kavram üzerinde çalışmaya başlar.
Sanallaştırma teorik olarak bilgisayar kaynaklarının bilgisayar kullanıcılardan soyutlanmasını ifade eder. Bunu sağlamak için bir soyutlama tabakası kullanılır. Bu tabaka çoğunlukla Hypervisor ya da Virtual Machine Monitor (VMM) olarak adlandırılır. Hypervisor'un üzerinde çalıştığı kaynak ana kaynak, bu kaynakta çalışan sanal yazılımlar da misafir yazılım olarak adlandırılır. Sanallaştırma amaçlarına ve teknolojisine göre iki farklı başlıkta incelenilir.
Ağ sanallaştırma, geleneksel olarak donanımdan yazılıma teslim edilen ağ kaynaklarının soyutlanması anlamına gelir. Bu sanallaştırma çeşidinde, birden çok fiziksel ağı tek bir sanal ağda birleştirebilir veya bir fiziksel ağı ayrı, bağımsız sanal ağlara bölebilir.
Sunucu sanallaştırma, fiziksel bir sunucuyu birden çok yalıtılmış sanal sunucuya bölme işlemidir. Her sanal sunucu kendi işletim sistemlerini bağımsız olarak çalıştırabilir. Bu sanallaştırma çoğunlukla sunucu kaynaklarını sunucu kullanıcılarından gizlemek için kullanılır.
Masaüstü sanallaştırma, uzak bir cihazdan erişilebilmesi için bir kullanıcının masaüstünün simüle edilmesidir. Bu sayede kurumlar, çalışanlarının bağlanmak için kullandıkları cihazlarının konumlarından, kaynaklarından, işletim sisteminde ve benzeri diğer etkilerinden etkilenmeden bağlandıkları cihazlarda çalışmasına izin verir.
İşletim sistemi sanallaştırma, doğrudan fiziksel bir donanım üzerinde ya da bir işletim sistemi üzerinde aynı fiziksel kaynakları kullanarak birden fazla misafir işletim sisteminin çalıştırılmasıdır.
Depolamanın sağlanması ve yönetiminin fiziksel donanımdan ayrılması için veri depolamayı soyutlayan bir sistemdir. Bu sanallaştırma, ayrı fiziksel depolama kaynakları tek bir mantıksal aygıt olarak yönetebilir. Sunucu sanallaştırmasından farklı olarak sanal depolama, yazılım kullanılarak oluşturulan bellekte çalışan depolama kontrolcüsüdür.
Hypervisor tabanlı sanallaştırma teknolojisi uzun süredir kullanılmaktadır. Fiziksel kaynaklar ile yazılımları birbirinden soyutlayan hypervisor katmanı kullanılarak bu tür sanallaştırma elde edilir. Bu sanallaştırma iki türlü elde edilir.
Tip 2'de Hypervisor doğrudan fiziksel kaynak üzerine kurulur. Fiziksel kaynak ile Hypervisor katmanı arasında herhangi bir işletim sistemi bulunmaz. Fiziksel kaynak doğrudan kullanıldığı için Tip 1'e göre daha performanslıdır. Bu tür sanallaştırma Apple Boot Camp, Microsoft Hyper-V, Proxmox ve VMware ESXi ile sağlanabilir.
Tip 1'de Hypervisor fiziksel kaynak üzerine kurulmuş işletim sisteminin üzerine kurulur. Fiziksel kaynakla iletişim ana işletim sistemi tarafından sağlanacağı için Tip 2'ye göre daha az performanslıdır. Bu sanallaştırma teknolojisi genellikle test amaçlı kullanılır. Bu tür sanallaştırma Oracle VirtualBox ve VMware Player ile sağlanabilir.
Linux tabanlı geliştirilmiş yeni bir sanallaştırma teknolojisidir. Tip 1'deki Hypervisor katmanı yerine işletim sisteminin üzerinde Docker Engine denilen bir katman bulunur. Bu katman sanallaştırılacak her bir uygulama için ayrı bir işletim sistemi gibi davranır. Bu sayede diğer sanallaştırma türlerine göre tek bir fiziksel kaynakta daha çok yazılım sanallaştırılabilir.