delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2002/01/26/12:45:21

X-Authentication-Warning: delorie.com: mailnull set sender to djgpp-bounces using -f
From: Charles Sandmann <sandmann AT clio DOT rice DOT edu>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: DPMI Interrupt latency ?
Date: Sat, 26 Jan 2002 11:08:43 CST
Organization: Rice University, Houston TX
Lines: 35
Message-ID: <3c52e29b.sandmann@clio.rice.edu>
References: <slrna5524i DOT 43o DOT kala AT ganga DOT sankya DOT com>
NNTP-Posting-Host: clio.rice.edu
X-Trace: joe.rice.edu 1012065756 399 128.42.105.3 (26 Jan 2002 17:22:36 GMT)
X-Complaints-To: abuse AT rice DOT edu
NNTP-Posting-Date: 26 Jan 2002 17:22:36 GMT
X-NewsEditor: ED-1.5.9
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

> Could anyone tell me what is the order of delay (in clocks) required for
> the CWSDPMI server to reflect a hardware interrupt from Real mode to the
> protected mode handler ?

It depends on the chip you're using.  A bunch.  
Say a few thousand clocks.  

> I need to write a Hardware Interrupt handler where latency is very
> critical. Any suggestion regarding which DPMI server would provide me
> the best latency figures would also be welcome. (The application need
> not be portable - and I can specify the environment).

PMODE 1.3 is probably the fastest.  

The best thing to do is some tests.  If you document it (or provide the
test programs) I'll add it to a summary somplace.

> I would have liked to setup a Real mode interrupt handler as well to
> reduce the latency - but the problem is that my Interrupt routine needs
> random access to a 4MB buffer in extended memory. Would it be possible
> to hack the DPMI server source code so that real mode handler can access
> memory above 1MB using 32 bit pointers ? (the Flat mode)- in which case,
> which Descriptor do I need to modify ?

Anything is possible since the source is freely available :-)

In CWSDPMI all the mode switch and selector setup is done in mswitch.asm
so it should be fairly simple to set up one of the selectors to do the
"unreal" flat mode 32-bit real mode hack.  You would need to know about
the physical to virtual translations with page tables under CWSDPMI.

PMODE would not need to worry about page table remapping issues, but I
don't offhand know where to set up the unreal segments there.

In any case, if you get it working you can always contribute it.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019