Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #93746

Re: Continue with learning C

From Ben Bacarisse <ben.usenet@bsb.me.uk>
Newsgroups comp.lang.c
Subject Re: Continue with learning C
Date 2016-09-18 20:36 +0100
Organization A noiseless patient Spider
Message-ID <87k2e9j8ze.fsf@bsb.me.uk> (permalink)
References (6 earlier) <8b6d5227-f102-4ca9-b964-45b65485c2dc@googlegroups.com> <nrkm32$dj4$1@dont-email.me> <nrm8ss$dki$1@dont-email.me> <nrmcav$p43$1@dont-email.me> <e47tq7Fjvn0U1@mid.individual.net>

Show all headers | View raw


"Osmium" <r124c4u102@comcast.net> writes:

> "BartC" wrote:
>
>> Didn't the Space Shuttle have multiple backup computers, one of
>> which was programmed by a different team to make sure they didn't
>> share the same bugs?
>
> I don't think I ever heard that before, but if so, it could lead to
> some nasty side effects.
>
> Imagine being on the shuttle and knowing you are going to die in a
> little while if you react wrongly.  Computer A says do X and computer
> B says do Y. What a terrifying way to die. 

The main flight system was designed for four or five computers (you get
two failures with five and can still get a single result by majority
vote) but the result of the synchronised computations are presented as
definite actions -- the shuttle turns, it's engines fire and so on.  If
no majority is possible, the system simply stops.  Since it's a
fly-by-wire system, this is catastrophic, but at least no one has to
make the sorts of decisions you describe.

Due to cost, the end design was for four synchronised computers, but a
fifth was also carried with more limited software.  This could bring the
shuttle down even if the main system failed.  Some flights even went out
with six computers -- two that could be used as stand-alone backups to
get the craft down and the main synchronised four.

This limited flight backup system was indeed developed by a separate
team (Rockwell won the contract) from the IBM team that developed the
rest (from specs generated by Rockwell, as it happens).  It's not clear
if this was deliberate or simply how the contracts ended up being
awarded.  Maybe IBM or Rockwell could have won both and the same team
that developed one system would them have written the other.  I don't
know.

I've heard is said that four were used because that is the minimum
number that can solve the Byzantine Generals Problem[1] -- synchronised
action in the face of unreliable autonomous agents -- but that's not the
case.  The main computers simply used majority voting between three,
switching the fourth in (manually!) when one of the three fails.

[1] If you fancy fun read (for some value of fun) you could do worse
than this which is one of my favourite papers:

