
Moros - это хобби операционная система, написанная в Rust Vincent Ollivier.
Он предназначен для компьютеров с архитектурой X86-64 и BIOS, в основном с 2005 по 2020 год, но также хорошо работает на большинстве эмуляторов (Bochs, Qemu и Virtualbox).
Этот проект начался с седьмого поста второго издания «Написание ОС» в Rust от Philipp Oppermann и прочитав Wiki Osdev вместе со многими ядрами с открытым исходным кодом.
Документация доступна здесь
Вам понадобятся git , gcc , make , curl , qemu-img и qemu-system-x86_64 в системе хоста.
Клонировать репо:
$ git clone https://github.com/vinc/moros
$ cd moros
Установите необходимые инструменты с make setup или следующими командами:
$ curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain none
$ rustup show
$ cargo install bootimage
Создайте изображение на disk.img :
$ make image output=video keyboard=qwerty
Запустить Морос в Qemu:
$ make qemu output=video nic=rtl8139
Запустите изначально на компьютере x86, копировав загрузчик и ядро на жесткий диск или USB -палочку (но в настоящее время нет драйвера USB, поэтому файловая система не будет доступна в этом случае):
$ sudo dd if=target/x86_64-moros/release/bootimage-moros.bin of=/dev/sdx
Moros откроет консоль в режиме без диска после загрузки, если файловая система не обнаружена. Следующая команда будет настраивать файловую систему на жестком диске, что позволит вам выйти из режима без диска и войти в систему как обычный пользователь:
> install
Будьте осторожны, чтобы не перезаписать жесткий диск вашей ОС при использовании dd в вашей ОС, а также install или disk format в Moros, если вы не используете эмулятор.
Запустите тестовый набор в QEMU:
$ make test
Морос выпускается под MIT.