Vanguard (microkernel) - Object Naming

Object Naming

V had also introduced a simple distributed name service. The name service stored "well known" character names representing various objects in a distributed V system, for instance "2nd floor laser printer". Applications could ask the name server for objects by name, and would be handed back an identifier that would allow them to interact with that object. The name service was not itself a separate server, and was managed by code in the kernel itself. Contrast this with the full-blown name server under the Spring operating system, which not only knew about objects inside the system, but was also used by other servers on the system to translate their private names – file names and IP addresses for instance.

Under the V-System, objects in servers were referred to via an ad-hoc private key of some sort, say a 32-bit integer. Clients would pass these keys into the servers in order to maintain a conversation about a specific task. For instance, an application might ask the kernel for the "file system" and be handed a 32-bit key representing a program id, and then use that key to send a message to the file system asking it to open the file "my addresses", which would result in a 64-bit key being handed back. The keys in this example are proprietary to the servers, there was no common key format being used across the system.

This sort of name resolving was so common under V that the authors decided to make these keys first-class citizens under Vanguard. Instead of using whatever object ID's the servers just happened to use, under Vanguard all servers were expected to understand and return a globally unique 128-bit key, the first 64-bits containing a server identifier, the second identifying an object in that server. The server id was maintained in the kernel, allowing it to hand off the message over the network if the server being referenced was on a remote machine. To the client this was invisible. It is not clear if the id's were handed out randomly to avoid "guessing" by ill-intentioned software.

Read more about this topic:  Vanguard (microkernel)

Famous quotes containing the words object and/or naming:

    The Dada object reflected an ironic posture before the consecrated forms of art. The surrealist object differs significantly in this respect. It stands for a mysterious relationship with the outer world established by man’s sensibility in a way that involves concrete forms in projecting the artist’s inner model.
    —J.H. Matthews. “Object Lessons,” The Imagery of Surrealism, Syracuse University Press (1977)

    The night is itself sleep
    And what goes on in it, the naming of the wind,
    Our notes to each other, always repeated, always the same.
    John Ashbery (b. 1927)