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
- 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
-
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
- Rust nightly toolchain
cargo-xbuild
for cross-compilation- QEMU for testing (optional)
# 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
VEKOS is in its early stages and welcomes contributions. Here are some areas where you can help:
-
Core Features
- Expanding filesystem capabilities
- Improving process scheduling
- Adding device drivers
- Enhancing memory management
-
Documentation
- Code documentation
- Architecture documentation
- User guides
-
Testing
- Unit tests
- Integration tests
- Performance benchmarks
-
Bug Fixes
- Report issues
- Submit pull requests
- Help with code review
- Fork the repository
- Create a feature branch
- Write clean, documented code
- Ensure all tests pass
- Submit a pull request
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
- Extended hardware support
- Network stack implementation
- Enhanced security features
- GUI support
- Extended system calls
- Improved documentation
Apache-2.0 license
- The Rust programming language team
- Contributors to the project
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.