Hvad er en virtuel maskine (VM)?

Hvad er en virtuel maskine (VM)?

Let øvet
Opdateret Jul 9, 2025
7m

Vigtigste budskaber

  • Virtuelle maskiner (VM'er) giver dig mulighed for at køre forskellige operativsystemer eller applikationer på den samme enhed uden ekstra hardware. 

  • VM'er er gode til sikkert at teste ny software, prøve andre systemer eller isolere programmer, der kan være risikable.

  • VM'er som Ethereum Virtual Machine (EVM) muliggør, at smart contracts og decentrale applikationer (DApps) kan køre pålideligt på et globalt netværk af computere.

  • Selvom VM'er tilbyder fleksibilitet og kontrol, kan der være kompromiser mht. ydeevne, ressourceforbrug og kompleksitet.

virtuel maskine cta banner

Introduktion

Har du nogensinde ønsket at køre Windows på din MacBook eller teste en Linux-app uden at ændre dit operativsystem eller købe en separat computer? VM'er lader dig gøre det ved at skabe et isoleret miljø, hvor forskellige operativsystemer og applikationer kan køre sikkert. De bruges også bredt i blockchain-netværk til at understøtte smart contracts og decentrale applikationer (DApps).

Hvad er en VM?

En VM er som en computer, du kan opsætte med blot et par klik, og der er ikke brug for ekstra hardware. Du kan installere et operativsystem, gemme filer, køre apps og oprette forbindelse til internettet, men du kører det inden i din eksisterende computer, også kendt som værten.

Dit værtsystem udfører det tunge arbejde bag kulisserne, låner sin hukommelse, behandlingskraft og lager, så VM kan køre glat. Dette er især nyttigt, hvis du har brug for at bruge software, der kun er tilgængelig på et andet operativsystem. 

Hvordan fungerer VM'er egentlig?

Bag kulisserne styrer et stykke software kaldet en hypervisor alt dette. Hypervisoren tager din computers fysiske ressourcer som CPU, RAM (Random Access Memory) og lager og opdeler dem, så flere VM'er kan bruge dem samtidig.  

Der er to hovedtyper af hypervisorer:

  • Type 1 (Bare-metal): Disse installeres direkte på hardware og bruges ofte i datacentre eller cloud-platforme. De er bygget til ydeevne og effektivitet.

  • Type 2 (Hostede): Disse kører oven på dit almindelige operativsystem (som apps) og er velegnede til test og udvikling.

Når en VM er opsat, kan du starte den ligesom en rigtig computer og installere software, surfe på internettet eller bygge applikationer.

Hvorfor bruge en VM?

1. Test af nye operativsystemer 

Med en VM kan du teste forskellige operativsystemer uden at foretage ændringer på din hovedcomputer. Det er som at prøve et nyt system i et sikkert, adskilt rum.

2. Isolering af risikabel software

Har du brug for at åbne en fil, du ikke er sikker på, eller teste en ukendt app? At køre den i en VM holder din computer beskyttet, så hvis du støder på malware eller et systemnedbrud, vil din hovedcomputer ikke blive påvirket.

3. Kørsel af ældre eller utilgængelig software

Nogle programmer fungerer kun på ældre systemer som Windows XP. En VM kan genskabe det miljø, så du kan fortsætte med at bruge software, der måske ikke fungerer på nutidens enheder.

4. Udvikling og test af kode på tværs af platforme

VM'er gør det lettere for udviklere at teste kode på forskellige operativsystemer og simulere, hvordan nye applikationer vil opføre sig i forskellige miljøer.

5. Strøm til skyen

Mange cloudtjenester (som AWS, Azure og Google Cloud) er bygget på VM'er. Når du starter en cloudinstans, starter du en VM i et fjernt datacenter, der er klar til at hoste hjemmesider, apps eller databaser.

Sådan bruger blockchain-netværk VM'er 

Mens traditionelle VM'er er isolerede sandkasser, fungerer blockchain-virtuelle maskiner som motoren, der kører smart contracts i blockchain-netværk. Ethereum Virtual Machine (EVM) giver udviklere mulighed for at skrive smart contracts i sprog såsom Solidity, Vyper og Yul og implementere dem på Ethereum og andre EVM-kompatible netværk. EVM'en sikrer, at hver node på netværket følger de samme regler, når de opretter eller interagerer med smart contracts.

Blockchain-netværk implementerer deres egne typer af VM'er baseret på designmål. Nogle fokuserer på hastighed og skalerbarhed, mens andre sigter mod at være mere sikre eller fleksible for udviklere. Netværk såsom NEAR og Cosmos bruger WebAssembly (WASM)-baserede VM'er, som understøtter smart contracts skrevet i flere programmeringssprog. 

Andre blockchain-netværk såsom Sui bruger MoveVM, som udfører smart contracts skrevet i Move-sproget. Solana-blockchainen bruger et specialtilpasset runtime, ofte kaldet Solana Virtual Machine (SVM), der er designet til at behandle transaktioner parallelt og håndtere store mængder netværksaktivitet.

Virtuelle maskiner i aktion 

Du bemærker dem måske ikke, men VM'er arbejder i baggrunden hver gang du interagerer med decentrale applikationer (DApps).

  • Hvis du bruger en Decentralized Finance (DeFi)-applikation såsom Uniswap til at swappe tokens, bliver dine transaktioner håndteret af smart contracts, der kører inde i EVM.

  • Hvis du præger et NFT, kører VM'en koden, der holder styr på, hvem der ejer hvert NFT. Når du foretager et køb eller en overførsel, opdaterer VM registrene, så ejerskabet af NFT'et forbliver korrekt.

  • Hvis du bruger en Layer 2-rollup, kan dine transaktioner blive udført af en specialiseret VM, såsom en zkEVM. zkEVM'er gør det muligt for zk-rollups at køre smart contracts, mens de drager fordel af zero-knowledge proofs (ZKP).  

Begrænsninger ved VM'er

1. Ydeevneoverhead: VM'er tilføjer et ekstra lag mellem hardwaren og den kode, der udføres. Dette kan bremse tingene eller kræve flere computerressourcer sammenlignet med at køre apps direkte på en fysisk maskine.

2. Driftskompleksitet: Vedligeholdelse af VM'er (især på tværs af cloud-infrastruktur eller blockchain-netværk) kræver meget arbejde med at opsætte og opdatere. Dette vil tage tid og kræver ofte specialiserede værktøjer og viden.

3. Kompatibilitet: Smart contracts er ofte designet til et specifikt VM-miljø. Kode skrevet til smart contracts på Ethereum skal genskrives eller tilpasses for at fungere på andre ikke-kompatible blockchains såsom Solana. Dette betyder, at udviklere skal bruge ekstra tid og kræfter, hvis de ønsker at lancere den samme app på flere miljøer.

Sammenfatning

VM'er spiller en vigtig rolle i, hvordan både almindelige computere og blockchain-systemer fungerer. De lader dig køre forskellige operativsystemer, teste software sikkert og bruge den samme hardware til flere opgaver. 

Virtuelle maskiner bruges også i blockchain-netværk til at drive smart contracts og decentrale apps. Selv hvis du ikke er ekspert, kan det at vide, hvordan VM'er fungerer, give dig en bedre forståelse af, hvad der sker under overfladen i mange af de DeFi-værktøjer og platforme, vi bruger.

Yderligere læsning

Ansvarsfraskrivelse: Dette indhold præsenteres for dig "som det er" til generel information og uddannelsesmæssige formål uden erklæring eller garanti af nogen art. Det skal ikke opfattes som økonomisk, juridisk eller anden professionel rådgivning, og det er heller ikke hensigten at anbefale køb af et bestemt produkt eller en bestemt tjeneste. Du bør selv søge råd fra relevante, professionelle rådgivere. Produkter, der er omtalt i denne artikel, er muligvis ikke tilgængelige i din region. Hvis denne artikel er et bidrag fra en tredjepart, bør du bemærke, at dennes synspunkter udtrykkeligt tilhører denne tredjepartsbidragsyder og ikke nødvendigvis afspejler Binance Academys synspunkter. Læs vores fulde ansvarsfraskrivelse for yderligere oplysninger. Priserne på digitale aktiver kan være volatile. Værdien af din investering kan gå op eller ned, og du får muligvis ikke det investerede beløb tilbage. Du er eneansvarlig for dine investeringsbeslutninger, og Binance Academy er ikke ansvarlig for eventuelle tab, du måtte lide. Dette materiale bør ikke anses for værende økonomisk, juridisk eller anden rådgivning. For yderligere oplysninger kan du læse vores vilkår for anvendelse og risikoadvarsel.