[[!meta copyright="Copyright © 2012 Free Software Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] [[!tag open_issue_documentation open_issue_gnumach]] # IRC, freenode, #hurd, 2012-02-01 <sekon> on Hurd what is the difference between kernel memory object and pmap module ?? <sekon> pmap is heap/libraries table for each thread while kernel memory object refers to arbitary blobs of data ?? <braunr> sekon: pmap is the low level memory mapping module <braunr> i.e. it programs the mmu <braunr> and these aren't hurd-specific, they are mach modules <sekon> braunr: so kernel memonry objects consists of a bunch of pmaps ?? <braunr> sekon: memory objects can be various things, be specific please <braunr> (they're certainly not a bunch of pmaps though, no) <braunr> there is one pmap per vm_map, and there is one vm_map per task <braunr> and there is no need for double question marks, is ther ?? <sekon> lol then is kernel memory object , please excuse the metaphor something like a base class for pmap <braunr> i don't know what a "kernel memory object" is, be specific please, again <sekon> braunr: http://courses.cs.vt.edu/~cs5204/fall05-gback/presentations/MachOS_Rajesh.ppt <sekon> goto page titled External Memory Management (EMM) on page 15 <sekon> Kernel memory object shows up <braunr> you know there are other formats for this document <sekon> nope .. i did not know that <sekon> in page 17 pmamp shows up <braunr> "the problems of external memory management" ? <sekon> braunr: the paper i am also reading is called x15mach_thesis <braunr> ah, that's mine * sekon bows <sekon> :) <braunr> ok i see page 17 <sekon> so please good sir explain the relationship between kernel memory object and pmap <sekon> (if any) <sekon> braunr: there is no mention of kernel memory object <braunr> again, i don't see any reference or definition of "kernel memory object" <sekon> but your paper says <sekon> that when page faults occur <sekon> the kernel contact the manager for a kernel reference object <sekon> *memory <braunr> where ? <sekon> in section 2.1.3 (unless i read it wrong) <sekon> no just a sec <sekon> 2.1.5 <braunr> i never used the expression "kernel memory object" there :p <braunr> anyway, you're referring simple to memory objects as seen by userspace pagers <braunr> a memory object is a data container <braunr> usually, it's a file <braunr> but it can be anything <braunr> the pager is the task that provides its content and implements the object methods <braunr> as for the relation between them and the pmap module, it's a distant one <braunr> i'll explain it with an example <braunr> page fault -> request content of memory object at a given offset with given length from pager -> ask pmap to establish the mapping in the mmu <sekon> braunr: thank you ver much <sekon> *very