Как создать с нуля ISO файл операционной системы? Есть простая ОС на ассемблере, которая просто выводи HelloWorld. Скомпилировал .asm в .bin. После из этого бинарника получил ISO образ с помощью программы UltraISO. Проверил на VirtualBox все работает. Однако хочется понять как именно с нуля написать такой ISO файл, без сторонних программ вроде UltraISO, которая что-то там сделала, но что сделала не ясно.
Создайте новый файл с расширением .iso, например, myOS.iso.
Определите размер образа, который является кратным 2048 байт (размеру сектора). Например, можно создать образ размером 1MB: 1MB = 1024 1024 байт = 1048576 байт = 1024 512 байт (размер одного сектора) = 2048 секторов.
Откройте командную строку и используйте утилиту dd для создания пустого ISO образа:
dd if=/dev/zero of=myOS.iso bs=2048 count=2048
Скопируйте содержимое вашего .bin файла в созданный ISO образ:
Создайте новый файл с расширением .iso, например, myOS.iso.
Определите размер образа, который является кратным 2048 байт (размеру сектора). Например, можно создать образ размером 1MB: 1MB = 1024 1024 байт = 1048576 байт = 1024 512 байт (размер одного сектора) = 2048 секторов.
Откройте командную строку и используйте утилиту dd для создания пустого ISO образа:
dd if=/dev/zero of=myOS.iso bs=2048 count=2048Скопируйте содержимое вашего .bin файла в созданный ISO образ:
dd if=myOS.bin of=myOS.iso bs=2048 seek=0 conv=notruncПримонтируйте созданный образ и проверьте его содержимое:
mkdir mntsudo mount myOS.iso mnt -o loop
ls -l mnt
Размонтируйте образ после проверки:
sudo umount mntТеперь у вас есть ISO файл вашей операционной системы, который был создан с нуля без использования сторонних программ.