Sophite wrote:
EDIT: Does MS-DOS restrict the ability for a program to do kernel-level stuff?
MS-DOS itself does not, because it was written before the x86 line offered the capability of distinguishing between kernelspace and userspace. On hardware that supports it (the HP 200LX doesn't), programs like DPMI hosts could act as kernels and prevent other programs from doing kernel-level stuff, but often didn't do that in an airtight fashion for backwards compatibility reasons (which is part of the reason that Win 3.x and 9x were so notoriously unstable).
So whether you can do "kernel-level" stuff on your HP 200LX depends on what you mean by "kernel level". If you mean "can I write code that will interface directly with the hardware?", yes, because DOS is incapable of stopping you. If you mean "can I keep programs from trashing each other, or my OS?", which is one of the primary jobs of a modern kernel, the answer is no, because your hardware doesn't give you the tools you need to do that.
Quote:
EDIT 2: Wait... If DOS has it's own OS interrupts (syscalls)... How did they get MINIX to run on it?
Neither DOS nor your hardware provide the facilities that DOS would need to stop MINIX from running.