“If I had asked my customers what they wanted, they would have said faster horses.”
—Henry Ford

These are some miscellaneous notes on Keykos. The main online information that was at Agorics is now here. The University of Pennsylvania has perhaps all of the formally published material.

Keykos is an object based capability system. It was developed at Tymshare beginning about 1975. Here were our motivations and goals.

Keykos is more like Mach than any other well know system. It is substantially more capability oriented even than Mach however. Like Mach it is built to run on bare hardware. Keykos exposes more of the hardware architecture, however, so as to deliver function available from the hardware, that even Mach denies. More Mach. EROS is a system that follows Keykos in many ways, and with interesting divergent tradeoffs. See the specs and the source. CapROS and Coyotos succeed Eros.

There are two engineering philosophies behind the design of computers and computer languages:

Of course no one takes either of these two extreme positions, but the spectrum between the two positions is well populated.

KeyKos is very much from the first school here. Although it not a language in the classic sense it does determine how programs for the machine must be written. While a computer language prescribes all details of the syntax of a program, Keykos prescribes how the program communicates with programs and entities outside its address space. Each of the several languages the we adapted for Keykos allowed programs to communicate at this system level, so as to employ all system functions available via the capability discipline. Moreover, most of the languages could be used to define new sorts of Keykos objects.

The Keykos Architecture (pdf) is a dense but rather complete description of the system. It seems to require several readings to absorb. Here is an introduction and link to the closest thing to a defining document.

Here are several attempts at Keykos introductions for computer scientists:

While Keykos was originally built for the IBM 370, the 390 Principles of Operation describe a later architecture that is compatible with the 370.

Some of my notes that bear on Keykos: