I ett operativsystem är en virtuell enhet en mjukvarurepresentation av en fysisk hårdvaruenhet. Den efterliknar beteendet och funktionen hos en verklig hårdvarukomponent, vilket gör att operativsystemet och applikationerna kan interagera med det som om det var fysiskt närvarande, även om det finns enbart i programvara.
Här är en uppdelning:
* Syfte: Virtuella enheter används främst av flera skäl:
* Abstraktion: De döljer komplexiteten hos den underliggande hårdvaran från operativsystemet och applikationerna. Detta förenklar mjukvaruutvecklingen och gör den mer bärbar (eftersom programvaran inte behöver skräddarsys efter specifik hårdvara).
* Resurshantering: De möjliggör effektiv resursallokering och delning. Flera virtuella enheter kan skapas och hanteras dynamiskt och optimerar användningen av fysisk hårdvara.
* emulering och simulering: De tillåter emulering av hårdvara som kanske inte är fysiskt tillgänglig (t.ex. testning av programvara på en specifik föråldrad hårdvarukonfiguration) eller simulering av hårdvarubeteende under olika förhållanden.
* Säkerhet och isolering: Virtuella enheter kan isoleras från varandra, förbättra säkerheten och förhindra störningar mellan olika applikationer eller användare.
* Flexibilitet och skalbarhet: De ger flexibilitet när det gäller att konfigurera systemet och skala resurser upp eller ner vid behov.
* Exempel: Vanliga exempel på virtuella enheter inkluderar:
* virtuella nätverksgränssnitt (VNIS): Programvarudefinierade nätverksgränssnitt som möjliggör kommunikation över ett nätverk.
* virtuella skivor (VDIS): Filer som fungerar som hårddiskar och ger lagringsutrymme.
* virtuella seriella portar: Programvarurepresentationer av seriekommunikationsportar.
* virtuella skrivare: Programvarudefinierade skrivare som dirigerar utskriftsjobb till fysiska skrivare eller andra destinationer.
* virtuella grafikkort (VGA): Emulera grafikbehandlingsenheter för förbättrad prestanda eller kompatibilitet.
* virtuella ljudkort: Simulera ljudhårdvara.
* hur de fungerar: Operativsystemet använder en virtuell enhetsdrivare (eller liknande mekanism) för att hantera den virtuella enheten. Denna förare avlyssnar förfrågningar från applikationer och översätter dem till åtgärder som kan utföras på den underliggande fysiska hårdvaran eller inom den virtuella miljön.
I huvudsak är virtuella enheter en viktig komponent i moderna operativsystem som underlättar effektiv resurshantering, förbättrad flexibilitet och ökad portabilitet för programvaran. De är grundläggande för tekniker som virtualisering, molnberäkning och containerisering.