A friennd and I were talking about OS development last night and a few questions were raised that need some clarification. I did the usual search and it turned up the usual garbage, so I'm hoping someone here has an answer, or the link to an answer.
Issue One: How does the operating system communicate with the hardware in protected mode?
My friend said it was through the BIOS, however I've read numerous texts stating that BIOS interrupts are not available when the CPU is in protected mode (on x86 machines), so the OS must use another way (which I conceded,I didn't know), but theorized that the OS used the bus system to accomplish the task.
So I'm wondering, if you want to disable an ethernet card, or write files to/from a disc, or do any other task that involves telling the hardware to do a task, how does the OS make this request?
Issue Two: The boot devices
Somewhere there is a piece of software that can communicate with the CD-ROM or floopy and get the bootloader and load it for execution. WIthout this software we wouldn't be able to do an initial install of an OS on a new computer.
I said it was the BIOS that performed this task (using a standarizided method of communication), while my friend said it wasn't the BIOS (I forget the exact reason it wasn't) and it has to reside somewhere else.
So the question is, where does this software reside, and how does it load information from a device and begin the boot sequence?
Thanks for the help.
Issue One: How does the operating system communicate with the hardware in protected mode?
My friend said it was through the BIOS, however I've read numerous texts stating that BIOS interrupts are not available when the CPU is in protected mode (on x86 machines), so the OS must use another way (which I conceded,I didn't know), but theorized that the OS used the bus system to accomplish the task.
So I'm wondering, if you want to disable an ethernet card, or write files to/from a disc, or do any other task that involves telling the hardware to do a task, how does the OS make this request?
Issue Two: The boot devices
Somewhere there is a piece of software that can communicate with the CD-ROM or floopy and get the bootloader and load it for execution. WIthout this software we wouldn't be able to do an initial install of an OS on a new computer.
I said it was the BIOS that performed this task (using a standarizided method of communication), while my friend said it wasn't the BIOS (I forget the exact reason it wasn't) and it has to reside somewhere else.
So the question is, where does this software reside, and how does it load information from a device and begin the boot sequence?
Thanks for the help.
Comment