-
PolkaVM Doom Example Program Analysis
Program Structure The Polkavm github repo provides an example program that uses the PolkaVM virtual machine to run the classic game Doom. This program demonstrates how to use PolkaVM to execute complex game code while handling graphics rendering, audio output, and user input. This article aims to gain a glimpse into the mysteries of PolkaVM as ... Read More
-
PolkaVM's Testing Arsenal:🚀 From Zero to Bulletproof in Minutes!
This article describes the testing and debugging infrastructure for PolkaVM, including automated test case generation, fuzzing capabilities, and tools for debugging VM execution. For information about benchmarking performance, see Tools and Utilities. Test Specification Infrastructure PolkaVM employs a comprehensive test specification framewor... Read More
-
Level Up Your PolkaVM Game! 🛠️ The Essential Command-Line Tools You NEED to Know.
This article documents the command-line tools and utilities provided by the PolkaVM project to help developers work with PolkaVM programs. These tools facilitate the compilation, disassembly, analysis, benchmarking, and testing of PolkaVM applications. Overview PolkaVM provides three main command-line utilities: polkatool - A utility for w... Read More
-
From Raw Syscalls to Safe Sandboxes:The PolkaVM Integration Story 📖
This article describes how PolkaVM integrates with host operating systems, focusing on sandboxing, isolation mechanisms, and system call interfaces. It covers the architecture of the sandboxing system, the communication between the host and sandbox processes, and platform-specific implementations. For information about how to execute guest prog... Read More
-
Level Up Your Understanding of PolkaVM:The DOOM Edition ⬆️
Project Overview PolkaVM DOOM is an example project that ports the classic game DOOM to run on the PolkaVM virtual machine. This project showcases PolkaVM’s ability to run complex game programs. Directory Structure /examples/doom/ ├── Cargo.toml # Project configuration and dependencies ├── README.md # Project documentation... Read More
-
Beyond WASM:The Future is RISC-V with PolkaVM Guest Programs ✨
This document explains how to develop programs that run inside the PolkaVM virtual machine. It covers the development environment, build process, and the Application Binary Interface (ABI) that allows guest programs to interact with the host system. For details on how the VM executes these programs, see Core VM Engine and for in-depth details on... Read More
-
Unveiling PolkaVM's Secrets:How Programs Really Work ⚙️
This article describes how executable programs are represented in PolkaVM, covering the structure, encoding, and transformation of programs. We focuse on the internal representation of compiled code, not the process of compilation itself here. For information about the compilation pipeline, see Compilation Pipeline. Overview PolkaVM represents... Read More
-
Unlock Untrusted Code - PolkaVM's Architecture Deep Dive
Overview PolkaVM is a high-performance, sandboxed virtual machine designed to securely execute RISC-V programs. It serves as a lightweight and efficient execution environment with a strong focus on security, determinism, and performance. This page provides a high-level introduction to the PolkaVM system, its architecture, and key components. F... Read More
-
Isolate or Integrate? PolkaVM's Sandboxing Choices Explained 🤔
Sandboxing is a critical security feature in PolkaVM that isolates guest program execution from the host system. This isolation is essential for preventing malicious or erroneous code from affecting the host environment or accessing unauthorized resources. This document explains how PolkaVM implements sandboxing, the different sandbox implementa... Read More
-
Inside PolkaVM - Unveiling the Core VM Engine
The Core VM Engine is the central execution system of PolkaVM, responsible for loading, compiling, and running guest programs in a secure and efficient manner. It provides the foundation for program execution, memory management, sandboxing, and interaction between host and guest code. For information about program representation, see Program Rep... Read More