On Tue, 2003-08-19 at 03:12, Aaron Hope wrote:
> I think that he's looking for the same raw i/o that oracle likes so
> much:
> http://www.tldp.org/HOWTO/SCSI-2.4-HOWTO/rawdev.html

Yep. I've also seen this reference.

> 
> But while you don't have to be writing a filesystem to want this, it's
> still targeted for a pretty select audience.  Have you considered a
> simple O_DIRECT instead? 

I'm running 2.6.0-test3 so I think O_DIRECT may be supported. I'm under
the assumption that RAW i/o came before memory mapped i/o. Seems RAW
uses user space memory while memory mapped uses kernel space memory? Is
that right? I also found a paper that showed that RAW was actually
slower than EXT3 for a database system.

So advantages of RAW:

* data is definitely written to disk when write/pwrite returns (what
about the disk's cache?)
* no extra buffer
* no file system overhead

Disadvantages:

* must read/write in proper block size bytes
* no file system - it is just a stream of bytes


And to use a raw device:

* use raw to associate a block device with a raw device
* open() the raw device
* read/write to it - use seek to move around

Please correct me if I have the wrong idea. I do have Stevens' books and
consider them to be my bibles. :-)

_______________________________________________
gnhlug-discuss mailing list
[EMAIL PROTECTED]
http://mail.gnhlug.org/mailman/listinfo/gnhlug-discuss

Reply via email to