The layout of storage for a YBOS array is as follows:- +---------------------------+ | System Data | +---------------------------+ | Indices for Named Banks | +---------------------------+ | | Named Bank | | +---------------------------+ | | Named Bank | | Region of named banks +---------------------------+ | | Named Bank | | +---------------------------+ | | | | Free Space | | | +---------------------------+ | | Work Bank | | +---------------------------+ | | Work Bank | | Region of work banks +---------------------------+ | | Work Bank | | +---------------------------+ | Named banks are stored in the low index part of each array, sequentially created banks having increasing indices, while work banks are stored from the high index part of the array, sequentially created banks having decreasing indices. During garbage collection operations named banks will be shuffled towards decreasing indices while work banks will be shuffled towards increasing indices so as to maximise the free space. Within each array the first words are used for system data, to which the user has limited access via function calls.next page