Yleensä järjestelmän virtualisointi viittaa yhteen kahdesta asiasta; tietokonejärjestelmän virtualisointi tai käyttöjärjestelmän virtualisointi. Tietokonevirtualisointi keskittyy ohjelmiston käyttämiseen virtuaalisen tietokonejärjestelmän luomiseen. Käyttöjärjestelmän virtualisointi luo käyttöympäristön virtuaalisia esiintymiä. Nämä esiintymät toimivat usein muiden järjestelmien päällä tai viedään virtuaaliseen tietokonejärjestelmään. Kummassakin tapauksessa tekniikka keskittyy ohjelmiston luomiseen, joka emuloi laitteistotietojärjestelmää.
Virtualisointitekniikka on ollut käytössä 60 -luvulta lähtien. Alkuaikoina tietokoneet käyttivät ohjelmistoa emuloidakseen koneen toimintoja ja luodakseen alhaisen tason resursseja, kuten muistia. Näitä varhaisia virtuaalisia ohjelmia haittasi tuon aikakauden tietokoneiden suhteellisen pieni teho. Vasta 90 -luvun lopulla virtuaalijärjestelmät alkoivat todella nousta. Laskentatehon kasvu, nopean tiedonsiirron saatavuus ja moniytimisten prosessorien laaja käyttö mahdollistivat järjestelmän täydellisen virtualisoinnin.
Virtuaalinen tietokonejärjestelmä voi olla mitä tahansa palvelimelta pöytätietokoneelle. Missä tahansa muodossa tietokonejärjestelmä toimii samalla tavalla – yksi laitteistotietokone suorittaa ohjelman, joka jakaa järjestelmän tehokkaasti useisiin osiin. Jokaisessa osassa on täysin toimiva käyttöjärjestelmä asennettuna tai virtuaalisesti liitettynä siihen. Ohjelma valvoo jokaista yksittäistä osaa, mutta sen ulkopuolella jokainen osa toimii itsenäisenä koneena.
Mitä sitten tapahtuu, riippuu virtualisoidun koneen tarkoituksesta. Virtuaalipalvelin toimii aivan kuten tavallinen palvelin. Muut tietokoneet ja järjestelmät muodostavat yhteyden siihen, usein edes tietämättä, että järjestelmä ei ole “todellinen”. Virtuaalinen työpöytäjärjestelmä muodostaa yleensä yhteyden etätyöasemaan, joka on erityisesti varustettu käsittelemään virtuaalista työtilaa. Työpöydälle pääsee mistä tahansa ennalta määrätystä paikasta, jolloin työntekijä voi käyttää henkilökohtaista tietokonettaan useista paikoista.
Käyttöjärjestelmän virtualisointiin kuuluu virtuaalipalvelimet tai pöytätietokoneet, jotka yhdistyvät yhteen käyttöjärjestelmän versioon ja luovat virtuaalisen kopion virtuaaliohjelmansa päälle. Tässä tapauksessa käyttäjä istuutuu asemalleen ja muodostaa yhteyden virtuaalipalvelimeen, joka vuorostaan muodostaa yhteyden käyttöjärjestelmän virtuaaliversioon ja lähettää sen käyttäjälle. Toinen yleinen syy käyttöjärjestelmän virtualisointiin on isäntäympäristöissä. Kun tietokone toimii Internet -isäntänä, se sisältää useiden käyttäjien tilit yhdessä järjestelmässä. Jokainen näistä käyttäjistä vaatii täyden pääsyn käyttöjärjestelmän tarjoamiin järjestelmiin, mutta ei muiden tilien resursseja – luomalla virtuaalisen käyttöjärjestelmän koko järjestelmälle, tilit voivat käyttää mitä he tarvitsevat ilman, että he haittaavat muut tilit.