Worldwide Unique Virtual Addresses

Figure 7 illustrates the structure of a SPEEDOS 256 Bit Virtual Address.

A SPEEDOS Full Virtual Address

Each computer node in the worldwide SPEEDOS network has a unique identification number, which takes up the top 64 bits of a SPEEDOS full virtual address. This field consists of an 8 bit manufacturer number (assigned by a central SPEEDOS organisation) followed by a 56 bit node number created by the manufacturer.

This is followed by a unique disc number within node for each disc initialised by the kernel software at that node. This includes a 4 bit partition number on disc.

A container in SPEEDOS is a discrete address space in the persistent distributed virtual memory. Its 64 bit field in a virtual address has 3 subfields. The first two of these each take up 8 bits and contain information about the contents of the container; the remaining 48 bits indicate a container number in the disc.

The address in container field includes a 29 bit page number in the container and a 13 bit byte offset, plus some information relevant to the address translation mechanism.

This virtual address structure can be used not only to uniquely define a virtual address as such, but the first 192 bits (full container identifiers) can also be used to uniquely identify users and their objects (e.g. files and processes). The unique number of a SPEEDOS user is also that of his first container. This can be used by the kernel for identification and is stored in all the modules, processes and threads which he creates. Such unique identifiers are particularly important for security and protection purposes. They are never re-used, even when a user or object is deleted.

More detailed information about the fields and their purposes can be found in Making Computers Secure, volume 2, which can be downloaded below.