Experimental OS development using D

BCS nothing at pathlink.com
Thu Jan 4 15:24:48 PST 2007


Harry Vennik wrote:
> 
> No, this won't fit in the concept. I think of it like this (Only mentioning the relevant steps.):
> - A process does an IPC call to the filesystem service to map some data from a file into memory.
> - The fs service reads the data from disk and puts it into newly allocated memory page(s).
> - The fs service announces to the kernel which pages should be mapped into the virtual address space
> of the calling process, and returns the pointer.
> - The kernel maps the shareable memory into the virtual address space of the calling process, and
> translates the returned pointer to reflect the correct address in the calling process' address space.
> 
> I think that's the best we can do. It is secure (at least at first sight), and it should save quite a lot of
> syscalls, except when reading/writing a large file randomly.
> 
> Harry

This is quite a bit different from what I was thinking of. I'll have to 
think on it.

Could it handle the "lazy-load" type of mmap? The kind where nothing is 
loaded when you map in the file, instead that all waits for page faults 
using the same device as the virtual memory system. Maybe the file 
system process could just do a memory page to disk block mapping for the 
other process.



More information about the Digitalmars-d-announce mailing list