torek@elf.ee.lbl.gov (Chris Torek) (04/04/91)
In article <00670398761@elgamy.RAIDERNET.COM> elg@elgamy.RAIDERNET.COM (Eric Lee Green) writes: >... If I recall right, the vast majority of Unix kernals basically >do I/O a block at a time into cache RAM, then copy it by hand into >the user's data buffers. Mostly right. Although mapping buffers copy-on-write is possible it is often not cost-effective. Also, the size of a `block' is not well defined here; this makes a lot of difference. >Some do pre-reading, which speeds sequential access, but puts random >access into the doghouse The code typically triggers off `the last read for this file was block n, this one is block n+1, so get n+2', which avoids this (again it depends on `block size', which typically varies from 512 to 65536 bytes). -- In-Real-Life: Chris Torek, Lawrence Berkeley Lab CSE/EE (+1 415 486 5427) Berkeley, CA Domain: torek@ee.lbl.gov