Subj : Interrupts To : Lee Aroner From : Jonathan de Boyne Pollard Date : Mon Jun 04 2001 01:30 am LA>> I had simply assumed that OS/2 used the same invalid int trick to LA>> switch rings as Win does. JdeBP>> The interrupt(s) used on DOS-Windows and and Windows NT JdeBP>> aren't "invalid". They are perfectly valid. Their entries JdeBP>> in the IDT point directly to the syscall dispatch routines. LA> OK, poor choice of language. The int is fine. LA> What is done to switch control from the application to the OS is LA> a jump into the bios copyright notice to force a processor exception. LA> Happy now? No, because that's not what happens. As I explained in my previous message, the forced exception was used in OS/2 version 1.x as a means of switching from protected mode back to real mode in order to run the DOS box. It's nothing whatever to do with how processes switch to kernel mode when executing system calls (which is done by the ordinary call gate mechanism of the 286, and always has been). The forced exception mechanism isn't used *at all* in OS/2 version 2.0.0 and later, because version 2.0.0 was when "MVDM" support was introduced, which makes use of the Virtual 8086 mode of the 386 CPU. OS/2 version 2.0.0 and later don't use real mode after boot time at all. ¯ JdeBP ® --- FleetStreet 1.22 NR * Origin: JdeBP's point, using Squish (2:257/609.3) .