Re: BASIC OS for the PC

From: Marko Mäkelä <msmakela_at_gmail.com>
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.

https://en.wikipedia.org/wiki/Fragmentation_(computing)

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.

	Marko

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

Archive generated by hypermail 2.2.0.