Sign inSign up

mohitvermaexe/rustkernel

By mohitvermaexe

•Updated almost 2 years ago

RustKernel is a lightweight OS kernel in Rust for education and experimentation via Docker.

Image
Operating systems
0

182

mohitvermaexe/rustkernel repository overview

⁠RustKernel

⁠Overview

RustKernel is a project focused on building a small operating system kernel using the Rust programming language. The project covers essential OS development topics, such as creating freestanding binaries, managing VGA text mode output, handling interrupts, and setting up memory management and multitasking.

This Docker image provides a ready-to-use environment for building, running, and testing RustKernel, including Rust nightly and QEMU for emulation. Users can connect to the container’s display using a VNC viewer, allowing them to interact with the kernel without additional setup.

⁠Getting Started

⁠Prerequisites

Ensure you have a VNC viewer installed on your system (e.g., VNC Viewer by RealVNC⁠) to connect to the Docker container’s display.

⁠Using the Docker Image
  1. Pull the Docker Image

    docker pull mohitvermaexe/rustkernel
    
  2. Run the Container
    Start the container with the following command to map necessary ports:

    docker run --name rustkernel-container -p 5900:5900 -p 55556:55555 -p 1234:1234 mohitvermaexe/rustkernel
    
  3. Connect via VNC
    Open your VNC viewer and connect to 127.0.0.1:5900 on your host machine to view the container’s display. This allows you to interact directly with the RustKernel interface.

⁠Development Workflow

  1. Building the Project
    To build RustKernel, use:

    cargo build
    
  2. Creating a Bootable Disk Image
    Generate a bootable image using:

    cargo bootimage
    
  3. Running the OS
    Launch RustKernel on QEMU with:

    qemu-system-x86_64 -drive format=raw,file=target/x86_64-RustKernel/debug/bootimage-RustKernel.bin
    
  4. Running Tests
    Run tests within the container with:

    cargo test
    

⁠References


Tag summary

Content type

Image

Digest

sha256:5bef97805…

Size

1.4 GB

Last updated

almost 2 years ago

docker pull mohitvermaexe/rustkernel