Computer Technology Limited

Last updated

Computer Technology Limited
Industry Computer hardware
Founded1965
Founder Iann Barron
Headquarters Hemel Hempstead,
Key people
Iann Barron (1965-1971),
Tom Margerison (Chairman 1971-1975),
Tony Davies (Managing Director 1981-1989)
Products minicomputers

Computer Technology Limited (CTL) was a British computer company founded in 1965. In 1984 it merged into its holding company and was called Information Technology Limited (ITL).

Contents

Founder Iann Barron had worked for Elliott Automation but left to form CTL when he couldn't persuade Elliott to incorporate his ideas in their next generation of computers. CTL was financed by the American Research and Development Corporation and Pergamon Press. [1]

The first CTL computer, the Modular One, appeared for sale in 1968. [2]

Modular One

The Modular One was a 16-bit computer built with Emitter Coupled Logic (ECL) and was competitive with other first generation minicomputers.

Features

A key feature, from which it derived its name, was that it was composed of separate processor, memory and peripheral modules sharing a common interface and physical form factor, so allowing them to be put together in any combination, housed one or two high in modular racking. Standard modules were roughly 50 cm wide and deep, 70 cm tall, and complete with power supply, typically weighed in excess of 25 kg. Modules were interconnected using a single type of interface, comprising two identical cards to be plugged into two modules to be connected, these cards themselves linked by a flat ribbon cable either one or two metres long. Thus, memory was just another peripheral (such as a printer) but was both input and output.

Every interaction over these interfaces comprised a 3-way handshake, which in the case of a processor accessing a memory module, consisted of send address, receive data, and send new data, a scheme well suited to the destructive read followed by rewrite required by magnetic-core memory of the time. These three phases were mediated by voltage edges rather than pulses, as this was thought to be faster. Furthermore, the input and output impedances of ECL were comparable to the characteristic impedance of ribbon cable. This, together with the small voltage swings between the "0" and "1" states made for low noise, reflection-free communication.

Processors naturally had a number of interface slots bussed together, allowing connection to memory and peripheral modules as required. Memory modules had several, allowing them to be accessed by more than one processor as well as by disc controllers for DMA. Disc controllers could be connected to two processors as well as memory modules. All modules had a "1.x" type designation, for example, the original processor module was 1.11, memory modules were 1.2x, character peripherals were 1.3x, discs were 1.4x and magnetic tape devices were 1.5x. The standard interface was designated 1.01.

The various building blocks could be assembled and configured to produce a fault-tolerant computer system. [3]

Distinctive features of the processor were memory-mapped I/O and an early version of segmented memory (similar to the later Intel 8086 but having both base and limit). The processor had 3 segment registers referred to as X, Y and Z. The X segment was read/execute only and used to map code segments (corresponding to CS in the x86 architecture). It was not possible to execute code in the Y and Z segments, which were used for data (roughly corresponding to DS and ES in x86). There were 8 addressing modes allowing access to data mapped by the segment registers in various ways. [4]

The memory segmentation, together with two execution states (Normal State and non-interruptible privileged Special State) made possible the implementation of a self-protecting operating system kernel (known as the Executive, or Exec). Such ideas were popular in British computer academia at the time. Furthermore, the power system was set up as a peripheral with interrupt capabilities that gave the machine the ability to power down gracefully in an emergency.

Sales history

The Modular One was comparatively expensive. It was somewhat exotic in that its modular design resulted in almost every system delivered being somewhat different, which created a high maintenance burden.

Many universities were equipped with Modular One systems, in part due to the government of the time having a 'buy British' policy. [5] Acting as a front-end processor for the ICL 1900 mainframe, driving multiple online terminals or as a remote batch job entry station, was a major market for the Modular One. [1]

It never sold widely outside of the UK, and even in the UK it was surpassed in sales by Digital Equipment Corporation (DEC) and Data General before the end of the 1970s. [1]

Over the mid 1970s to mid 1980s the systems were cost reduced with TTL bitslice technology and 8-bit microprocessor communications controllers, retreating from the radical modular design, but it never gained a significant market share.

Legacy

Very few Modular One computers now remain, possibly only the example being that restored by Redhawk Systems Ltd. [6]

Operating system

