GNU Emacs, memory usage, releasing

Vernon Schryver vjs at calcite.UUCP
Fri Jan 5 04:40:04 AEST 1990


In article <1025 at uc.msc.umn.edu>, fin at uh.msc.umn.edu (Craig Finseth) writes:
> ...  Each ~1K page is a separate buffer
> gap system.  This representation was very efficient for the
> environment, especially as it formed a natural basis for the paged
> virtual memory environment required to edit files larger than will fit
> in memory.
> ...
> Craig A. Finseth			fin at msc.umn.edu [CAF13]
> Minnesota Supercomputer Center, Inc.	+1 612 624 3375

An editor called "QED" by Peter Deutch (sp?) of Project Genie at Berkeley
used this technique on one of the first paged virtual memory systems, the
SDS-940 (later XDS-940).  The 940 was one of the intellectual parents of
UNIX in general, and I've been told that ed is in some important sense a
descendent of QED.

By making the buffer size match the system page size, by keeping a
modest amount of free space in each buffer, using your "gap method" within a
buffer, linking buffers together using external links, and possibly doing
manual/explicit paging to secondary storage (scratch files), searches were
fast, memory management was not hard, and so on.  It is a nice combination.

I used this technique in a commercial 4.2BSD based, WYSIWYG, multi-window,
bit-mapped, extensible, object oriented, "integrated" (with graphics,
spread sheet, and DMB) text system with perportional Adobe fonts for a
competator and predecessor of Interleaf.  I thought overall result, given
mid-80's hardware, was fast and powerful.  I must note not only that I no
longer work for that company, but it is essentially out of business.


Vernon Schryver
vjs at calcite.uucp    ...{pyramid,sgi}!calcite!vjs



More information about the Comp.unix.wizards mailing list