Subversion Repositories HelenOS-doc

Rev

Rev 136 | Rev 168 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 136 Rev 160
Line 739... Line 739...
739
        incremented. Otherwise a new address space share info structure needs
739
        incremented. Otherwise a new address space share info structure needs
740
        to be created. The backend is then called to duplicate the mapping of
740
        to be created. The backend is then called to duplicate the mapping of
741
        pages for which a frame is allocated. The duplicated mapping is stored
741
        pages for which a frame is allocated. The duplicated mapping is stored
742
        in the share info structure B+tree called <varname>pagemap</varname>.
742
        in the share info structure B+tree called <varname>pagemap</varname>.
743
        Note that the reference count of the frames put into the
743
        Note that the reference count of the frames put into the
744
        <varname>pagemap</varname> must be incremented to prevent .</para>
744
        <varname>pagemap</varname> must be incremented in order to avoid a race condition.
-
 
745
    If the originating address space area had been destroyed before the <varname>pagemap</varname>
-
 
746
    information made it to the page tables of other address spaces that take part in
-
 
747
    the sharing, the reference count of the respective frames
-
 
748
    would have dropped to zero and some of them could have been allocated again.</para>
745
      </section>
749
      </section>
746
 
750
 
747
      <section>
751
      <section>
748
        <title>Page faults</title>
752
        <title>Page faults</title>
749
 
753