Okay. Got some things to ask

First. Suppose I use FreeBASIC's compiler for Windows, to write a small bare-bones kernel.
But - I get a PE file.
Now, I know it's possible to boot a PE file, but how does one do that?
Is it possible to use GRUB? Or GRUB4DOS?
Or can it be done with a custom bootloader?
And do you know of any tutorial, which can walk me through the process?
Second. The PE kernel is ready, and it's booted fine.
But, I want to link it with the OSKit libraries, which are ELF libraries, if I'm right.
So is it possible to link the PE kernel with those ELF libraries?
If yes, again, how?
Third. The ELF libraries are linked just fine.
Now, when I want to write a small program, which runs in userspace inside my PE kernel, does that program have to be a PE file, or can it be an ELF as well?
Thanks
