Re: OT: down with memory protection!

From: Kirk Strauser (kirk_at_strauser.com)
Date: 12/02/04

  • Next message: Harland Christofferson: "vpn tunneling"
    To: debian-user@lists.debian.org
    Date: Thu, 2 Dec 2004 15:38:38 -0600
    
    
    

    On Thursday 02 December 2004 09:30, Sam Watkins wrote:

    > Current mainstream OSes like Linux implement memory protection primarily
    > to prevent buggy or malicious processes trampling on each-others memory
    > and memory-mapped devices, or spying on other processes.

    No, they don't. Memory protection is generally a free side effect of
    virtual memory (not to be confused with "swap"). That is, virtual memory
    is the goal, and memory protection is a good thing that comes along with
    it.

    > All processes could run on a single address space, there would be no need
    > for context-switching, pipes could be implemented as shared buffers, and
    > processes could send messages to eachother without needing to copy
    > memory.

    Congratulations - you've just invented shared memory (see shm*(2) for
    details on the Linux syscalls that implement it).

    > I think people don't normally use more than 4GB of VM on 32-bit
    > computers, at least they won't now that 64 bit CPUs are taking off,

    Not even close to correct, actually.

    > Programs could call "yield" every now and again,

    Get a pre-OS X Macintosh and see how well you like it. Seriously, it's
    called cooperative multitasking, and it's generally not well-regarded.

    > and the compiler and programmer could be required to prove that the code
    > would not loop forever without calling yield.

    This is provably impossible. Reference "the halting problem".

    > Files could be accessed by partially mapping them to memory.

    See "man 2 mmap" for details.

    > Anyway, if anyone would comment on any of this vapourware, I'd like to
    > hear it - off the list if you think it's too off topic.

    Sorry, but your ideas have pretty much already been implemented (and in some
    cases discarded). :-/

    -- 
    Kirk Strauser
    
    

    -- 
    To UNSUBSCRIBE, email to debian-user-REQUEST@lists.debian.org 
    with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
    


  • Next message: Harland Christofferson: "vpn tunneling"

    Relevant Pages

    • Re: [Lit.] Buffer overruns
      ... > floating point support or a memory expansion option. ... had virtual memory support grafted on. ... > where the modified instruction was fetched from. ... vis-a-vis the official coporate strategic operating system TSS/360. ...
      (sci.crypt)
    • Re: scf /scannow & INFO in Event Viewer
      ... I know all about restore to ... pagefile to a low end of 2, ... The memory used by the user's ... Virtual Memory: Total paging file size for all drives is 2046MB ...
      (microsoft.public.windowsxp.general)
    • Re: virtual memory
      ... you can have virtual memory ... that software transparent swapping requires virtual memory. ... (since swapping it into physical memory is all or nothing). ...
      (comp.arch.embedded)
    • Re: Do I need a Page File?
      ... Intel designes the virtual memory. ... >> unlimited amounts of RAM, we wouldn't even NEED a paging file. ...
      (microsoft.public.windowsxp.general)
    • Re: Is There a Way to Remove a Module From Memory"
      ... "mapped" into virtual memory. ... to unload them from your virtual memory if they're no longer being accessed. ... I think "loaded on demand" is here referring to a machine code module, ... The default in Visual Basic is to compile code on demand. ...
      (microsoft.public.vb.general.discussion)