23 lines
1.1 KiB
Text
23 lines
1.1 KiB
Text
MemMgr is a fairly trivial memory management library. There
|
|
is little it does that cannot be done using routines in the
|
|
C library. (In fact, allocation and disposal is implemented
|
|
using C library routines.) The purposes of MemMgr are two-
|
|
fold.
|
|
|
|
(i) Minimize configuration burden on applications that
|
|
dynamically allocate memory. For instance, malloc() on
|
|
some systems returns a char pointer; on others it
|
|
returns a void pointer. The MemMgr library routines
|
|
encapsulate system-specific configuration differences
|
|
and exports a fixed interface which is system-indepen-
|
|
dent. Once you compile and install it, you just use it
|
|
without thinking about whether your UNIX is System V or
|
|
BSD inspired.
|
|
|
|
(ii) Provide two parallel sets of allocation routines which
|
|
either return NULL (for applications which want to
|
|
check) or panic (for applications which simply want to
|
|
die) on allocation failures. Panicking is implemented
|
|
using the ETM library, which introduces a dependency on
|
|
the ETM distribution. So be it. I use ETM for all my
|
|
programs anyway
|