Open Junta

I'm thinking of adding some sort of junta mechanism to federated wiki in the style of the os replacement mechanism on the xerox alto.

Federated wiki gains origin privilege at boot but could easily overlay new or experimental functionality from some other cryptographically reliable source through a junta guided by query parameters or drag and drop.

The advantage I see for this is the separation of responsibility between federated platform developers and platform as a service providers. The challenge/opportunity is to construct a reliable web of trust so as to prevent or recover from abuse.

Lampson and Sproull describe the Alto's Junta procedure in section 5.2 of their 1979 paper, An Open Operating System for a Single-User Machine. page

5.2 Junta

The packages that form the operating system are organized to support its openness. A program that prefers not to use the standard procedures provided by the system, or that needs to use the memory space occupied by them, may request that some or all system procedures be deleted from memory. The procedure that removes procedures is called Junta because it forcibly takes over the machine. When a program terminates, a CounterJunta procedure is called to restore the standard procedures from the InLoad/OutLoad context for the operating system.

The system is organized into several levels of services, so that a program may select the procedures it wishes to retain. Procedures are arranged so that the lowest level, which contains the most commonly used services, is at the very top of memory. Less ubiquitous services are in levels with higher numbers, located lower in memory. The highest level number to be retained is passed as an argument to Junta, which removes all higher-numbered levels and frees the storage they occupy. The CounterJunta procedure restores all levels that were removed, and reinitializes any data structures they contain.


The open character of the system has also been successful, and has fostered a large number of different programming environments that work together quite harmoniously. The Junta has been used frequently to remove standard handlers for human input/output that simulate a teletype terminal, so that experimental programs can control interaction very carefully, or in novel ways.