Minotauros
Introducción del proyecto
Minotauros es un sistema operativo basado en la arquitectura RISC-V escrita en el lenguaje de óxido. El objetivo es implementar un sistema operativo múltiple compatible con Linux que admita la programación de procesos, el sistema de archivos, la red y otras funciones.
Construcción ambiental
- Rust: Nightly-2024-02-03
- QEMU: 7.0.0-9.0.0
- Risc-V Toolchain: riscv64-andownnown-linux-gnu
- Place archivos de disco
disk.img y archivos de gotador de arranque rustsbi-qemu.bin en el directorio prebuilts
Compilar y ejecutar
- Preparación del medio ambiente:
make env - Compilar binario de estado de usuario:
make user - Compilar binario estatal de kernel:
make kernel - Todos compilados:
make all - Ejecute el emulador:
cargo task run - Compilar documentación:
typst compile docs/main.typ
Esquema de directorio
- kernel/src: código de kernel
- Arch: código relacionado con la arquitectura
- Builtin: Integrar programas de usuario
- Debug: Módulo de depuración y registro
- Conductor: controlador del dispositivo
- FS: sistema de archivos
- MM: Gestión de la memoria
- NET: módulo de red
- Proceso: Gestión de procesos
- Procesador: gestión de múltiples núcleos
- Progrado: módulo de programación y reloj
- señal: módulo de procesamiento de señales
- Sync: bloqueo y mecanismo de sincronización
- Syscall: función de procesamiento de llamadas del sistema
- trampa: interrupción y manejo de excepciones
- Main.RS: programa principal
- Usuario: programa de usuario
- PreBuilts: archivos precompilados
- Tareas: compilar tareas
- Docios: documentación del proyecto