Утилита format
для KolibriOS
Описание
Утилита format
— это простая консольная программа для операционной системы KolibriOS, предназначенная для форматирования дисков в файловую систему FAT32. Программа разработана на ассемблере FASM и оптимизирована для минимального использования ресурсов, что соответствует философии KolibriOS.
Функциональность
- Форматирование дисков (например,
/fd2/1
) исключительно в FAT32. - Принимает путь к устройству как единственный параметр через командную строку.
- Выводит сообщения об ошибках или помощь при некорректных входных данных.
Установка и использование
- Сохраните исходный код как
format.asm
. - Скомпилируйте с помощью FASM:
fasm format.asm
. - Поместите сгенерированный файл
format
в директорию/sys/disk/
на образе KolibriOS. - Запустите в shell:
format /fd2/1
.
Пример использования
-
Форматирование флоппи-диска:
format /fd2/1
-
После запуска программа запросит подтверждение (введите
Y
для продолжения).
Ограничения
- Текущая версия использует гипотетический системный вызов (
int 0x40, eax=70
) для форматирования. Для полной функциональности требуется интеграция с реальными драйверами диска (например, черезint 0x13
или API KolibriOS). - Поддерживает только FAT32; другие файловые системы не реализованы.
- Не проверяет размер диска или совместимость (рекомендуется тестировать на подходящих носителях).
Требования
- Установленный компилятор FASM.
- Доступ к системе KolibriOS с правами на запись в
/sys/disk/
.
Автор
Разработано для демонстрации с использованием рекомендаций xAI Grok.
Дата создания
14 сентября 2025 г., 07:38 AM CEST.
Самый простой способ:
ls -l floppy.img
mkfs.vfat -F 12 floppy.img
file floppy.img
KolibriOS использует образ дискеты 1.44 MB с жёстко заданной структурой FAT12. Несколько нюансов:
- Структура дискеты 1.44 MB
Стандартная 3.5″ дискета 1.44 MB имеет:
80 дорожек × 2 стороны × 18 секторов × 512 байт = 1 474 560 байт (~1.44 MB)
FAT12 там рассчитан на точно такое количество секторов, включая:
загрузочный сектор (boot sector),
таблицы FAT,
корневой каталог,
данные файлов.
То есть KolibriOS ожидает ровно 1 474 560 байт в образе, иначе:
FAT12 таблица будет “неправильной”,
смещения файлов и загрузчика не совпадут,
загрузчик откажется запускаться.
- Почему 999 KB не работает
Твой образ 999 KB = 1 022 976 байт, меньше чем стандартная 1.44 MB.
FAT12 на такой маленькой “дискете” технически создаётся, но KolibriOS не увидит нужное количество секторов и дорожек, поэтому не загрузится.
✅ Вывод: Для KolibriOS образ должен быть ровно 1.44 MB (1 474 560 байт). Меньший размер (999 KB) — не поддерживается.