ACM Home Page
Please provide us with feedback. Feedback
List processing in real time on a serial computer
Full text PdfPdf (1.55 MB)
Source
Communications of the ACM archive
Volume 21 ,  Issue 4  (April 1978) table of contents
Pages: 280 - 294  
Year of Publication: 1978
ISSN:0001-0782
Author
Henry G. Baker, Jr.  Massachusetts Institute of Technology, Cambridge
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 10,   Downloads (12 Months): 109,   Citation Count: 185
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/359460.359470
What is a DOI?

ABSTRACT

A real-time list processing system is one in which the time required by the elementary list operations (e.g. CONS, CAR, CDR, RPLACA, RPLACD, EQ, and ATOM in LISP) is bounded by a (small) constant. Classical implementations of list processing systems lack this property because allocating a list cell from the heap may cause a garbage collection, which process requires time proportional to the heap size to finish. A real-time list processing system is presented which continuously reclaims garbage, including directed cycles, while linearizing and compacting the accessible cells into contiguous locations to avoid fragmenting the free storage pool. The program is small and requires no time-sharing interrupts, making it suitable for microcode. Finally, the system requires the same average time, and not more than twice the space, of a classical implementation, and those space requirements can be reduced to approximately classical proportions by compact list representation. Arrays of different sizes, a program stack, and hash linking are simple extensions to our system, and reference counting is found to be inferior for many applications.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Arnborg, S. Storage administration in a virtual memory SIMULA system. BIT 12 (1972), 125-141.
 
2
Arnborg, S. Optimal memory management in a system with garbage collection. BIT 14 (1974), 375-381.
 
3
Barbacci, M. A LISP Processor for C.ai. Memo CMU-CS-71-103, Comptr. Sci. Dept., Carnegie-Mellon. Pittsburgh, Pa., 1971.
 
4
Bennett, C.H. Logical reversibility of computation. IBM J. Res. Develop. 17 (1973), 525.
 
5
 
6
Bishop, P.B. Garbage collection in a very large address space. Working Paper l 11, M.I.T.A.I. Lab., M.I.T., Sept. 1975.
 
7
Bishop, P.B. Computer systems with a very large address space and garbage collection. Ph.D. Th., TR-178, MIT Lab. for Compter Sci., Cambridge, Mass., May 1977. Forthcoming.
8
9
 
10
Campbell, J.A. Optimal use of storage in a simple model of garbage collection. Inform. Processing Letters 3, No. 2 (Nov., 1974), 37-38.
11
12
13
14
15
 
16
Dijkstra, E.W., Lamport, L., Martin, A.J., Scholten, C. S., Steffens, E.F.M. On-the-fly garbage collection: An exercise in cooperation. E.W. Dijkstra note EWD496, June 1975.
 
17
Dijkstra, E.W. After many a sobering experience. E.W. Dijkstra note EWD500.
18
 
19
Greenblatt, R. LISP Machine Progress Report memo 444, A.I. Lab., M.I.T., Cambridge, Mass., Aug. 1977.
 
20
Greenblatt, R. Private communication, Feb. ! 977.
 
21
Hoare, C.A.R. Optimization of store size for garbage collection. Inform. Processing Letters 2 (1974), 165-166.
 
22
 
23
Lamport, L. Garbage collection with multiple processes: An exercise in parallelism. CA-7602-25 ! 1, Mass. Computer Associates, Wakefield, Mass., Feb. 1976.
 
24
Lamport, L. On-the-fly garbage collection: Once more with rigor. CA-7508-1611, Mass. Computer Associates, Wakefield, Mass., Aug. 1975.
 
25
 
26
 
27
Moon, D.A. MACLISP Reference Manual. Project MAC, M.I.T., Cambridge, Mass., December 1975.
 
28
Muller, K.G. On the feasibility of concurrent garbage collection. Ph.D. Th., Tech. Hogeschool Delft, The Netherlands, March 1976 (in English).
 
29
30
 
31
Steele, G.L. Jr. Private communication, March 1977.
 
32
Teitelman, W., et al. INTERLISP Reference Manual. Xerox Palo Alto Res. Ctr., Palo Alto, Calif., 1974.
33
34

CITED BY  185

Collaborative Colleagues:
Henry G. Baker, Jr.: colleagues