From owner-cvs-all Sun Sep 19 12: 2:58 1999 Delivered-To: cvs-all@freebsd.org Received: from proxy2.ba.best.com (proxy2.ba.best.com [206.184.139.14]) by hub.freebsd.org (Postfix) with ESMTP id A8A6C151D0; Sun, 19 Sep 1999 12:02:53 -0700 (PDT) (envelope-from dillon@apollo.backplane.com) Received: from apollo.backplane.com ([209.157.86.2]) by proxy2.ba.best.com (8.9.3/8.9.2/best.out) with ESMTP id MAA11966; Sun, 19 Sep 1999 12:00:27 -0700 (PDT) Received: (from dillon@localhost) by apollo.backplane.com (8.9.3/8.9.1) id MAA73792; Sun, 19 Sep 1999 12:00:26 -0700 (PDT) (envelope-from dillon) Date: Sun, 19 Sep 1999 12:00:26 -0700 (PDT) From: Matthew Dillon Message-Id: <199909191900.MAA73792@apollo.backplane.com> To: Poul-Henning Kamp Cc: Matthew Jacob , dg@root.com, Greg Lehey , cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG Subject: Re: User block device access References: <17169.937766010@critter.freebsd.dk> Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk :> the superiority of the raw device without taking into account the purpose :> of using the buffered device in the first place -- i.e. to be able to :> take advantage of its caching capabilities. : :And what I'm having a hard time finding is apps that does that. : :All the device using apps I know spend most of chapter one saying :"ALWAYS USE RAW DEVICES" over and over and over. : :-- :Poul-Henning Kamp FreeBSD coreteam member Your 'All' is a pretty narrow definition of 'all'. Many applications implement caching of some sort, even if it's only caching of read-data. The only restriction a database would have, for example, would be to require write-through rather then write-behind. The data caching would still be extremely useful. In fact, a memory-mappable buffered block device with write-through would be much, much more useful to a database then a character device, and I think it's only a two line patch to make mmap() work, and probably a four line patch to implement write-through. It would be virtually unbeatable... use of mmap() removes the extra copy overhead, read-caching takes the burden off the application, optional write-through gives you instant feedback *AND* reblocking. I would even be willing to make the write-through the default. That would give us an extremely powerful and useful buffered block device implementation. -Matt Matthew Dillon To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message