Just OS, just work. Based on Linux.
Go to file
2025-01-25 15:17:25 +00:00
linux-6.13 up 2025-01-24 17:00:19 +03:00
progs Замена самописного барахла на Busybox 2025-01-25 11:36:33 +03:00
comp_run_iso.sh Улучшения сборки, небольшие изменения в коде 2025-01-25 11:24:37 +03:00
install_requirements.sh up 2025-01-24 16:42:03 +03:00
instructions.md Изменение структуры, вырезание ассемблера, добавление работы с аргументами в shell.c 2025-01-24 23:39:14 +03:00
LICENSE Initial commit 2025-01-24 12:01:24 +00:00
README.md Update README.md 2025-01-25 15:17:25 +00:00

ОГЛАВЛЕНИЕ

  1. Загрузка ресурсов и подготовка
  2. Настройка ядра
  3. Компиляция в ISO образ

1. Загрузка ресурсов и подготовка

Вся сборка проводилась на последней версии Debian (Devuan)
Процедура не требовательна к месту на диске/ОЗУ/CPU.

Загрузка ресурсов:

git clone https://gitea.del.pw/justuser/JustOS.git
cd justos

Установка зависимостей:

./install_requirements.sh

2. Настройка ядра

Директория - linux-{ВЕРСИЯ}

Запуск графической настройки:

make tinyconfig
make menuconfig

Включить "64-bit kernel"

Выбрать General setup
Включить "Initial RAM filesystem and RAM disk (initramfs/initrd) support"
Убрать все галочки с "Support initial ramdisks compressed using..."

Выбрать "Configure standard kernel features (expert users)"
Включить "Enable support for printk"
Выйти на главный уровень

Выбрать "Executable file formats / Emulations"
Включить "Kernel support for ELF binaries"
Выйти на главный уровень

Выбрать "Device Drivers" -> "Character devices"
Включить "Enable TTY"
Выйти и сохранить изменения

3. Компиляция в ISO образ

Директория - linux-{ВЕРСИЯ}
Компиляция ядра с 4 потоками (больше - быстрее):

make -j 4

Сборка ISO:

make isoimage FDARGS="initrd=/init.cpio" FDINITRD="../progs/init.cpio"

Запуск ISO:

qemu-system-x86_64 -cdrom arch/x86/boot/image.iso