l4-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: hurd-l4 VM server


From: Maurizio Boriani
Subject: Re: hurd-l4 VM server
Date: 07 Apr 2003 15:24:37 +0200
User-agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7

>>>>> "Marcus" == Marcus Brinkmann <address@hidden> writes:

    Marcus> Interesting, as a first cut at having virtual memory at
    Marcus> all :)

for now I'm testing the pmap.c port (where I've substituted native use of MMU
with l4/ipc sigma0 calls) and fixing it where wrong

    Marcus> Do you know about Neal's user space virtual memory
    Marcus> management ideas?

    Marcus> 
http://web.walfield.org/pub/people/neal/papers/better-best-effort-20021026/
    Marcus> 
http://web.walfield.org/pub/people/neal/papers/gnu-virtual-memory-management-system-lsm-2002-07-14/
 
I've read it and also studied for a long time Cranor dissertion about uvm. So
I think uvm external interface provide feature described by Neal's except
memory container structure (which exists but must be fixed to work in 
user-space). I'll try as first test to write down an idl interface which is 
 a uvm 1-1 map + an external structure which will act as memory container
and then see what's come out.

    >> * I'm thinking (and this is my question) which interface VM
    >> server should have in order to be contacted and used from other
    >> HURD (and others) servers. Should I "simply" code an IDL
    >> interface mapping it 1-1 with uvm_extern.h or you can suggest
    >> something better?

    Marcus> Well, Neals paper contain some suggestions about how such
    Marcus> an interface should look like, but it is a completely
    Marcus> different design.  For a monolithical vm server based on
    Marcus> uvm, something like the current interface we have in Mach
    Marcus> is probably appropriate and blends in best with the code
    Marcus> base we have.  Note that user space paging is an essential
    Marcus> feature in the Hurd.

in fact uvm is an evolution of mach vm. Many actual OS' vm are 
mach2.5 derived from. As you can read in Cranor dissertion page 18.

        http://ccrc.wustl.edu/pub/chuck/psgz/diss.ps.gz

So could be fine to have an interface similar to mach vm (as first version, 
in future i don't know...)

        mach2.5 vm -> uvm -> GNU VMM (user space)

    Marcus> There are some issues with the interface, in particular
    Marcus> vm_map, which concern us, though.  It would be nice to be
    Marcus> able to map from several objects atomically.  You should
    Marcus> be able to find details in the hurd-devel archives,
    Marcus> althoguh I am not sure.  I could dig them out from my
    Marcus> folders otherwise.

Isn't necessary I'm looking at them in hurd and mach sources (also glibc in 
order to see how c memory functions work with mach) also in OSF mach docs.

    Marcus> Thanks, Marcus

Thank you for details,
bye


-- 
Maurizio Boriani -- Networking staff
GPG key: 0xCC0FBF8F
fingerprint => E429 A37C 5259 763C 9DEE  FC8B 5D61 C796 CC0F BF8F <= fingerprint




reply via email to

[Prev in Thread] Current Thread [Next in Thread]