Page 1 of 1
Begineer doubt
Posted: Wed Sep 10, 2008 11:36 am
by jainendra
Hello Sir/madam,
I have three questions:
1-How Interrupt Vector table(IVT) is loaded into the main memory?
2-How OS gets knowledge of available terminal devices?
3-How is the actual flow of interrupt handling please give an example.
As I am a begineer on OS please dont mind answering these questions.
Thanking in advance.
Re: Begineer doubt
Posted: Wed Sep 10, 2008 5:34 pm
by bewing
1) A computer has a BIOS ROM that contains an IVT. During bootup, the BIOS copies the IVT from the BOOT ROM into main memory.
2) BIOS calls, BIOS data area, PCI enumeration, ACPI tables, PnP tables, and probing. This is one of the most complicated things an OS needs to do.
3) Hardware -> PIC -> IRQ -> Interrupt table lookup -> Interrupt handler software -> driver.
A hard disk that has data to send will signal an interrupt. The PIC converts the electric signal into an IRQ14. The IRQ14 causes the CPU to stop whatever it was doing, and look up the address of the IRQ14 handler in the interrupt table, then jump to it. The IRQ14 handler is built by you to do whatever you want -- but it should be as fast as possible, and there is a list of things it must do, like send an EOI to the PIC, then IRET. At some later time, the device driver comes along, and sees that the IRQ14 handler software has left some information for it. Then the device driver tells the hard disk to transfer its data. (This description is oversimplified, but will serve for the first 6 to 12 months of OS development.)
Re: Begineer doubt
Posted: Thu Sep 11, 2008 6:45 am
by codemastersnake
I would suggest that you must buy somw books on OS like 'Mordern Operating Systems' and a book on Architecture you are building your OS for.
These books will greatly help you with the theroitical concepts of an Operating System
Re: Begineer doubt
Posted: Fri Sep 12, 2008 5:09 am
by jal
bewing wrote:2) BIOS calls, BIOS data area, PCI enumeration, ACPI tables, PnP tables, and probing. This is one of the most complicated things an OS needs to do.
The OP was talking about 'terminal devices'. Don't think he meant hardware in general?
JAL
Re: Begineer doubt
Posted: Fri Sep 12, 2008 2:19 pm
by bewing
Very hard to tell, since the rest of his english is not precise. And since the rest of his questions are rather general and basic -- I thought it was unreasonable to assume that particular question was extremely specific.