Re: BASIC OS for the PC

From: Marko Mäkelä <>
Date: Wed, 21 Dec 2016 22:34:58 +0200
Message-ID: <20161221203458.bqr4zzwix2ui7rwy@hp>
On Wed, Dec 21, 2016 at 07:41:32PM +0100, Michał Pleban wrote:
>What happens, however, is that the variable can change its length so it 
>may leave some space after it (if it shrinks) or be moved away to a 
>different location in memory (if it grows) again leaving a chunk of 
>free space. This is a natural process and again has nothing to do with 
>garbage collection. The process then needs to be run which compacts the 
>variables so that these small unused chunks are joined together to form 
>one large chunk. It involves moving the variables to new memory 
>locations but it does not free any "unused" space - the space is free 
>already, it is just moved around in memory.

I would say that the correct term for this is defragmentation, or 
removing fragmentation.

Whether we should call it internal or external fragmentation is unclear 
to me, because the allocator is so tightly coupled with the application 
(the rest of the BASIC interpreter).

But, I remember it being called "garbage collection" back in the day. I 
learned about (true) garbage collection in other languages much later.


       Message was sent through the cbm-hackers mailing list
Received on 2016-12-21 21:00:07

Archive generated by hypermail 2.2.0.