Skip to content

Source tree for the Verified Experimental Kernel Operating System, or VEKOS.

License

Notifications You must be signed in to change notification settings

JGiraldo29/vekos

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VEKOS - Verified Experimental Kernel Operating System

Version Status Language

VEKOS is an experimental operating system written in Rust that focuses on verification and security at its core. This is the first alpha release (v0.0.1) that demonstrates the basic architecture and key features of the system.

Watch the OS showcase by clicking on the thumbnail

Watch the video

VEKOS Key Features

  • Verified Operations: Every filesystem and memory operation is cryptographically verified using a proof system
  • Secure Memory Management: Buddy allocator with memory zones and COW (Copy-On-Write) support
  • Modern Shell: Basic shell implementation with command history and line editing
  • Filesystem: Verified filesystem (VKFS) with Merkle tree verification
  • Process Management: Basic process management with scheduling and signals
  • Hardware Support: x86_64 architecture support with proper GDT, IDT, and interrupt handling

Current Functionality

  • Memory Management

    • Buddy allocation system
    • Page table management
    • Memory zones (DMA, Normal, HighMem)
    • Copy-on-Write support
    • Memory pressure handling
  • Filesystem

    • Basic filesystem operations (create, read, write, delete)
    • Directory support
    • Verification using Merkle trees
    • Buffer cache system
    • Inode management
  • Process Management

    • Basic process creation and management
    • Simple scheduler
    • Signal handling
    • Process groups and sessions
  • Shell

    • Command history
    • Line editing
    • Basic built-in commands (cd, ls, pwd, help, clear)
    • Command parsing with quote handling
  • Security Features

    • Operation verification through cryptographic proofs
    • State transition validation
    • Memory isolation
    • Privilege levels

Building

Prerequisites

  • Rust nightly toolchain
  • cargo-xbuild for cross-compilation
  • QEMU for testing (optional)

Build Instructions

# Clone this repository
git clone https://github.com/JGiraldo29/vekos.git
cd vekos

# Build the kernel
cargo build

# Run in QEMU (if installed)
cargo run

Contributing

VEKOS is in its early stages and welcomes contributions. Here are some areas where you can help:

  1. Core Features

    • Expanding filesystem capabilities
    • Improving process scheduling
    • Adding device drivers
    • Enhancing memory management
  2. Documentation

    • Code documentation
    • Architecture documentation
    • User guides
  3. Testing

    • Unit tests
    • Integration tests
    • Performance benchmarks
  4. Bug Fixes

    • Report issues
    • Submit pull requests
    • Help with code review

Contributing Guidelines

  1. Fork the repository
  2. Create a feature branch
  3. Write clean, documented code
  4. Ensure all tests pass
  5. Submit a pull request

Known Limitations

As this is an alpha release (0.0.1), there are several limitations:

  • Limited hardware support
  • Basic device driver support
  • Experimental verification system
  • Limited filesystem features
  • Basic shell functionality
  • Unsecure code

Future Plans

  • Extended hardware support
  • Network stack implementation
  • Enhanced security features
  • GUI support
  • Extended system calls
  • Improved documentation

License

Apache-2.0 license

Acknowledgments

  • The Rust programming language team
  • Contributors to the project

Contact

[email protected]


Note: VEKOS is currently in alpha stage (0.0.1). While it demonstrates core functionality, it should not be used in production environments. This is an experimental system focused on exploring verification techniques in operating system design.

About

Source tree for the Verified Experimental Kernel Operating System, or VEKOS.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages