CookieOfFortune is essentially correct (Because he wanted to move something into the place where the initial bootloader was), but it wasn't for a second bootloader, but rather the kernel itself.
From his comments:
It then loads the system at 0x10000,
using BIOS interrupts. Thereafter it
disables all interrupts, moves the
system down to 0x0000, changes to
protected mode, and calls the start of
system. System then must
RE-initialize the protected mode in
it's own tables, and enable
interrupts as needed.
He wants the kernel to be located at 0x0000...0xKERNEL_SIZE-1, however the initial bootloader is currently at 0x7C00, so if the kernel was over ~32 KB it would overwrite the bootloader as it was moving it. The fact that the kernel is located at 0x0000 also explains this comment:
"NOTE! currently system is at most
8*65536 bytes long."
If it was any longer than 512 KB starting at 0 it would run the risk of hitting the reserved area of the x86 address space.
I believe this code section contains the actual jump into the kernel
mov ax,#0x0001 | protected mode (PE) bit
lmsw ax | This is it!
jmpi 0,8 | jmp offset 0 of segment 8 (cs)