memory allocation (djg4)
Sat, 13 Mar 1993 13:46:12 EST
On Sat, 13 Mar 93 11:29:03 MET, "Francois-Rene Rideau"
> >> I firmly believe that at the kernel level, a malloc() style memory
> >> allocation interface should not exist. Using malloc() does not allow
> >> any chance for the application to control where the memory blocks are
> >> placed.
> There should be different memory managers for all devices/apps/user
> programs to match their need. For example very high-level programs
> often need a garbage collecting feature, whereas low-level programs
> would be only slowed by it. If you don't implement a GC memory manager,
> each app will have to do its own, and inter-app object communication
> will be made impossible or very, very difficult and slow. If you always
> require GC compliancy, that will slow everything, and affect the system
> To me, there should not be only ONE memory manager. Memory management is
> not a Kernel feature; there are higher or lower level devices to manage
> memory; but they have a standard interface, so that you don't need know
> what's its memory manager to access an object.
> We can even build generic memory managers, to transform a low-level
> one into a higher-level one by adding each time some features.
> So we start with physical memory, add virtual memory, add word aligned
> blocks, add GC, etc. Each time, you can add it in part of the previous
> manager; you can add it several times in different parts of the manager;
I couldn't agree more. My argument is that the lowest level memory
manager should not be a malloc() style interface. The malloc() style
interface is the second or third level. Dennis in his initial design
had proposed a malloc style interface in the kernel, and I felt a need
to oppose this.
I also oppose the use of tab characters in anything seen by more than
one system/user. Too many PC based software packages change the tab
stops. Oh for the days of the VT100 when nobody changed tab stops.
David Garfield/2250 Clarendon Blvd/Arlington, VA 22201 (703)522-9416
Email: firstname.lastname@example.org or email@example.com