Aucbvax.4710
fa.unix-wizards
utzoo!decvax!ucbvax!unix-wizards
Tue Oct 27 16:12:25 1981

>From decvax!cwruecmp!ordy@Berkeley Tue Oct 27 15:11:36 1981
       I would like some comments on the following:

       We all know that on the PDP-11, Unix considers a process to
have text, data, and stack segments. From a logical process level, this
decomposition gives an elegant, simple structure which supports things like
shared and protected text. In addition, the kernel data structures required
to support such a scheme are very straightforward. Swapping can be done
very simply by shuffling complete segments in one IO operation.

>From a performance point of view, however, I have wondered if the
requirements of physically contiguous segments is the best. After all,
the PDP-11 memory management hardware is capable of much more than Unix
asks of it.

       Without myself going into detail on another scheme for organizing
memory, here are some points that come to my mind. By no means should they
be considered complete.

    *  How should memory be organized? 8 Kbyte "pages" (memory management
       maximum size)? Smaller sized pages (512, maybe 1024 bytes)?
       Arbitrarily sized segments?

    *  How is swap space organized?

    *  What kernel data structures are most effected?

    *  Must the entire process be core resident? Can segments be "paged"
       in as required?

    *  What happens to physio? (character interfaces) Does the kernel
       break up the transfer? What about devices like tape that require
       contiguous memory? Do we reshuffle memory to provide the area?

    *  What about other operating systems? (from DEC) How do they view
       memory?

    *  If we wanted to do this, could it be done without resorting to
       things like kernel overlays and removing data structures from kernel
       address space?

    *  How much does the system configuration (CPU, disks, etc) effect
       the performance. Might a new scheme only be better on some subset
       of systems. (in particular, solid state disks for swap)

       If a wealth of material on this subject exists please excuse my
ignorance of it. I find that both the current scheme, and a scheme which
has noncontiguous segments have merit. Has anybody implemented such
a scheme, or gathered data which would predict its performance?
In particular, I am thinking of 18 bit address machines.

                                       Greg Ordy (decvax!cwruecmp!ordy)

-----------------------------------------------------------------
gopher://quux.org/ conversion by John Goerzen <[email protected]>
of http://communication.ucsd.edu/A-News/


This Usenet Oldnews Archive
article may be copied and distributed freely, provided:

1. There is no money collected for the text(s) of the articles.

2. The following notice remains appended to each copy:

The Usenet Oldnews Archive: Compilation Copyright (C) 1981, 1996
Bruce Jones, Henry Spencer, David Wiseman.