The operating system kernel was referred to as the Exec. Several simple ones (E1, E2 and E3) were developed in the early years of the company. E4, first in-house release around 1973, written entirely in assembler, was a multitasking kernel using Dijkstra semaphores to protect internal data structures from conflicts. It was based on an early version of object-oriented principles, though lacking most of what are now considered essential features of the paradigm, such as inheritance.

Objects included Activities (now more commonly known as tasks or processes), Segments (of memory), Files, Semaphores and Clocks. Another object type, the Sphere, was a run-time protection domain within which all other object types (including other Spheres) existed. Objects could be created in arbitrary quantities, and were each referenced through a Run Time Name, or RTN. Since an object could be referenced by several RTNs belonging to different spheres, they could easily be shared between programs, and were deleted only when the object's reference count of RTNs fell to zero. Linked lists were used very extensively within E4 to manage data structures, in fact the RTN list was about the only linear list there was. (The system generation process included a phase prosaically called "knitting" comprising a combination of macro expansion and procedural elements, by which the initial data structures were dynamically "knitted" together to create an input file for the assembler.)

The ease with which multiple processor, store and peripheral modules could be built into a system, plus the need to extend the upper capability limits, prompted the development of a dual processor variant of E4. This was built entirely from standard modules except for a small synchronisation board which prevented both processors operating simultaneously in special state, and a very minor modification to one of the processors' interface to store zero, allowing each processor to address a small dedicated memory area for processor-specific variables such as the current activity. However, the results were somewhat disappointing as E4 naturally spent a significant proportion of its time in special state even though efforts had always made to limit special state routines to 100uS at a time. Even running processor-bound user programs, the performance achieved was only of the order of 150% of that of a single processor, and no dual processor E4 systems were ever sold.

There was some similarity to Unix in the use of (mainly) device-independent serial byte oriented streams in the file system and interprocess communication, in contrast to the record-oriented file systems then dominant in commercial data processing. E4 also supported real-time priorities and virtual memory at the Segment level.

E4 had a primitive command line interface but a multi-access operating system known as Modus was built on top of it for much greater flexibility and ease of use. This consisted of a "Nucleus" which looked after a collection of "Engines". An Engine was typically associated with a peripheral device and processed work from a queue, for example taking print jobs from a print queue and printing them. A special case was the Read Engine, which was the command processor. This was either associated with a terminal device (in which case it had a terminal device but no queue), or was a batch processor (in which case it had a queue but no device).

The filing system, SDFS, was not part of the kernel but was a separate program. A multi-key indexed file system MKFS was also developed, and together with a transaction processing system and a report generator, formed the basis of many sales into commercial applications.

Modus and many of the applications were written in the high level language Coral 66. [7] Compilers for COBOL and FORTRAN IV were also available for the Modular One. [8]

Later history

Founder Iann Barron left in 1971, following the collapse of a major customer. He went on to form Inmos and develop the transputer. He was replaced as Chairman by Tom Margerison, from London Weekend Television. [1]

During the 1970s CTL operated modestly successfully in a number of niche markets, while larger American competitors, such as Digital Equipment Corporation (DEC) with their PDP range, increased market share. In 1980 two sibling companies Office Technology Limited (OTL) and Network Technology Limited (NTL), and a holding company Information Technology Limited (ITL) were created. [1]

In 1981 entrepreneur Tony Davies became Managing Director. Under Davies CTL began buying in hardware, to be re-badged as CTL systems, recognising CTL could not afford to develop hardware at all levels. The first was a Convergent Technologies 8086 system which created a price competitive small system for CTL. In 1984 all the subsidiaries were merged into the holding company Information Technology Limited (ITL), replacing the CTL name. Nominally this was an efficiency measure, but it also positioned the company better for a possible public offering on the stock markets. [1]

During the mid 1980s, the company decided that the future lay in open systems and CTL attempted to make the transition to Unix with re-badged systems from Motorola and Sequoia Systems. However, sales of CTL's proprietary systems fell off before the new systems could be ramped up to replace them.[ citation needed ] The company was taken over by ACT in 1989, primarily for its customers and extensive support network, which effectively ended CTL's era as a computer manufacturer. [1]

Headquarters

In 1969, Computer Technology hired then up-and-coming architect Norman Foster to design their new headquarters north of London, in Hemel Hempstead. Foster responded to the company's need for an open office plan, as well as a compressed building schedule, by designing an innovative inflatable structure or "air tent" that was critically lauded by the architectural press at the time of its unveiling. [9]

See also

Related Research Articles

