comp.lang.ada
 help / color / mirror / Atom feed
From: Mark Lorenzen <mark.lorenzen@surfpost.dk>
Subject: Re: Martian Rover Spirit's mulitasking software reset.
Date: 06 Sep 2006 23:43:55 +0100
Date: 2006-09-06T23:43:55+01:00	[thread overview]
Message-ID: <m34pvkobtg.fsf@localhost.localdomain> (raw)
In-Reply-To: 9YadnSb_QKCM-GPZRVnytQ@bt.com

Martin Dowie <martin.dowie@afraidof.co.uk> writes:

> ME wrote:
> > The mars rover Spirit suffered a software reset as a result of a
> > multitasking problem.
> > "The apparent cause was that the rover's central processing unit was
> > overworked as several tasks were running in parallel at the time."
> >  The rover uses VX works and I believe C. Testing obviously did not
> > catch this fault. Would the use of Ada  made any difference?
> >
> 
> My understanding is that there was a "priority inverstion", so had

That is also my understanding.

> they used "pragma Locking_Policy (Ceiling_Locking);" (RM  D.3 Priority
> Ceiling Locking) then the problem could have been avioded.
>
> Of course, they might not have used it even if they were using Ada. :-)

As far as I know, they were aware of the priority inversion problem
before launch, but did not consider it important enough to warrant a
fix. I guess that a watchdog device simply kicks in and reboots the
system, should it hang for too long.

- Mark



  parent reply	other threads:[~2006-09-06 22:43 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <12fsfpic0ccq16b@corp.supernews.com>
2006-09-06  4:47 ` Martian Rover Spirit's mulitasking software reset jimmaureenrogers
2006-09-06 10:29   ` Pascal Obry
2006-09-06  6:05 ` Martin Dowie
2006-09-06 12:52   ` jimmaureenrogers
2006-09-06 14:13     ` Bob Spooner
2006-09-06 22:43   ` Mark Lorenzen [this message]
2006-09-07  3:22     ` ME
2006-09-07 13:47       ` Paul Anderson
2006-09-08  3:46         ` ME
2006-09-08 15:01           ` Paul Anderson
2006-09-06 18:39 ` Jeffrey R. Carter
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox