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 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.