update v2
This commit is contained in:
92
README.md
92
README.md
@ -1,12 +1,92 @@
|
||||
# aios
|
||||
# Aios - AI Operating System
|
||||
|
||||
create a unix-like os from scratch
|
||||
A Unix-like operating system built from scratch in Rust, designed for AI integration.
|
||||
|
||||
## example
|
||||
## 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
|
||||
# archlinux
|
||||
cargo bootimage
|
||||
qemu-system-x86_64 -drive format=raw,file=target/x86_64-unknown-none/debug/bootimage-kernel.bin -nographic
|
||||
# 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
|
||||
|
||||
|
Reference in New Issue
Block a user