- Aleph kernel
Aleph was an
operating system kernel developed at theUniversity of Rochester as part of their RIG project in 1975. Aleph usedinter-process communication s to move data between programs and the kernel, so applications could transparently access resources on any machine on the local area network (which at the time was a 3-Mbit/s experimental XeroxEthernet ). The project eventually petered out after several years due to rapid changes in the computer hardware market, but the ideas led to the creation of Accent atCarnegie Mellon University , leading in turn to Mach.Applications written for the RIG system communicated via "ports". Ports were essentially message queues that were maintained by the Aleph kernel, identified by a "machine" unique (as opposed to globally unique) ID consisting of a process id, port id pair. Processes were automatically assigned a process number, or "pid", on startup, and could then ask the kernel to open ports. Processes could open several ports and then "read" them, automatically blocking and allowing other programs to run until data arrived. Processes could also "shadow" another, receiving a copy of every message sent to the one it was shadowing. Similarly, programs could "interpose" on another, receiving messages and essentially cutting the original message out of the conversation.
RIG was implemented on a number of
Data General Eclipse minicomputer s. This presented a major performance problem because the system could copy data only 2kB at a time. Another problem, realized only in retrospect, was that the use of global ID's allowed malicious software to "guess" at ports and thereby gain access to resources they should not have had.References
Wikimedia Foundation. 2010.