Xenix-386 + 80287 --> garbage

Richard Bassett fredb at cheops.OZ
Tue Apr 12 17:32:23 AEST 1988


Hardware:	80386 16Mhz	(NEC Powermate-386)
		80287-8		8MHz 16-bit coprocessor
O/S:		Xenix-386 v2.2.1 or v2.46 (vpix update)

Problem:	occasionally (order once per 10 seconds) the FPU
		gives garbage output.

When:		arises when more than one process is using the
		287, eg 1 process writes floating-point numbers in
		ASCII to a pipe, another process reads them & converts
		them to binary.
		Does not seem to arise when only 1 process is doing heavy
		floating-point work.
		Random digits in the data are garbage, eg 'U'.
		Some calculated results are wrong, eg zero or 999.99*.
		When the job is repeated, corruption will occur in a
		different place.
		Same software runs fine (but 5 times slower - what are
		all the claims about a 386 in software being as fast as a
		287?) if the FPU is removed. It's also unlikely that bugs
		in printf() could cause the corrupted digits.

Note:		Xenix-386 claims to support a 386-287 combination.
		The 8MHz 287 was purchased from NEC.
		I tried a second 287 - same result.

Question:	Has anybody else had this problem? What can I do about it?
	*	Is it a hardware timing problem? -> Does Xenix behave OK
		on other 386-287 harware? -> Would a 10MHz 287 fix it?
	*	Is it a software problem? Is Xenix not saving sufficient
		FPU status data when it task-switches?

Thanks in advance,
--
R J Bassett, Dept of Textile Tech, Uni of NSW,
PO Box 1, Kensington, NSW 2033, AUSTRALIA	: Ph. +61 2 697 4454
-- 
ACSnet:	fredb at cheops.oz
ARPA:	fredb at cheops.oz.au
UUCP:	{uunet,mcvax}!cheops.oz!fredb



More information about the Comp.unix.xenix mailing list