Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site eosp1.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!princeton!eosp1!robison From: robison@eosp1.UUCP (Tobias D. Robison) Newsgroups: net.micro Subject: Re: Parity Checking Message-ID: <1068@eosp1.UUCP> Date: Fri, 17-Aug-84 12:49:25 EDT Article-I.D.: eosp1.1068 Posted: Fri Aug 17 12:49:25 1984 Date-Received: Sat, 18-Aug-84 01:30:43 EDT Organization: Exxon Office Systems, Princeton, NJ Lines: 48 References: Parity checking is a flawed feature of limited use unless you and your system together can decide what an error means, and what to do about it. Here's a case in point: - You are editing a file, and it's been a while since your last backup, when suddenly the dreaded parity error occurs. Your data in memory is lost, and you must reboot. And yet, the only thing that was wrong was that part of the operating system needed for CRT output was bombed. You should have been able to store your document. In fact, a system without parity checking WOULD have let you store your document. Good parity checking requires the following: - The system will try to continue running after a parity error. It's your choice whether it should: + just continue what you were doing + execute routines in ROM designed to store data on disk before rebooting. + try to reload the erroneous data from disk and continue + etc... - You and the system must be able to tell the difference between kinds of parity errors: + to OSYS code + to applications code + to OSYS data + to applications data. You want to try different things in these cases, and a good system will check ALL memory, tell you what problem(s) you have, and prompt with appropriate recoveries. In general, you need a system that keeps data and instructions separate, so you can distinguish the above cases. Without the choices of recovery, you know that a parity error will ruin your current work. You don't know, however, that your current work is accurate in the absence of a parity error; there may have been a memory error not detected by parity checking; there may have been a bug; you still have to do sanity checks to make sure your work is OK. - Toby Robison (not Robinson!) allegra!eosp1!robison decvax!ittvax!eosp1!robison