93 lines
2.3 KiB
Markdown
93 lines
2.3 KiB
Markdown
# Aios - AI Operating System
|
|
|
|
A Unix-like operating system built from scratch in Rust, designed for AI integration.
|
|
|
|
## Features
|
|
|
|
- **Interactive Shell**: Full keyboard input support with command processing
|
|
- **Safe Kernel**: Pure Rust implementation with memory safety
|
|
- **Minimal Design**: Inspired by octox philosophy - simple and efficient
|
|
- **Bootloader Integration**: Uses rust-bootloader for reliable booting
|
|
|
|
## Quick Start
|
|
|
|
```sh
|
|
# Build and test the OS
|
|
./scpt/bootimage-test.sh
|
|
```
|
|
|
|
## Available Commands
|
|
|
|
- `help` - Show available commands
|
|
- `version` - Display version information
|
|
- `echo` - Echo test message
|
|
- `clear` - Clear the screen
|
|
|
|
## Project Structure
|
|
|
|
```
|
|
aios/
|
|
├── kernel/ # Main kernel implementation
|
|
│ ├── src/
|
|
│ │ ├── main.rs # Kernel entry point
|
|
│ │ ├── keyboard_basic.rs # Keyboard driver
|
|
│ │ └── ...
|
|
│ └── Cargo.toml
|
|
├── docs/ # Documentation
|
|
│ ├── TROUBLESHOOTING.md # Common issues and solutions
|
|
│ └── SHELL_IMPLEMENTATION.md # Shell implementation guide
|
|
└── scpt/ # Build and test scripts
|
|
```
|
|
|
|
## Documentation
|
|
|
|
- [Troubleshooting Guide](docs/TROUBLESHOOTING.md) - Solutions for common issues
|
|
- [Shell Implementation](docs/SHELL_IMPLEMENTATION.md) - Detailed implementation guide
|
|
|
|
## Development
|
|
|
|
### Requirements
|
|
|
|
- Rust nightly toolchain
|
|
- `bootimage` tool: `cargo install bootimage`
|
|
- QEMU for testing
|
|
- x86_64 target: `rustup target add x86_64-unknown-none`
|
|
|
|
### Building
|
|
|
|
```sh
|
|
cd kernel
|
|
cargo bootimage --release
|
|
```
|
|
|
|
### Testing
|
|
|
|
```sh
|
|
# Interactive test with QEMU
|
|
./scpt/bootimage-test.sh
|
|
|
|
# The OS will boot and present an interactive shell
|
|
# Type commands and press Enter to execute
|
|
```
|
|
|
|
## Architecture
|
|
|
|
Aios follows a microkernel-inspired design:
|
|
|
|
- **Kernel Space**: Minimal kernel with basic I/O and memory management
|
|
- **User Space**: Shell and applications (planned)
|
|
- **AI Integration**: Claude service integration (planned)
|
|
|
|
## Troubleshooting
|
|
|
|
If you encounter issues:
|
|
|
|
1. **Page table panics**: See [TROUBLESHOOTING.md](docs/TROUBLESHOOTING.md#1-page-table-panic-error-page_tablers)
|
|
2. **Keyboard not working**: See [TROUBLESHOOTING.md](docs/TROUBLESHOOTING.md#2-keyboard-input-not-working)
|
|
3. **Build errors**: Check Rust nightly and required components
|
|
|
|
## License
|
|
|
|
MIT License
|
|
|