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