next up previous
Next: Time Sharing --- Up: THE TIERRAN OPERATING Previous: THE TIERRAN OPERATING

Memory Allocation --- Cellularity

The Tierran computer operates on a block of RAM of the real computer which is set aside for the purpose. This block of RAM is referred to as the ``soup''. In most of the work described here the soup consisted of about 60,000 bytes, which can hold the same number of Tierran machine instructions. Each ``creature'' occupies some block of memory in this soup.

Cellularity is one of the fundamental properties of organic life, and can be recognized in the fossil record as far back as 3.6 billion years ([4]). The cell is the original individual, with the cell membrane defining its limits and preserving its chemical integrity. An analog to the cell membrane is needed in digital organisms in order to preserve the integrity of the informational structure from being disrupted easily by the activity of other organisms. The need for this can be seen in Artificial Life models such as cellular automata where virtual state machines pass through one another ([22,23]), or in core wars type simulations where coherent structures demolish one another when they come into contact ([10,13,31]).

Tierran creatures are considered to be cellular in the sense that they are protected by a ``semi-permeable membrane'' of memory allocation. The Tierran operating system provides memory allocation services. Each creature has exclusive write privileges within its allocated block of memory. The ``size'' of a creature is just the size of its allocated block (e.g., 80 instructions). This usually corresponds to the size of the genome. This ``membrane'' is described as ``semi-permeable'' because while write privileges are protected, read and execute privileges are not. A creature may examine the code of another creature, and even execute it, but it can not write over it. Each creature may have exclusive write privileges in at most two blocks of memory: the one that it is born with which is referred to as the ``mother cell'', and a second block which it may obtain through the execution of the MAL (memory allocation) instruction. The second block, referred to as the ``daughter cell'', may be used to grow or reproduce into.

When Tierran creatures ``divide'', the mother cell loses write privileges on the space of the daughter cell, but is then free to allocate another block of memory. At the moment of division, the daughter cell is given its own instruction pointer, and is free to allocate its own second block of memory.



next up previous
Next: Time Sharing --- Up: THE TIERRAN OPERATING Previous: THE TIERRAN OPERATING



Thomas S.Ray
Thu Aug 3 15:47:29 JST 1995