[comp.lang.ada] ADA and SIGALARM

meh@wucs1.wustl.edu (Mark E Hunter) (02/22/90)

Hi,
	Got a question for the ADA gurus here.  I am
sure someone has asked it before.  I am running an
ADA multitasking program under Sunview on a sun
workstation.  Very often, the program crashes.  This
appears to happen when an ADA task picks up an 
alarm meant for Sunview.  What is going on here? Any ideas,
explanations, and solutions would be graciously accepted.

Mark E. Hunter
meh@wucs1.wustl.edu

billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu (William Thomas Wolfe, 2847 ) (02/22/90)

From meh@wucs1.wustl.edu (Mark E Hunter):
> I am running an
> ADA multitasking program under Sunview on a sun
> workstation.  Very often, the program crashes.  This
> appears to happen when an ADA task picks up an 
> alarm meant for Sunview.  What is going on here? 

   If you are using the Telesoft compiler, section 1.2.3.1 of the 
   Software Extensions User Guide specifically states (page 1-3) 
   that "The Ada run-time kernel uses SIGALARM for implementing 
   DELAY statements, timed ENTRY calls, and selective waits with 
   DELAY alternatives.  [...] When the SunView notifier is called... 
   it issues a system call that will replace the Ada kernel's timer 
   interrupt handler with its own.  [...] In future releases, a special
   version of the Ada run-time kernel that cooperates with the SunView 
   kernel will be included in the SunView Bindings sublibrary.  That 
   kernel will allow full use of Ada tasking with SunView."


   Bill Wolfe, wtwolfe@hubcap.clemson.edu