The Flex Computer System was developed by Michael Foster and Ian Currie of Royal Signals and Radar Establishment (RSRE) [1] in Malvern, England, during the late 1970s and 1980s. It used a tagged storage scheme to implement a capability architecture, and was designed for the safe and efficient implementation of strongly typed procedures.
The hardware was custom and microprogrammable, with an operating system, (modular) compiler, editor, garbage collector and filing system all written in ALGOL 68RS.
There were (at least) two incarnations of Flex, implemented using hardware with writable microcode. The first was supplied by Logica to an RSRE design, [2] and the second used an ICL PERQ. [3] [4] The microcode alone was responsible for storage allocation, deallocation and garbage collection. This immediately precluded a whole class of errors arising from the misuse (deliberate or accidental) of pointers.
A notable feature of Flex was the tagged, write-once filestore. This allowed arbitrary code and data structures to be written and retrieved transparently, without recourse to external encodings. Data could thus be passed safely from program to program.
In a similar way, remote capabilities allowed data and procedures on other machines to be accessed over a network connection, again without the application program being involved in external encodings of data, parameters or result values.
The whole scheme allowed abstract data types to be safely implemented, as data items and the procedures permitted to access them could be bound together, and the resulting capability passed freely around. The capability would grant access to the procedures, but could not be used in any way to obtain access to the data.
Another notable feature of Flex was the notion of shaky pointers, more recently often called weak references, which points to blocks of memory that could be freed at the next garbage collection. This is used for example for cached disc blocks or a list of spare procedure work-spaces. [5]
COMFLEX, a packet switching network capable of transmitting data at magnetic-disc speed, was developed alongside Flex. It made feasible the use of remote file-stores, remote capabilities, and remote procedure calls. [6]
CORAL, short for Computer On-line Real-time Applications Language is a programming language originally developed in 1964 at the Royal Radar Establishment (RRE), Malvern, Worcestershire, in the United Kingdom. The R was originally for "radar", not "real-time". It was influenced primarily by JOVIAL, and thus ALGOL, but is not a subset of either.
A complex instruction set computer is a computer architecture in which single instructions can execute several low-level operations or are capable of multi-step operations or addressing modes within single instructions. The term was retroactively coined in contrast to reduced instruction set computer (RISC) and has therefore become something of an umbrella term for everything that is not RISC, where the typical differentiating characteristic is that most RISC designs use uniform instruction length for almost all instructions, and employ strictly separate load and store instructions.
In processor design, microcode serves as an intermediary layer situated between the central processing unit (CPU) hardware and the programmer-visible instruction set architecture of a computer, also known as its machine code. It consists of a set of hardware-level instructions that implement the higher-level machine code instructions or control internal finite-state machine sequencing in many digital processing components. While microcode is utilized in general-purpose CPUs in contemporary desktops, it also functions as a fallback path for scenarios that the faster hardwired control unit is unable to manage.
In computer science, a high-level programming language is a programming language with strong abstraction from the details of the computer. In contrast to low-level programming languages, it may use natural language elements, be easier to use, or may automate significant areas of computing systems, making the process of developing a program simpler and more understandable than when using a lower-level language. The amount of abstraction provided defines how "high-level" a programming language is.
The Royal Radar Establishment was a research centre in Malvern, Worcestershire in the United Kingdom. It was formed in 1953 as the Radar Research Establishment by the merger of the Air Ministry's Telecommunications Research Establishment (TRE) and the British Army's Radar Research and Development Establishment (RRDE). It was given its new name after a visit by Queen Elizabeth II in 1957. Both names were abbreviated to RRE. In 1976 the Signals Research and Development Establishment (SRDE), involved in communications research, joined the RRE to form the Royal Signals and Radar Establishment (RSRE).
The Burroughs Large Systems Group produced a family of large 48-bit mainframes using stack machine instruction sets with dense syllables. The first machine in the family was the B5000 in 1961, which was optimized for compiling ALGOL 60 programs extremely well, using single-pass compilers. The B5000 evolved into the B5500 and the B5700. Subsequent major redesigns include the B6500/B6700 line and its successors, as well as the separate B8500 line.
Ten15 is an algebraically specified abstract machine. It was developed by Foster, Currie et al. at the Royal Signals and Radar Establishment at Malvern, Worcestershire, during the 1980s. It arose from earlier work on the Flex machine, which was a capability computer implemented via microcode. Ten15 was intended to offer an intermediate language common to all implementations of the Flex architecture for portability purposes. It had the side effect of making the benefits of that work available on modern processors lacking a microcode facility.
The Royal Signals and Radar Establishment (RSRE) was a scientific research establishment within the Ministry of Defence (MoD) of the United Kingdom. It was located primarily at Malvern in Worcestershire, England. The RSRE motto was Ubique Sentio.
The iAPX 432 is a discontinued computer architecture introduced in 1981. It was Intel's first 32-bit processor design. The main processor of the architecture, the general data processor, is implemented as a set of two separate integrated circuits, due to technical limitations at the time. Although some early 8086, 80186 and 80286-based systems and manuals also used the iAPX prefix for marketing reasons, the iAPX 432 and the 8086 processor lines are completely separate designs with completely different instruction sets.
ALGOL 68 is an imperative programming language that was conceived as a successor to the ALGOL 60 programming language, designed with the goal of a much wider scope of application and more rigorously defined syntax and semantics.
The PERQ, also referred to as the Three Rivers PERQ or ICL PERQ, is a pioneering workstation computer produced in the late 1970s through the early 1980s. It is the first commercially-produced personal workstation with a graphical user interface (GUI). The design of the PERQ was heavily influenced by the original workstation computer, the Xerox Alto, which was never commercially produced. The workstation was conceived by six former Carnegie Mellon University alumni and employees: Brian S. Rosen, James R. Teter, William H. Broadley, J. Stanley Kriz, Raj Reddy and Paul G. Newbury, who formed the startup Three Rivers Computer Corporation (3RCC) in 1974.
The Cambridge CAP computer was the first successful experimental computer that demonstrated the use of security capabilities, both in hardware and software. It was developed at the University of Cambridge Computer Laboratory in the 1970s. Unlike most research machines of the time, it was also a useful service machine.
ALGOL 68C is an imperative computer programming language, a dialect of ALGOL 68, that was developed by Stephen R. Bourne and Michael Guy to program the Cambridge Algebra System (CAMAL). The initial compiler was written in the Princeton Syntax Compiler that was implemented by J. H. Mathewman at Cambridge.
ALGOL 68-R was the first implementation of the Algorithmic Language ALGOL 68.
In computer science, capability-based addressing is a scheme used by some computers to control access to memory as an efficient implementation of capability-based security. Under a capability-based addressing scheme, pointers are replaced by protected objects which specify both a location in memory, along with access rights which define the set of operations which can be carried out on the memory location. Capabilities can only be created or modified through the use of privileged instructions which may be executed only by either the kernel or some other privileged process authorised to do so. Thus, a kernel can limit application code and other subsystems access to the minimum necessary portions of memory, without the need to use separate address spaces and therefore require a context switch when an access occurs.
Royal Air Force Defford, or more simply RAF Defford, is a former Royal Air Force station located 1.1 miles (1.8 km) northwest of Defford, Worcestershire, England.
ALGOL 68RS is the second ALGOL 68 compiler written by I. F. Currie and J. D. Morrison, at the Royal Signals and Radar Establishment (RSRE). Unlike the earlier ALGOL 68-R, it was designed to be portable, and implemented the language of the Revised Report.
ELLA is a hardware description language and support toolset, developed in the United Kingdom by the Royal Signals and Radar Establishment (RSRE) during the 1980s and 1990s, which also developed the compiler for the programming language, ALGOL 68RS, used to write ELLA.
VIPER is a 32-bit microprocessor design created by Royal Signals and Radar Establishment (RSRE) in the 1980s, intended to be used in safety-critical systems such as avionics. It was the first commercial microprocessor design to be formally proven correct, although there was some controversy surrounding this claim and the definition of proof.
Susan Bond, was a scientific officer and computer programmer for the Mathematics Division of the Royal Radar Establishment (RRE) in the United Kingdom. She worked extensively on the programming language ALGOL 68 and the Royal Radar Establishment Automatic Computer (RREAC), an early solid-state electronics, ICL 1907F computer.
{{cite report}}
: CS1 maint: multiple names: authors list (link){{cite report}}
: CS1 maint: multiple names: authors list (link)[ dead link ]{{cite report}}
: CS1 maint: multiple names: authors list (link)[ dead link ]