[lkml]   [1996]   [Nov]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: Bugs and wishes in memory management area

    From: (Alan Cox)
    Date: Tue, 19 Nov 1996 22:24:00 +0000 (GMT)
    Content-Type: text

    > DMA memory". That makes modules unreliable. Of course I don't see
    > why modules are apparently using GFP_ATOMIC | GFP_DMA. When loading a
    > module I think we can swap.

    GFP_DMA implies GFP_ATOMIC (rightly or wrongly)

    When saying we can swap I was of course referring to stealing memory
    from user processes not from modules. (MVS is pageable but it is
    because it is so big than not even IBM mainframes can hold it).

    About modules I still think than we do not need GFP_ATOMIC when
    loading them. Wa need contiguous memory and that can we get it either
    by swapping or at least by discarding unmodified pages from user
    processes. Swapping is less prone to failing to find enough DMAable
    memory but it is too big a change for putting it in 2.0. And I don't
    think having unrelable modules can wait until 2.2

    > Wishes for memory management in 2.1
    > First: Real swapping. When two processes are fighting for memory and
    > memory is tight only way to make progress is freezing one of them and
    > let the other run unimpeded for a few seconds.

    Questionable. The shared set of pages in most systems is a lot of the
    application. Also the 'less regularly used' algorithm behaves far more
    stably with heavy loads. I can see a case for trying to pick more on
    processes that have run a lot but the whole VM/scheduling/IO interaction
    is an incredibly complex and subtle beast. Repeating the formulae of the
    early 1980's isnt always progress

    No. First I am not talking about swapping a whole process like BSD
    does. Just freezing a process (of course the living one will steal a
    big chunk of memory from it).

    Second. You have two programs using big arrays or chained lists.
    Each one needs 6 Megs of memory for being able to run for 5 ms without
    faulting. A page fault will take 20 ms. You only have 8 megs of RAM.
    I had a situation like this, I used CTRL-Z on one of the processes.

    Third: In its advertisements about Free BSD, Infomagic claims
    (implictly) than Free BSD can handle heavy loads far better than
    Linux. BSD swaps. I would really like Linux erasing that stupid
    superiority smile of BSDers.

    Respective to proprietary systems we can claim than Linux and a lot of
    RAM is cheaper and a faster than a proprietary OS and less RAM. That
    is not valid when comparing to BSD.


    Jean Francois Martinez

     \ /
      Last update: 2005-03-22 13:38    [W:0.018 / U:37.712 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site