Máy ảo (VM - Virtual Machine) là một chương trình mô phỏng một hệ thống máy tính, bao gồm CPU ảo, bộ nhớ và lưu trữ ảo. Nhìn từ bên ngoài, nó không khác gì một máy tính vật lý có cùng phần cứng.
Một máy ảo được trang bị hệ điều hành, tệp và ứng dụng, và hoạt động tương tự như một máy tính vật lý. Nó có thể lưu trữ web, chạy các chương trình và hoạt động trong mạng cùng với các hệ thống khác. Khi hiển thị trên màn hình, máy ảo được nhìn thấy như một cửa sổ chạy trong hệ điều hành của máy chủ.
Ngoài ra, nó có CPU, bộ nhớ và lưu trữ ảo, được mô phỏng thay vì vật lý. Do đó, nhiều máy ảo có thể cùng tồn tại trên một máy chủ duy nhất, được quản lý bởi một phần mềm gọi là trình ảo hoá (hypervisor). Trình ảo hoá phân bổ phần cứng ảo của VM với các thành phần vật lý của máy chủ.
Trong cấu hình này, một máy chủ vật lý duy nhất có thể hỗ trợ nhiều máy ảo, số lượng máy ảo bị giới hạn bởi tài nguyên của máy chủ. Quá nhiều VM có thể dẫn đến hiệu suất giảm.
Máy ảo đóng vai trò như môi trường biệt lập hoặc hộp cát (sandbox), trong đó mã có thể được chạy độc lập với hệ thống. Do đó, chúng lý tưởng để thử nghiệm phần mềm mới hoặc chạy mã tiềm ẩn nguy hiểm.
VM cũng có thể chạy một hệ điều hành khác hoặc cũ hơn để cho phép thực thi phần mềm có thể không tương thích với hệ điều hành của hệ thống máy chủ. Ví dụ, người dùng có thể sử dụng VM để chạy phần mềm Windows trên thiết bị Linux bằng cách chạy máy ảo với hệ điều hành Windows trên hệ thống Linux của họ.
Tất cả các nút trên mạng Ethereum sử dụng Máy ảo Ethereum (EVM) để thực thi các hợp đồng thông minh, hoạt động trong một hộp cát riêng biệt. Cấu hình này mang lại những lợi thế bảo mật đáng kể cho nền tảng Ethereum, khiến nó trở nên có khả năng chống chịu trước các cuộc tấn công DDoS (Từ chối dịch vụ phân tán), thường được các hacker sử dụng.