Neal H Walfield <[EMAIL PROTECTED]> writes:

> In the scenario case, we do a completely unnecessary read!  That is
> not demand paging; that is a waste.

Oh, you're talking about the case where we are writing complete pages?
Yes, that's a defect of any scheme like this.  In principle, using the
vm_copy interface is the only thing that can effectively avoid it.

> But the manager knows; why force the kernel to guess?  Say we send:
> 
>         io_read (file, data, vm_page_size * 4, 0, &amount)
> 
> By the time the kernel detects a sequential read, it is already too
> late to be of any use.

Well, this is an old Mach debate.  :)

But note that the *manager* doesn't know any better than the kernel.
Only the *user* knows what the access pattern is.  (Even if the "user"
resides in the same task as the pager.)

So we might someday want a way for users to declare things about
memory regions mapped in their address space, some kind of declaration
like that might be useful.  That would be the time to add msync too.

Thomas

_______________________________________________
Bug-hurd mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-hurd

Reply via email to