Subject: Re: pmap and vm_map help
To: Kip Walker <kwalker+@CMU.EDU>
From: Randy Case <randy_case@nkn.net>
List: port-mac68k
Date: 05/01/1996 23:15:54
>Does anyone know where I can find nice detailed explanations of the
>virtual memory management in NetBSD?  The pmap I mostly understand,
>and can read the Mach tech reports here at CMU ;) But I haven't found
>a good discussion of the vm_map and vm_object stuff (if that is also
>Mach, I haven't found the appropriate reports yet).
>
>Thanks!
>kip

According to Uresh Vehalla's "Unix Internals" (page 490), he states
that

        The internal VM framework of 4.4BSD is based on that of
        Mach. Its external interface, however, is more like that
        of SVR4.

He then goes on talking about mmap. Earlier in the chapter (15),
he talks about vm_map as part of Mach 2.5. The reference is Rashid
et al, "Machine-Independent Virtual Memory Management for Paged
Uni-processor and Multiprocessor Architectures" (IEEE Transactions
on Computing, vol 37, no. 8, Aug 1988, pp 896-908).

On page 475, he talks about memory allocation:

        A user may allocate one or more pages of virtual memory by
        calling vm_allocate for zero-filled pages or vm_map for
        pages backed by a specific memory object (for example,
        a file).

Hope this helps. (And I really recommend Vehalla's book...)

Randy

(Still playing with NetBSD 1.1 on my old IIsi...)

Randy Case               |#include <std_disclaimer.h>  |Ask me about
randy_case@nkn.net (home)| They don't speak for me,    | Systems
rcase@esy.com      (work)|   and I don't speak for them|  Engineering
-----BEGIN GEEK CODE BLOCK-----
       Version: 3.1
       GCS/E/IT/M/S d>+ s: a+ C$ UBVISC*++$ P+ L- !E-
       W+++$>$ N++ !o K-? !w-- !O- M++$ V PS+ PE+@ !Y PGP !t
       !5 !X !R- tv? b+++ DI++++ !D G e++ h---- r+++ y++++
------END GEEK CODE BLOCK------