delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1995/09/13/03:12:56

Xref: news-dnh.mv.net comp.os.msdos.djgpp:2015
Path: news-dnh.mv.net!mv!news.sprintlink.net!cs.utexas.edu!math.ohio-state.edu!cis.ohio-state.edu!nntp.sei.cmu.edu!fs7.ece.cmu.edu!cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!oitnews.harvard.edu!newsfeed.rice.edu!rice!news!sandmann
From: Charles Sandmann <sandmann AT clio DOT rice DOT edu>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Bulletproof interrupt handlers??
Date: Mon, 11 Sep 1995 20:53:52 CDT
Organization: Rice University, Houston, Texas
Lines: 14
References: <432jde$mvm AT dfw DOT nkn DOT net>
Reply-To: sandmann AT clio DOT rice DOT edu
Nntp-Posting-Host: clio.rice.edu
To: djgpp AT sun DOT soe DOT clarkson DOT edu
Dj-Gateway: from newsgroup comp.os.msdos.djgpp

>   I have been working on writting interrupt handlers for the timer, mouse,
> and keyboard for several days now, but I'm still not quite sure exactly
> what needs to be done to make them "bulletproof"?  I know that all
> stack, code, and data sections that your interrupt handler could possibly
> use needs to be locked into memory.  Is that correct?

Yes, this is correct.  There are two ways to do this.  One way is to write
the interrupt routine in assembler (.S) so you know exactly the extent of
the code and data you touch, and can arrange it in a manner which is easy to
lock, then lock those very few bytes.  The second is to just lock everything
your program might touch.  This would be everything from 0x10a8 to sbrk(0).
This final approach is what needs to be done in the default wrapper routines,
but I (and everyone else on the V2 project) has just been too busy to get to it.

- Raw text -


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