S100 Computers

Home S-100 Boards History New Boards Software Boards For Sale
Forum Other Web Sites News Index    
Cromemco XMU Board
The Cromemco XMU board worked with the XXU board, provided demand-paging memory management, and many advanced features, such as scatter loading, that increase processing speed and optimizes memory utilization. Context switching was done in a single instruction time for fast response when switching from user to user, or task to task. The result is that multiple users can be added to the system with minimum degradation of system performance.


The Cromemco XMM Memory Management board provided S-100 bus systems with an efficient, highly flexible means of sharing up to 16 megabytes of memory among several programs. In conjunction with Cromemco's XPU dual processor board and UNIX System V Operating System, the XMM allocated memory in 4K-byte pages for up to 16 concurrent processes. Page references and modifications were logged so that, if memory must be released for use by another process, the operating system can either erase the least-used page (if it has not been modified) or copy it out to a disk.

The XMM translated (or maped) each logical address generated by a program into a physical address chosen by the operating system. This logical-to-physical address translation, performed by a high-speed table lookup, effectively isolated the ongoing processes from the hardware and from each other. Each program appeared to have the entire system to itself, and software errors were unlikely to spread from one program to another.

Each page or segment (128 pages) of memory could be shared by several users, with varying degrees of access, or held exclusively by the supervisor or a single user. Code and data could be separated in memory to prevent faulty instructions, such as attempts to execute data. Sensitive data could be restricted to read-only access, and special programs, such as compilers, could be made accessible for execution yet remain unexaminable to all but the supervisor.

In addition to page usage, the XMM kept track of where each page resided, and interrupted the processor if a requested page was not in main memory (page fault). These features support the development of virtual memory software, which allowed a program to run with only part of its code in memory, while the remaining pages of code were swapped to and from the disk as needed.

Clearly a precursor to memory management seen in likes of the 80468 and later Intel and Motorola chips.

There was also a similar board called the XMM board that worked with a board called the XPU board.  I dont currently have the manual for the above XMU board but the XMM board was quite similar.

The technical reference manual for the XMM board can be obtained here.
The installation manual for the XXM board can be obtained here.


Other Cromemco S-100 Boards
ZPU  SBC   4KRAM  16K RAM  64KZ RAM  64KZ-II RAM  256KRAM  8KBytesaver  Bytesaver-II  
16KPROM  32K Bytesaver  4FDC   16FDC  64FDC  WDI  WDI-II   STDC   DPU
4PIO   8PIO   TU-ART  D+7A I/O   Dazzler  PRI   GPIB Board   XMU  XXU  Other Boards


This page was last modified on 10/25/2013