<span class="mw-page-title-main">Computer program</span> Instructions to be executed by a computer

A computer program is a sequence or set of instructions in a programming language for a computer to execute. It is one component of software, which also includes documentation and other intangible components.

A monolithic kernel is an operating system architecture where the entire operating system is working in kernel space. The monolithic model differs from other operating system architectures in that it alone defines a high-level virtual interface over computer hardware. A set of primitives or system calls implement all operating system services such as process management, concurrency, and memory management. Device drivers can be added to the kernel as modules.

<span class="mw-page-title-main">Operating system</span> Software that manages computer hardware resources

An operating system (OS) is system software that manages computer hardware and software resources, and provides common services for computer programs.

OS-9 is a family of real-time, process-based, multitasking, multi-user operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It was purchased by Radisys Corp in 2001, and was purchased again in 2013 by its current owner Microware LP.

<span class="mw-page-title-main">Embedded system</span> Computer system with a dedicated function

An embedded system is a computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system. It is embedded as part of a complete device often including electrical or electronic hardware and mechanical parts. Because an embedded system typically controls physical operations of the machine that it is embedded within, it often has real-time computing constraints. Embedded systems control many devices in common use. In 2009, it was estimated that ninety-eight percent of all microprocessors manufactured were used in embedded systems.

Direct memory access (DMA) is a feature of computer systems that allows certain hardware subsystems to access main system memory independently of the central processing unit (CPU).

<span class="mw-page-title-main">Expansion card</span> Circuit board for connecting to a computer system to add functionality

In computing, an expansion card is a printed circuit board that can be inserted into an electrical connector, or expansion slot on a computer's motherboard to add functionality to a computer system. Sometimes the design of the computer's case and motherboard involves placing most of these slots onto a separate, removable card. Typically such cards are referred to as a riser card in part because they project upward from the board and allow expansion cards to be placed above and parallel to the motherboard.

The Internetworking Operating System (IOS) is a family of proprietary network operating systems used on several router and network switch models manufactured by Cisco Systems. The system is a package of routing, switching, internetworking, and telecommunications functions integrated into a multitasking operating system. Although the IOS code base includes a cooperative multitasking kernel, most IOS features have been ported to other kernels, such as Linux and QNX, for use in Cisco products.

<span class="mw-page-title-main">Network interface controller</span> Hardware component that connects a computer to a network

A network interface controller is a computer hardware component that connects a computer to a computer network.

Memory-mapped I/O (MMIO) and port-mapped I/O (PMIO) are two complementary methods of performing input/output (I/O) between the central processing unit (CPU) and peripheral devices in a computer. An alternative approach is using dedicated I/O processors, commonly known as channels on mainframe computers, which execute their own instructions.

RTLinux is a hard realtime real-time operating system (RTOS) microkernel that runs the entire Linux operating system as a fully preemptive process. The hard real-time property makes it possible to control robots, data acquisition systems, manufacturing plants, and other time-sensitive instruments and machines from RTLinux applications. The design was patented. Despite the similar name, it is not related to the Real-Time Linux project of the Linux Foundation.

In computing, an interface is a shared boundary across which two or more separate components of a computer system exchange information. The exchange can be between software, computer hardware, peripheral devices, humans, and combinations of these. Some computer hardware devices, such as a touchscreen, can both send and receive data through the interface, while others such as a mouse or microphone may only provide an interface to send data to a given system.

In computer security, mandatory access control (MAC) refers to a type of access control by which the operating system or database constrains the ability of a subject or initiator to access or generally perform some sort of operation on an object or target. In the case of operating systems, a subject is usually a process or thread; objects are constructs such as files, directories, TCP/UDP ports, shared memory segments, IO devices, etc. Subjects and objects each have a set of security attributes. Whenever a subject attempts to access an object, an authorization rule enforced by the operating system kernel examines these security attributes and decides whether the access can take place. Any operation by any subject on any object is tested against the set of authorization rules to determine if the operation is allowed. A database management system, in its access control mechanism, can also apply mandatory access control; in this case, the objects are tables, views, procedures, etc.

<span class="mw-page-title-main">Architecture of Windows NT</span> Overview of the architecture of the Microsoft Windows NT line of operating systems

