ddl@husc6.UUCP (02/22/87)
With all the discussion of how you can't use the PC BIOS because it can only handle one disk operation at a time, has anyone noticed that the MINIX file system process runs single-threaded for normal file requests? (This is actually mentioned in the book several times.) Since the file system process blocks waiting for each disk driver transaction to complete, only one process can use the file system at a time. So, even if you have more than one flavor of disk controller, it would seem that only one can be active at any instant. In fact, the disk driver itself operates only in a serial manor, never reordering queued requests to optimize arm movement. The justification for the latter is the claim that only one process is likely to be active (disk-wise) on a personal computer. The interesting question is: assuming you care only about the former case, how hard might it be to run multiple instances of the file system process, all reading from the same request queue? Alternately, it might be easier to make the file system run multi-threaded for all requests. The code is already there to handle these cases for pipe and tty i/o. Has anyone thought about this? Dan Lanciani ddl@harvard.*