Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!rutgers!okstate!uokmax!rmtodd From: rmtodd@uokmax.UUCP Newsgroups: comp.os.minix Subject: Re: Which clones *don't* run MINIX Message-ID: <447@uokmax.UUCP> Date: Sat, 7-Feb-87 23:14:23 EST Article-I.D.: uokmax.447 Posted: Sat Feb 7 23:14:23 1987 Date-Received: Mon, 9-Feb-87 01:43:24 EST References: <275@ihnp3.UUCP> <459@moncol.UUCP> <2529@well.UUCP> Organization: University of Oklahoma, Norman, OK Lines: 34 Keywords: MINIX BIOS COMPATIBILITY Summary: BIOS isn't reentrant In article <2529@well.UUCP>, hrh@well.UUCP (Harry Henderson) writes: > My apologies if this is a dumb question, by why the design decision to > make MINIX so hardware-dependant. Why wasn't the BIOS used? Does the > BIOS not provide enough functionality? If the problem is just speed, > why not write a slower version for those of us whose chips don't have > the right pedigree? The hardware dependance strikes at one of the > basic tentents of UNIX philosophy. It's not a dumb question. The problem is that the people who wrote the ROM BIOSes for the clone motherboards, the HD controllers, etc. did not write them with multitasking in mind. Thus the BIOS code is not reentrant -- multiple tasks cannot call the BIOS without mass confusion arising as task 2's call writes on top of the variables set by task 1's call. You could try to set it up so that only one task at a time can access the BIOS and all the rest block. Wendin's PCUNIX does this. In fact, if I remember correctly, they found that you couldn't even safely switch out of the current task if it was executing BIOS code. It does rather interesting things to the system performance. For these reasons, if you want really good multitasking performance, don't use the ROM BIOS. I've heard that PC/IX, like MINIX, is picky about what hard drives it'll use for the same reason. I suspect XENIX acts the same way. On a (somewhat related) subject, does anyone know just what *is* the type of controller MINIX expects? A check inside my machine shows Western Digital chips (WD1010, WD1015, and WD1020, I think), and a ROM HD BIOS with "Copyright (c) 1985 Western Digital". I'd like to know if this is the kind that works. As for violating "the tenets of the UNIX philosophy", all UNIX systems have device-dependent driver code. The UNIX philosophy just puts all the mess in a small section of the code, leaving the rest relatively portable. -------------------------------------------------------------------------- Richard Todd USSnail:820 Annie Court,Norman OK 73069 UUCP: {allegra!cbosgd|ihnp4}!okstate!uokmax!rmtodd