This message was edited by dennisparker at 2005-3-21 14:27:2
: :
:
: The processor is put in protected mode in Windows and in other OS's which prevents access to lower memory which is where the vector table is for the interrupts which is why bios functions will not work.
:
: I'm not privy to the specifics of how protected mode works internally since all I have dealt with so far is real mode, but in protected mode you can have a more stable OS due to the way memory is managed. Remember the GPF god, or the blue screens of death in windows95? That OS wasn't in protected mode and you could run those BIOS routines on the earlier windows, but Windows NT you couldn't beause it did run in protected mode. Another reason for it would be since lower memory is protected, some of the older virus programs that took advantage of the hiding spots in lower memory or revectoring an interrupt to point to it's malicious code were no more.
:
: You can still access interrupts however in windows, but to do this you'll have to use the windows API, however, since interrupts are given a lower priority in windows(like ring 3) it would be extremely slow to do so.
:
: I hope that might of answered your question.
:
:
Thanks both for the reply. From your response it appears as if it is a memory mapping issue. Do you know if Windows OS ever accesses the BIOS routines (they have to don't they?)? My Windows XP station here at work runs our old 16 bit DOS CAD system. Can I assume that the CAD system does not make any BIOS calls? I can't be sure of course, but it seems unlikely that the old CAD system did not make such calls.
I can certainly understand how the system would be more stable if only one Master Control Program (remember Tron?) directly accessed system resources. I'll Google the issue (almost sounds naughty). Thanks again for the reply.