Xref: news-dnh.mv.net comp.os.msdos.djgpp:1468 Path: news-dnh.mv.net!mv!news.sprintlink.net!howland.reston.ans.net!swrinde!news.uh.edu!uuneo.neosoft.com!news!sandmann From: Charles Sandmann Newsgroups: comp.os.msdos.djgpp Subject: Re: V2 interrupts Date: Wed, 09 Aug 1995 15:25:23 CDT Organization: NeoSoft Internet Services +1 713 968 5800 Lines: 17 References: Reply-To: sandmann AT clio DOT rice DOT edu Nntp-Posting-Host: praline.no.neosoft.com To: djgpp AT sun DOT soe DOT clarkson DOT edu Dj-Gateway: from newsgroup comp.os.msdos.djgpp > Especially since I want to log 4 Channels at about 10-20kHz. > I hear that V2.0beta handles interrupts better. > Is it just that the interrupt routines don't get paged out of memory > or are there other fixes/advantages. There are many fixes. The wrappers had bugs, and GO32 had bugs. Do not hook both RM & PM interrupts in V2, only PM (since RM intertups are reflected). You need to lock all the memory your handler uses; this is virtually impossible to track down in C and the wrappers don't lock. I only suggest using the wrappers for environments that will not page, and to write assembler routines for production/unknown environment code. On a 486/33 you can handle about 10K interrupts per second if each requires a mode swap. If you EOI/IRET the interrupt instead of chaining you should be able to get a higher frequency which might meet your needs. If this doesn't work, you might need a ring 0 DPMI which does not support virtual memory, which could cut the interrupt overhead.