BNR XMS Workstations

Dublin Core


BNR XMS Workstations


computer hardware: workstation


Historical Context
(by Z. Stachniak)

In 1971, Bell Canada and Northern Electric (renamed Northern Telecom in 1976) established Bell-Northern Research (BNR) -- a common telecommunications research and development entity. BNR played a crucial role in Northern's evolution into a leading global provider of fully digital telecommunications solutions. In 1975, Northern launched the BNR-designed SL-1 -- the first digital switching system in commercial service. Four years later, Northern introduced the DMS-100 digital switch, which seamlessly integrated switching and transmission capabilities (DMS: digital multiplex switch). The widespread adoption of the DMS-100 propelled Northern to the forefront of the global telecommunications industry.

The experience gained during the design of the DMS-100 prompted BNR to establish a Computing Technology Development Group in 1979. As described in [2], the group's objectives were:
  • creating the foundational computing components for Northern Telecom's future products;
  • developing tools essential for software development for these products;
  • exploring emerging computing technology trends and ensuring a continuous flow of relevant technologies into BNR's operations.
Initially, the Computing Technology Development Group, informally referred to as the XMS group, was comprised of Peter Cashin, who previously led the original core development team for the DMS computer systems, Neil Gammage (systems software: OS and systems), Jean Jervis (systems software: OS), Ragui Kamel (software: compilers), Bill Williams (software architecture), and Rick Workman (hardware/software integration). Shortly thereafter, Liam Casey (distributed software architecture) and Kerry Zoehner (file systems) joined the group. Over time, the XMS group expanded to include more than 100 engineers primarily based in Ottawa.

The primary task of the group involved researching and defining hardware and software architectures that could form the basis of a distributed computing network to support the development of future BNR products. The resulting architecture, named XMS (eXtended Multicomputer System), was defined as a cluster of processing nodes (such as workstations, file servers, communication servers, printing servers, etc.) interconnected by a single high-speed local area network and operated under concurrent software. As articulated in [2], "XMS creates a single, powerful system from loosely coupled microcomputers. Programs work together across nodes, making systemwide resource management transparent and distributed-system design simpler." Detailed information regarding both the hardware and software architectures of XMS can be found in [1] and [2].

The first XMS system was deployed at BNR in 1981. It was the XMS Software Development Environment (SDE) whose main purpose was to provide the computing facilities and resources essential for supporting XMS-based projects. The system comprised several XMS personal workstations, a file server, a print server, and a communications server. The majority of XMS SDE software was developed using BNR Pascal. This language, an extension of UCSD Pascal (designed at the University of California, San Diego), incorporated ADA-like tasks and concurrency features implemented in XMS. Alongside XMS system software and the BNR Pascal, the SDE environment featured a robust file system called Helix and an array of software development utility programs, including:
  • editors: text and graphics editors,
  • software development tools: compilers, assemblers, dissassemblers, linkers, etc.,
  • analysis tools: debuggers, profilers, test tools, cross referencers, etc.
  • document preparation package: support for text and graphics, spellcheckers, index generator,
  • LAN communication: messaging and bulletin board,
  • IBM communication: passthrough and file transfer,
  • project management tools: source management, problem database and project tracking.
The XMS was a proprietary platform. Although built from commercially available components, initially it could not take advantage of commercially available software, or engaging external development groups. In response, the XMS group developed a facility called Distributed Unix (or DUX), enabling the loading and execution of Unix applications within the XMS system.

The SDE offered a robust and adaptable environment for software development. It also demonstrated the effectiveness of the XMS platform when combined with suitable software. As emphasized in [1], "A major benefit of the deployment of XMS SDE systems has been the designer's ability to both develop and test systems on the same hardware."

According to data provided in [2], by 1985, approximately 2,000 workstations in 25 XMS networks were operational across 15 geographic locations spanning from California to Europe. However, despite numerous successful applications of the XMS platforms, such as the Nortel Meridian PBX family, significant factors ultimately led to the decline of XMS developments at BNR. In the February 2024 interview for the Centre for Discrete Mathematics and Theoretical Computer Science, University of Auckland, Peter Cashin summarized the root cause of the disbanding of the XMS group in the late 1980s as follows:

  The [XMS] project was technically successful... We thought we had a better solution
   than Unix, with nice multi-computer inter-process 

   But the writing was on the wall, the use of C and Unix was spreading, and the
   commercial computing industry was going to be able to supply
the needs for
   telecom. The necessity for our own hardware was gone,
and the advantages
   of our own systems software was shrinking. It was
a computer industry opportunity,
   and Nortel made the decision that it 
was not getting into the computer business.

The XMS Workstations

The XMS SDE systems utilized workstations designed at BNR by John Perry. These workstations were conceived to function as development platforms as well as the foundation for future products. Over the course of the XMS project, four distinct models were developed. Each of these models was built around a microprocessor from the Motorola 68000 family. Initially, all XMS prototypes and models 1 and 2 featured the Motorola 68000-x microprocessors. However, in later iterations, models 3 and 4 incorporated the Motorola 68010 and 68020 CPUs. For external storage, the workstations initially relied on 8" floppy drives but later also incorporating a 10M-Byte Winchester hard disk. User interaction was facilitated through a standalone video display terminal, which provided both keyboard input and display.

Model CPU ROM RAM external
0 MC6800-06 65,536 bits
4 SIP-like
memory cards
294,912 bits each,
AM9016 RAMs
two 8" floppy
disk drives
2 MC6800-08 137,072 bits
4 memory cards
1,179,648 bits each,
HM4864-2 RAMs
two 8" floppy
disk drives
Table: Technical specifications of one of the XMS prototypes ("model 0") and of model 2.

Museum Holdings

  • XMS prototype ("model 0",  second image below),
  • XMS Model 2 (first image below),
  • 8" floppy disk drive (x 2) for XMS mode 1,
  • other related items are listed in the Nortel archive.


[1] Gammage N. and Casey, L., XMS: A Rendezvous-Based Distributed System Software Architecture, IEEE Software, vol. 2, no. 3 (1985), pp. 9-19.

[2] Kamel, R.F., Software Development in a Distributed Environment: The XMS System, In: Conradi, R., Didriksen, T.M., Wanvik, D.H. (eds)
Advanced Programming Environments, Springer LNCS, vol 244 (1987), pp. 126-141.

[3] Cashin, P. and Carpenter, B.E., An Overseas Experience with Hypertext and Packet Switching, CDMTCS-577, Centre for Discrete Mathematics and Theoretical Computer Science, University of Auckland, New Zealand (February 2024).


1980s, North America, Europe




“BNR XMS Workstations,” York University Computer Museum Canada, accessed June 15, 2024,

Output Formats