OSのイメージファイルの作成方法が分からない


現在、Linux上でOS開発をしようと考えています。

<http://www.brokenthorn.com/Resources/OSDev11.html>

上記のサイトの下にある **DOWNLOAD DEMO HERE**
でソースコードをダウンロードし、コンパイルすることはできますがバイナリファイルを連結してQEMUで起動することができません。  
QEMUで起動可能なイメージファイルをLinuxで作成するにはどうすればいいですか？

自分なりに試したOSの連結方法を下記に示します。(失敗した方法です)

[code]

    cat KRNLDR.SYS KRNL.SYS > KERNEL
    
    dd if=/dev/zero of=os.img bs=512 count=10000
    dd if=Boot1.bin of=os.img bs=512 conv=notrunc
    dd if=KERNEL of=os.img bs=512 seek=1 conv=notrunc
    
[/code]

この方法ではダメでした。  
どうすればうまく起動できるでしょうか？知識のある方よろしくお願いします。




Linux上でのフロッピーディスクイメージ作成に成功しました。  
以下は自分が書いたMakefileです。

[code]

    boot1.bin: Boot1.asm
        nasm -f bin $^ -o $@
    KRNLDR.SYS: Stage2.asm
        nasm -f bin $^ -o $@
    KRNL.SYS: Stage3.asm
        nasm -f bin $^ -o $@
    
    k.img: boot1.bin KRNL.SYS KRNLDR.SYS
        mformat -f 1440 -C -B boot1.bin -i $@ ::
        mcopy KRNLDR.SYS -i $@ ::
        mcopy KRNL.SYS -i $@ ::
    
    run: k.img
        qemu-system-i386 -drive file=k.img,format=raw,if=floppy -boot a
    
[/code]




Linux上でのフロッピーディスクイメージ作成に成功しました。  
以下は自分が書いたMakefileです。

[code]

    boot1.bin: Boot1.asm
        nasm -f bin $^ -o $@
    KRNLDR.SYS: Stage2.asm
        nasm -f bin $^ -o $@
    KRNL.SYS: Stage3.asm
        nasm -f bin $^ -o $@
    
    k.img: boot1.bin KRNL.SYS KRNLDR.SYS
        mformat -f 1440 -C -B boot1.bin -i $@ ::
        mcopy KRNLDR.SYS -i $@ ::
        mcopy KRNL.SYS -i $@ ::
    
    run: k.img
        qemu-system-i386 -drive file=k.img,format=raw,if=floppy -boot a
    
[/code]

