Máy ảo (VM) là một chương trình mô phỏng hệ thống máy tính. Nó có CPU, bộ nhớ và bộ lưu trữ ảo và nhìn từ bên ngoài thì không khác gì một máy vật lý có cùng phần cứng.
Máy ảo có hệ điều hành, tệp và ứng dụng. Nó hoạt động giống như một máy tính vật lý; nó có thể lưu trữ các trang web, chạy chương trình và tồn tại trên mạng với các hệ thống khác. Nếu xem trên màn hình, máy ảo sẽ xuất hiện dưới dạng một cửa sổ chạy trong hệ điều hành của chính máy tính đó.
Nó cũng có CPU, bộ nhớ và bộ lưu trữ nhưng những thứ này chỉ là mô phỏng chứ không phải thuộc vật chất. Do đó, nhiều máy ảo có thể cùng tồn tại trên một máy chủ. Khi điều này xảy ra, máy chủ sẽ sử dụng một phần mềm gọi là bộ ảo hóa để quản lý chúng. Trình ảo hóa ánh xạ phần cứng ảo của VM tới các thành phần vật lý trên máy chủ.
Trong trường hợp này, một máy chủ vật lý có thể có hai, ba, bốn hoặc thậm chí mười máy ảo đang chạy trên đó. Tuy nhiên, số lượng bị giới hạn bởi tài nguyên của máy chủ – quá nhiều VM sẽ dẫn đến giảm hiệu suất.
Máy ảo là hộp cát – các phần không gian ảo trong đó mã có thể được chạy riêng biệt với phần còn lại của hệ thống. Điều này làm cho máy ảo trở nên lý tưởng để thử nghiệm phần mềm mới hoặc chạy mã có thể độc hại.
Máy ảo có thể chạy hệ điều hành khác hoặc cũ hơn để cho phép người dùng chạy phần mềm không hoạt động trên hệ điều hành của máy tính. Ví dụ: ai đó có thể sử dụng VM để chạy một phần mềm Windows trên thiết bị Linux. Để đạt được điều này, họ sẽ chạy một máy ảo chạy hệ điều hành Windows trên hệ thống Linux của họ.
Các nút trên mạng Ethereum đều chạy Máy ảo Ethereum (EVM), được sử dụng để thực hiện các hợp đồng thông minh. Bởi vì điều này xảy ra trong một hộp cát riêng biệt nên nó mang lại lợi ích bảo mật đáng kể cho nền tảng Ethereum, giúp nền tảng này miễn nhiễm với DDoS (các cuộc tấn công từ chối dịch vụ phân tán là chiến lược thường dùng của nhiều tin tặc.