The Node

The node in Keykos is the primordial means of storing keys. Keykos segregates data from keys when they reside in memory. At the kernel abstraction level nodes hold keys and pages hold data. In the systems built so far a page holds 4096 bytes and a node holds 16 keys. Of course user mode programs access data in pages with normal instructions whereas keys in nodes are manipulated by user mode programs only via kernel mediation.

We speak of a node having 16 slots where a slot is a mutable cell which at one time holds just one key. One type of key is the number key which, in effect, merely remembers an 88 bit integer. DK(n) denotes the number key n, The slots of a new node from a space bank all hold DK(0).

Aside from merely holding keys the kernel recognizes several node configurations for special purposes:

For each of these kernel constructs there are two ranks of authority thereto: The service key to a meter allows specifying how much resource may be consumed and the use key thereto allows consuming that resource.