pkimpel / retro-b5500

Web-based emulator and operating environment for the Burroughs B5500 computer system.
http://www.phkimpel.us/B5500/
MIT License
77 stars 7 forks source link

Invalid address and flag-bit errors #23

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
We have reports of invalid address and flag-bit errors, especially when the 
system is under heavy load. We also see occasional disk errors, which look like 
they may be caused by bad memory addresses.

From Paul Cumberworth email of 2013-11-18:

<quote>
I had also experienced the DKA failure a few weeks ago and took a copy for 
interest sake.  I put it down to a corrupted directory at the time.
Inline image 1

I've have also notice the increased frequency of Invalid Addresses is TSSMCP, 
and there also appears some strange behavior in DCMCP under load. Occasionally 
on large compile for instance, I will get a flag bit error, on rerun it will 
run satisfactorily to completion.  A good example is two concurrent compiles of 
the cobol compiler (seems to be load sensitive), reasonably often one of the 
compiles will get a flag bit error.  I did get the odd flag bit error 
previously but hadn't really worried about it too much, but the frequency is 
definitely higher.
</quote>

Original issue reported on code.google.com by paul.kimpel@digm.com on 18 Nov 2013 at 2:05

GoogleCodeExporter commented 9 years ago
Attach screenshots from Paul C.

Original comment by paul.kimpel@digm.com on 18 Nov 2013 at 2:20

Attachments:

GoogleCodeExporter commented 9 years ago
Fixed an invalid address problem in TRW when the source address ended at 
@77777. This was happening in Fausto Saporito's APL compile under TSMCP.

Fixed a serious problem in TRN (zone bits were not being cleared to zero) that 
resulted in consistent flag bit errors in the CHECKAL Algol Master Test 
program. Also fixed a problem with TFFF not being set properly by TRN when the 
last character of the source string had a negative zone pattern.

Suspect there remain problems with flag bit errors occurring under heavy load.

Original comment by paul.kimpel@digm.com on 29 Dec 2013 at 4:24

GoogleCodeExporter commented 9 years ago
Found a stack adjustment problem in Processor.indexDescriptor(). Implemented 
fix in release 1.00. Also reworked some code in OPDC and DESC operators. Left a 
cc.stateDump() call in OPDC in the released code for 1.00 to try to trap this 
in the wild.

This appears to have made an improvement, but we still see occasional Flag Bit 
aborts, especially when running the system under heavy load. We often see it 
when compiling a program with Algol, e.g., "-FLAG BIT ALGOL/CHECKAL= 2, S= 2, 
A= 6". That S=2,A=6 address shows up a lot. The problem appears to occur during 
procedure exit.

Original comment by paul.kimpel@digm.com on 28 Sep 2014 at 1:17