The architecture of Windows NT, a line of operating systems produced and sold by Microsoft, is a layered design that consists of two main components, user mode and kernel mode. It is a preemptive, reentrant multitasking operating system, which has been designed to work with uniprocessor and symmetrical multiprocessor (SMP)-based computers. To process input/output (I/O) requests, it uses packet-driven I/O, which utilizes I/O request packets (IRPs) and asynchronous I/O. Starting with Windows XP, Microsoft began making 64-bit versions of Windows available; before this, there were only 32-bit versions of these operating systems.

<span class="mw-page-title-main">K-202</span> 16-bit minicomputer from Poland

K-202 was a 16-bit minicomputer, created by a team led by Polish scientist Jacek Karpiński between 1970–1973 in cooperation with British companies Data-Loop and M.B. Metals. The machine could perform about 1 million instructions per second, making it highly competitive with the US Data General SuperNOVA and UK CTL Modular One. Most other minicomputers of the era were significantly slower.

<span class="mw-page-title-main">Nord-10</span>

Nord-10 was a medium-sized general-purpose 16-bit minicomputer designed for multilingual time-sharing applications and for real-time multi-program systems, produced by Norsk Data. It was introduced in 1973. The later follow up model, Nord-10/S, introduced in 1975, introduced CPU cache, paging, and other miscellaneous improvements.

<span class="mw-page-title-main">ICL 2900 Series</span> UK mainframe computer systems

The ICL 2900 Series was a range of mainframe computer systems announced by the British manufacturer International Computers Limited on 9 October 1974. The company had started development under the name "New Range" immediately on its formation in 1968. The range was not designed to be compatible with any previous machines produced by the company, nor for compatibility with any competitor's machines: rather, it was conceived as a synthetic option, combining the best ideas available from a variety of sources.

<span class="mw-page-title-main">Kernel (operating system)</span> Core of a computer operating system

The kernel is a computer program at the core of a computer's operating system and generally has complete control over everything in the system. The kernel is also responsible for preventing and mitigating conflicts between different processes. It is the portion of the operating system code that is always resident in memory and facilitates interactions between hardware and software components. A full kernel controls all hardware resources via device drivers, arbitrates conflicts between processes concerning such resources, and optimizes the utilization of common resources e.g. CPU & cache usage, file systems, and network sockets. On most systems, the kernel is one of the first programs loaded on startup. It handles the rest of startup as well as memory, peripherals, and input/output (I/O) requests from software, translating them into data-processing instructions for the central processing unit.

TurboDOS is a multi user CP/M like operating system for the Z80 and 8086 CPUs developed by Software 2000 Inc.

<span class="mw-page-title-main">LIO (SCSI target)</span> Open-source version of SCSI target

In computing, Linux-IO (LIO) Target is an open-source implementation of the SCSI target that has become the standard one included in the Linux kernel. Internally, LIO does not initiate sessions, but instead provides one or more Logical Unit Numbers (LUNs), waits for SCSI commands from a SCSI initiator, and performs required input/output data transfers. LIO supports common storage fabrics, including FCoE, Fibre Channel, IEEE 1394, iSCSI, iSCSI Extensions for RDMA (iSER), SCSI RDMA Protocol (SRP) and USB. It is included in most Linux distributions; native support for LIO in QEMU/KVM, libvirt, and OpenStack makes LIO also a storage option for cloud deployments.

References

  1. 1 2 3 4 5 6 7 Hamilton, Ross (June 1997). Continuous Path: The Evolution of ProcesControl Technologies in Post-War Britain (PDF). Department of Computer Science (Thesis). University of Warwick. pp. 115–116, 120, 123, 127, 138–140. Retrieved 6 April 2019.
  2. "Compact machine launched". Computer Weekly. 2 May 1968. Retrieved 9 April 2019.
  3. Paul Walker; Barry Cook (2006). SpaceWire: Key principles brought out from 40 year history. 20th Annual AIAA/USU Conference on Small Satellites. p. 1.
  4. "Computer Technology Ltd. and the Modular One" (PDF). Version 4. February 2023. pp. 14–16.
  5. "The History of Computer Science 1970 - 1979". School of Computer Science. University of Birmingham. Archived from the original on 7 February 2007.
  6. Redhawk Systems Modular One conservation project
  7. "Lucid language may help European computers". New Scientist. 30 November 1972. p. 513. Retrieved 8 April 2019.
  8. "Survey of minicomputers". Computing. 16 August 1973. Retrieved 8 April 2019.
  9. "Office beneath the skin". Design. Council of Industrial Design, The Design Centre.