On Mon, 7 Jun 1999, Zhihui Zhang wrote:
While studying the file ufs_readwrite.c, I see routines like uiomoveco()
that calls vm_uiomove() in vm_map.c. I am almost sure that these are new
in FreeBSD 3.x. The comment in ffs_read() says not a VM based I/O
requests == not headed for the buffer cache. This does not make sense
to me although I understand something about VMIO buffers and non-VMIO
buffers. I hope someone can explain the basic ideas of I/O optimization
with VM object (relating to the OBJ_OPT flag and the global variable
vfs_ioopt) so that I can understand the code easier.
After searching the mailing list archive for some time and tracing down
who calls vm_uiomove(), it seems to me that this is the zero copy read
stuff used to read data into the current process' address space. However,
I do not know when it can be useful or any more details.
-Zhihui
To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message