x86 Virtual Machine (Qtum)


X86 Virtual Machine enables Qtum developers to write smart contracts in a language of their choice.

What Is an x86 Virtual Machine?

The Qtum team has created an x86 virtual machine (VM) for executing smart contracts in a variety of programming languages. This VM operates very similarly to the existing Ethereum VM, with some notable enhancements:

  • In the Ethereum VM, all smart contracts must be written in Solidity and compiled down to byte code executed on the EVM. In this Qtum VM, developers can write their smart contracts in any language that supports a JIT compiler, including C++, Java, Python, and others widely used in application development. This gives dApp developers much more flexibility in terms of smart contract development.
  • In addition to supporting the existing gas model on Ethereum (where users pay for each operation they execute in a smart contract), Qtum has also added two new pricing models: fixed-fee per transaction and fee per transaction.

  • The Qtum VM supports x86 registers and memory operations through a unified 16-bit instruction encoding scheme that significantly reduces gas costs in common cases compared to the Ethereum VM. This will allow developers to execute more operations per transaction and increase throughput on the Qtum blockchain.

What Is Qtum?

Qtum is an open-source blockchain project that aims to bring the stability of Bitcoin together with the flexibility of Ethereum. It was developed by the Singapore-based Qtum Foundation, led by Patrick Dai, Neil Mahi, and Jordan Earls in 2016. However, its mainnet was launched in 2017.
The protocol is a combination of Bitcoin Core, proof-of-stake consensus, and the Ethereum Virtual Machine (EVM). It allows smart contracts to be executed on a proof-of-stake consensus mechanism. This uses less electricity than proof-of-work and reduces the risk of centralization.
Qtum employs a Decentralized Governance Protocol (DGP) that ensures the blockchain remains functional regardless of what happens to a handful of nodes. DGP allows specific blockchain parameters like block size, gas price, and block interval to be modified without the need to hard fork. It utilizes a UTXO transaction model for faster processing of transactions, but it can also handle smart contracts just like Ethereum.
Qtum's DGP assigns node operators specific decision rights in regards to updates, such as hard forks. Node operators must reach a consensus before updates are applied to the blockchain. This prevents bugs or hacks from destabilizing the network and gives users clear guidelines for keeping track of updates.

There are other crypto projects out there attempting to achieve the same goals as Qtum, however, it is worth noting that Bitcoin's UTXO (unspent transaction output) model is what makes the platform unique. Qtum is a platform trying to produce smart contracts and dApps (decentralized applications) that can be used in enterprise environments.