From owner-freebsd-current Fri Jun 12 03:32:08 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id DAA07173 for freebsd-current-outgoing; Fri, 12 Jun 1998 03:32:08 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from hda.hda.com (hda-bicnet.bicnet.net [208.220.66.37]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id DAA07069 for ; Fri, 12 Jun 1998 03:31:39 -0700 (PDT) (envelope-from dufault@hda.hda.com) Received: (from dufault@localhost) by hda.hda.com (8.8.5/8.8.5) id GAA28797; Fri, 12 Jun 1998 06:05:35 -0400 (EDT) From: Peter Dufault Message-Id: <199806121005.GAA28797@hda.hda.com> Subject: Re: floating point usage within the kernel - howto ? In-Reply-To: <199806110933.TAA18520@cimlogic.com.au> from John Birrell at "Jun 11, 98 07:33:27 pm" To: jb@cimlogic.com.au (John Birrell) Date: Fri, 12 Jun 1998 06:05:34 -0400 (EDT) Cc: luigi@labinfo.iet.unipi.it, jb@cimlogic.com.au, mike@smith.net.au, current@FreeBSD.ORG X-Mailer: ELM [version 2.4ME+ PL25 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > Luigi Rizzo wrote: > > (and, last not least, robotics people tend to have a > > lot of money just because their hardware costs so much :) > > If it is robotics, where is the double redundent safety implemented? > Are they actually moving mass around? What's your point here? The rule we use for a fail-safe system is roughly: Any detectable single point failure (undetectable failures can't be discounted and you must design for multiple undetected faults and a single detectable fault) must result in the system entering its safe state within the fault tolerance time associated with the failure. The fault tolerance time is the smallest amount of time that any hazard resulting from the fault can be tolerated. A fail safe system could be implemented with FreeBSD. You'd have a small safety kernel, you'd have to have ways of demonstrating that it was running when it was supposed to and doing what it was supposed to, and you'd have to design the software/hardware/mechanics appropriately. I'm not saying this is easy or that I'd do it, but there is nothing inherently stopping you, especially in a research setting. Consider building the contrived failsafe system of an elevator powered by giant superconducting linear motors commutated by software. The faults that result in the hazard "system accelerates to .85g" are addressed by the existing mechanical braking system invented by Otis 100 years ago as long as the motors can be demonstrated as being incapable of overcoming the brakes and as long as you have a way of demonstrating there is no second fault associated with the brakes. The annoyed and scared customers are then removed by the fire department over a few hours, so it better not happen very often. A fault tolerant system is much more difficult to build and will typically be built out of multiple fail safe systems. Peter -- Peter Dufault (dufault@hda.com) Realtime development, Machine control, HD Associates, Inc. Safety critical systems, Agency approval To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message