MAMMUT. A distributed storage management for symbolic manipulation. This booklet, written in the context of the computer algebra project MuPAD at the University of Paderborn in Germany, comprises an in-depth treatment of the problem of garbage collection in modern programming languages and computer algebra systems. If storage space is not used any more, it is – even in times of almost unlimited main memory – always a good idea to return that space to system control for re-use. While traditional (imperative) languages have built-in facilities to perform this task, modern object-oriented languages relieve the application programmer from storage management, and hence leave issues like garbage collection to the underlying operating system. Since it might be difficult for a machine to decide whether some particular storage location will not be used any more in the future, the result often is poor collection performance. The problem also occurs in parallel or distributed machines, in which data is often (unnecessarily) replicated for ease of access, reduction of collisions, and independence from network failures. The author has designed and implemented an interface for automating the task of garbage collection. After a detailed overview of techniques for garbage collection previously described in the literature, he describes MAMMUT, a C interface for allocating and deallocating storage space, and for keeping track of the relevant reference patterns that may prohibit a deallocation. This interface can be exploited in various ways depending on the application (e.g., initializing a string, rewriting a tree). Finally, the interface is specified formally, so that it can in principle be implemented in a languge other than C as well. MAMMUT is used inside the MuPAD system. The booklet is written concisely, and apparently puts more emphasis on the programming aspects than on formal underpinnings. This may be motivated in the subject, but really requires familiarity in reading C code on the reader’s side. Nevertheless, the specification part is detailed enough to enable programmers to realize a storage management component based on MAMMUT in a different language.
References in zbMATH (referenced in 1 article , 1 standard article )
Showing result 1 of 1.