[lkml]   [2004]   [Feb]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: Active Memory Defragmentation: Our implementation & problems
    On Wed, 4 Feb 2004, Alok Mooley wrote:

    > --- Dave Hansen <> wrote:
    > > The "work until we get interrupted and restart if
    > > something changes
    > > state" approach is very, very common. Can you give
    > > some more examples
    > > of just how a page fault would ruin the defrag
    > > process?
    > >
    > What I mean to say is that if we have identified some
    > pages for movement, & we get preempted, the pages
    > identified as movable may not remain movable any more
    > when we are rescheduled. We are left with the task of
    > identifying new movable pages.
    > -Alok

    If this is an Intel x86 machine, it is impossible for pages
    to get fragmented in the first place. The hardware allows any
    page, from anywhere in memory, to be concatenated into linear
    virtual address space. Even the kernel address space is virtual.
    The only time you need physically-adjacent pages is if you
    are doing DMA that is more than a page-length at a time. The
    kernel keeps a bunch of those pages around for just that

    So, if you are making a "memory defragmenter", it is a CPU time-sink.
    That's all.

    Dick Johnson
    Penguin : Linux version 2.4.24 on an i686 machine (797.90 BogoMips).
    Note 96.31% of all statistics are fiction.

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 14:00    [W:0.020 / U:15.760 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site