플로피 이미지에 사용자 정의 부트로더를 넣는 방법

플로피 이미지에 사용자 정의 부트로더를 넣는 방법

그래서 저는 커스텀 부트로더를 만들고 있습니다:

nasm -f bin boot.asm -o boot.bin

512바이트입니다. 플로피 이미지에 어떻게 넣고 qemu를 사용하여 부팅합니까?

나는 시도했다:

dd if=boot.bin of=floppy.img bs=512 count=2880
dd if=floppy.img of=floppy2.img bs=512 count=1
qemu-system-i386 -fda floppy2.img

하지만 크기가 floppy2.img일반 크기인 1.44MB가 아닌 512바이트로 조정되었습니다. 이것이 올바른 접근 방식입니까? 나는 멋진 도구를 사용하지 않는 편이 낫습니다. 그것이 작업을 수행하는 데 사용될 수 있다면 dd좋을 것입니다.

답변1

유일한 문제가 이미지 파일이 너무 짧다는 것이라면 파일에 2879*512 0바이트를 추가해 볼 수 있습니다 floppy.img.

dd if=/dev/zero count=2879 bs=512 >> floppy.img

반면, 플로피 이미지에 부트 섹터 이외의 다른 것을 저장해야 하는 경우 해당 플로피 이미지에 FAT 파일 시스템을 생성해야 합니다. 이를 달성하는 방법은 루핑 장치를 사용하는 것입니다.

sudo losetup /dev/loop0 floppy.img
sudo mkfs -t fat /dev/loop0
sudo mount /dev/loop0 somedir

somedir마운트할 빈 디렉토리는 어디에 있습니까 /dev/loop0? 이제 필요한 파일을 이 디렉터리에 복사할 수 있습니다.

관련 정보