The ICL 2900 Series was announced in October 1974 as the replacement for the ICL 1900 series. It was a stack oriented 32-bit machine with a segmented virtual memory. Each job ran in its own virtual machine containing all the code and data required to solve the application problem. It allowed the programmer to suppose that he was the only user of the computer. On the larger 2900 systems, there was some ability to emulate 1900 systems but the normal route was to migrate applications rather than binary programs.
Migration from small ICL 1900 systems to 2900 systems was important for ICL. To aid this move, the ICL 2904 and 2903 were introduced. They were able to run 1900 programs and were cut-down versions of the larger 2900 systems using a different operating system.