Lamport, Shostak, and Pease, "The Byzantine Generals Problem" ACM
Transactions on Programming Languages and Systems, Vol. 4, No. 3, July
1982.
-- 
Ben.

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Continue with learning C Alla _ <modelling.data@gmail.com> - 2016-09-15 05:11 -0700
  Re: Continue with learning C "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-09-15 05:29 -0700
  Re: Continue with learning C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-09-15 15:01 +0100
  Re: Continue with learning C Richard Heathfield <rjh@cpax.org.uk> - 2016-09-15 15:32 +0100
    Re: Continue with learning C Alla _ <modelling.data@gmail.com> - 2016-09-15 08:10 -0700
    Re: Continue with learning C luser droog <luser.droog@gmail.com> - 2016-09-15 12:06 -0700
      Re: Continue with learning C Richard Heathfield <rjh@cpax.org.uk> - 2016-09-15 21:38 +0100
        Re: Continue with learning C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2016-09-16 21:02 -0700
          Re: Continue with learning C "Osmium" <r124c4u102@comcast.net> - 2016-09-17 08:03 -0500
          Re: Continue with learning C Richard Heathfield <rjh@cpax.org.uk> - 2016-09-17 22:38 +0100
            Re: Continue with learning C "James R. Kuyper" <jameskuyper@verizon.net> - 2016-09-17 18:14 -0400
              Re: Continue with learning C raltbos@xs4all.nl (Richard Bos) - 2016-09-18 10:47 +0000
              Re: Continue with learning C Alla _ <modelling.data@gmail.com> - 2016-09-19 01:25 -0700
                Re: Continue with learning C Ian Collins <ian-news@hotmail.com> - 2016-09-19 20:51 +1200
                Re: Continue with learning C James Kuyper <jameskuyper@verizon.net> - 2016-09-19 09:49 -0400
                Re: Continue with learning C Richard Heathfield <rjh@cpax.org.uk> - 2016-09-19 15:15 +0100
                Re: Continue with learning C Keith Thompson <kst-u@mib.org> - 2016-09-19 11:39 -0700
                Re: Continue with learning C Reinhardt Behm <rbehm@hushmail.com> - 2016-09-20 09:55 +0800
                Re: Continue with learning C David Brown <david.brown@hesbynett.no> - 2016-09-20 08:50 +0200
                Re: Continue with learning C Reinhardt Behm <rbehm@hushmail.com> - 2016-09-20 18:04 +0800
                Re: Continue with learning C David Brown <david.brown@hesbynett.no> - 2016-09-20 13:25 +0200
                Re: Continue with learning C Reinhardt Behm <rbehm@hushmail.com> - 2016-09-20 20:18 +0800
                Re: Continue with learning C David Brown <david.brown@hesbynett.no> - 2016-09-20 15:25 +0200
                Re: Continue with learning C Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-20 08:45 -0400
                Re: Continue with learning C Reinhardt Behm <rbehm@hushmail.com> - 2016-09-20 22:05 +0800
                Re: Continue with learning C Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-20 10:56 -0400
                Re: Continue with learning C Rosario19 <Ros@invalid.invalid> - 2016-09-19 18:55 +0200
                Re: Continue with learning C Anton Shepelev <anton.txt@gmail.com> - 2016-09-25 01:08 +0300
            Re: Continue with learning C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2016-09-17 17:08 -0700
              Re: Continue with learning C Richard Heathfield <rjh@cpax.org.uk> - 2016-09-18 01:11 +0100
                Re: Continue with learning C Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-17 21:32 -0400
                Re: Continue with learning C David Brown <david.brown@hesbynett.no> - 2016-09-18 16:27 +0200
                Re: Continue with learning C Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-18 16:08 -0400
                Re: Continue with learning C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2016-09-18 07:30 -0700
                Re: Continue with learning C Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-18 16:07 -0400
                Re: Continue with learning C David Brown <david.brown@hesbynett.no> - 2016-09-18 16:38 +0200
                Re: Continue with learning C BartC <bc@freeuk.com> - 2016-09-18 16:37 +0100
                Re: Continue with learning C Reinhardt Behm <rbehm@hushmail.com> - 2016-09-18 23:54 +0800
                Re: Continue with learning C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2016-09-18 16:56 -0700
                Re: Continue with learning C Richard Heathfield <rjh@cpax.org.uk> - 2016-09-18 17:05 +0100
                Re: Continue with learning C "James R. Kuyper" <jameskuyper@verizon.net> - 2016-09-18 12:28 -0400
                Re: Continue with learning C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2016-09-18 17:00 -0700
                Re: Continue with learning C Alla _ <modelling.data@gmail.com> - 2016-09-19 01:40 -0700
                Re: Continue with learning C "Osmium" <r124c4u102@comcast.net> - 2016-09-19 08:55 -0500
                Re: Continue with learning C "Osmium" <r124c4u102@comcast.net> - 2016-09-18 11:31 -0500
                Re: Continue with learning C Ian Collins <ian-news@hotmail.com> - 2016-09-19 07:25 +1200
                Re: Continue with learning C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-09-18 20:36 +0100
                Re: Continue with learning C "James R. Kuyper" <jameskuyper@verizon.net> - 2016-09-18 15:45 -0400
                Re: Continue with learning C Rosario19 <Ros@invalid.invalid> - 2016-09-19 18:58 +0200
                Re: Continue with learning C "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-09-18 09:55 -0700
                Re: Continue with learning C "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-09-18 10:12 -0700
                Re: Continue with learning C luser droog <luser.droog@gmail.com> - 2016-09-18 13:11 -0700
                Re: Continue with learning C David Brown <david.brown@hesbynett.no> - 2016-09-18 21:54 +0200
                Re: Continue with learning C supercat@casperkitty.com - 2016-09-18 15:58 -0700
                Re: Continue with learning C Richard Heathfield <rjh@cpax.org.uk> - 2016-09-19 07:09 +0100
                Re: Continue with learning C David Brown <david.brown@hesbynett.no> - 2016-09-19 10:04 +0200
                Re: Continue with learning C BartC <bc@freeuk.com> - 2016-09-19 10:38 +0100
                Re: Continue with learning C David Brown <david.brown@hesbynett.no> - 2016-09-19 13:29 +0200
                Re: Continue with learning C supercat@casperkitty.com - 2016-09-19 08:04 -0700
                Re: Continue with learning C Reinhardt Behm <rbehm@hushmail.com> - 2016-09-20 09:33 +0800
                Re: Continue with learning C supercat@casperkitty.com - 2016-09-19 20:47 -0700
                Re: Continue with learning C David Brown <david.brown@hesbynett.no> - 2016-09-20 09:00 +0200
                Re: Continue with learning C Reinhardt Behm <rbehm@hushmail.com> - 2016-09-20 17:59 +0800
                Re: Continue with learning C Ike Naar <ike@iceland.freeshell.org> - 2016-09-20 17:24 +0000
                Re: Continue with learning C David Brown <david.brown@hesbynett.no> - 2016-09-20 08:57 +0200
                Re: Continue with learning C supercat@casperkitty.com - 2016-09-20 10:53 -0700
                Re: Continue with learning C Reinhardt Behm <rbehm@hushmail.com> - 2016-09-19 13:19 +0800
                Re: Continue with learning C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-09-19 01:30 +0100
      Re: Continue with learning C Alla _ <modelling.data@gmail.com> - 2016-09-19 01:15 -0700
  Re: Continue with learning C Barry Schwarz <schwarzb@dqel.com> - 2016-09-15 12:38 -0700
  Re: Continue with learning C fir <profesor.fir@gmail.com> - 2016-09-21 11:42 -0700
    Re: Continue with learning C fir <profesor.fir@gmail.com> - 2016-09-21 12:40 -0700
      Re: Continue with learning C fir <profesor.fir@gmail.com> - 2016-09-21 12:49 -0700
      Re: Continue with learning C fir <profesor.fir@gmail.com> - 2016-09-23 14:47 -0700
        Re: Continue with learning C fir <profesor.fir@gmail.com> - 2016-09-23 14:59 -0700

csiph-web