From: Nigel Stephens Date: Fri, 23 Sep 94 16:22:47 +0100 To: djgpp AT sun DOT soe DOT clarkson DOT edu Subject: Locking down interrupt handlers? I have had problems trying to use the asynctsr tool, especially under Windows, so I've written a module which doesn't require the separate TSR, but uses the _go32_dpmi_... interrupt handling functions to handle the serial port input buffering. This seems to work fine, under both DOS and Windows, but I am worried. What happens if an interrupt occurs and some part of the interrupt routine or its data structures are not paged in? I believe that Windows' DPMI doesn't really page your program, but swaps the whole thing in and out in one fell swoop (is this right?), i.e. as long as the program is running then it should all be there. But what about under VCPI, XMS, etc. In these cases GO32 provides real, paged virtual memory. Could GO32 be hosed by a page fault due to my interrupt routine which occurs while GO32 or DOS is busy. If so is there any way to make sure that my interrupt routine and its data is locked down? Regards Nigel _________________________________________________________________________ Nigel Stephens, Algorithmics Ltd, 3 Drayton Park, London, N5 1NU, England phone: +44 71 700 3301 fax: +44 71 700 3400 email: nigel AT algor DOT co DOT uk