From owner-freebsd-chat Fri May 30 14:40:29 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id OAA09926 for chat-outgoing; Fri, 30 May 1997 14:40:29 -0700 (PDT) Received: from luke.pmr.com ([206.224.65.132]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id OAA09912 for ; Fri, 30 May 1997 14:40:11 -0700 (PDT) Received: (from bob@localhost) by luke.pmr.com (8.8.5/8.7.3) id QAA24952; Fri, 30 May 1997 16:38:12 -0500 (CDT) Message-ID: <19970530163812.44978@luke.pmr.com> Date: Fri, 30 May 1997 16:38:12 -0500 From: Bob Willcox To: Joshua Fielden Cc: Stephen McKay , freebsd-chat@FreeBSD.ORG Subject: Re: IDE or Ultra SCSI References: <199705300343.XAA01738@federation.addy.com> <19970530092929.CP11088@uriah.heep.sax.de> <199705301207.WAA15894@ogre.dtir.qld.gov.au> <338F2F83.55301D85@concentric.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.69e In-Reply-To: <338F2F83.55301D85@concentric.net>; from Joshua Fielden on Fri, May 30, 1997 at 01:50:27PM -0600 Reply-To: bob@luke.pmr.com (Bob Willcox) Sender: owner-chat@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk On Fri, May 30, 1997 at 01:50:27PM -0600, Joshua Fielden wrote: > > SCSI can still only access two devices at any given time, one initiator > and one target. SCSI II > allows for "disconnect" which means a drive can aquire a queue of > commands, remove itself from the bus, and reattatch when finished > processing those commands, but it obviously is no help for read/write > operations. :-) It does speed things up, but not quite to the extent I > believe you are thinking of. This is not exactly true. All modern drives (all drives that I have worked with -- I pretty much do SCSI device drivers for a living) will acquire the SCSI command (be it a read, write, inquiry, etc.) and then immetiately disconnect from the bus while they prepare to process it (even if not command tag queuing). For reads they won't reconnect to the SCSI bus till they have data ready to transfer (i.e., they have seeked to the proper spot on the disk and read the data into their cache). For writes they will reconnect, transfer the data to their cache then disconnect while the write is actually done (from the cache to the disk), reconnecting once again at command completion to transfer status. Given this, it is quite easy to get many drives "running" at once, with them all sharing the bus as necessary to transfer their data. As I understand IDE, the controller will remain busy from the time the command is initiated till it completes. This effectively prevents any overlap of commands on a single IDE controller. -- Bob Willcox Anyone who is capable of getting themselves made bob@luke.pmr.com President should on no account be allowed to do the job. Austin, TX -- Douglas Adams, "The Hitchhiker's Guide to the Galaxy"