MCPcopy Index your code
hub / github.com/JGiraldo29/vekos

github.com/JGiraldo29/vekos @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
733 symbols 1,975 edges 44 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

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
  • Program Execution

    • Basic program execution using SYSCALL/SYSRET.
  • 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

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

# Add the rust-src component to the toolchain
rustup component add rust-src

# Build the kernel
cargo build

Running VEKOS

Requires QEMU and bootimage installed.

# Add the llvm-tools-preview component to the toolchain
rustup component add llvm-tools-preview

# Run VEKOS
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

Juan Miguel Giraldo - jgiraldo29@proton.me


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.

Extension points exported contracts — how you extend this code

Verifiable (Interface)
(no doc) [15 implementers]
src/verification.rs
FileSystem (Interface)
(no doc) [1 implementers]
src/fs.rs
ProofVerifier (Interface)
(no doc) [1 implementers]
src/operation_proofs.rs

Core symbols most depended-on inside this repo

lock
called by 180
src/tty.rs
push
called by 104
src/tty.rs
write
called by 91
src/tty.rs
len
called by 86
src/tty.rs
as_u64
called by 57
src/process.rs
hash_memory
called by 48
src/hash.rs
read
called by 34
src/tty.rs
read_tsc
called by 32
src/tsc.rs

Shape

Method 502
Class 123
Function 74
Enum 31
Interface 3

Languages

Rust100%

Modules by API surface

src/memory.rs79 symbols
src/vkfs.rs74 symbols
src/process.rs49 symbols
src/fs.rs37 symbols
src/verification.rs34 symbols
src/merkle_tree.rs29 symbols
src/tty.rs28 symbols
src/framebuffer.rs24 symbols
src/buffer_manager.rs22 symbols
src/boot_verification.rs20 symbols
src/shell/mod.rs19 symbols
src/inode_cache.rs17 symbols

For agents

$ claude mcp add vekos \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact