US2005125486A1PendingUtilityA1

Decentralized operating system

Assignee: MICROSOFT CORPPriority: Nov 20, 2003Filed: Nov 20, 2003Published: Jun 9, 2005
Est. expiryNov 20, 2023(expired)· nominal 20-yr term from priority
G06F 9/465G06F 9/546
44
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Several primitives form the minute essence of services, which are organizational primitives of decentralized operating systems. These primitives include a designation primitive, which comprises a port, such as the ports identifiable by the URI; a behavioral primitive, which comprises the unilateral contract; and a communication primitive, which includes a set of message types known by all services for exchanging messages in accordance with unilateral contracts.

Claims

exact text as granted — not AI-modified
1 . A computer system, comprising: 
 services for representing resources, each service including a designation primitive, a behavioral primitive that comprises a unilateral contract, and a communication primitive; and    a decentralized operating system for orchestrating the services executing on the computer system so as to control and coordinate resources.    
   
   
       2 . The computer system of  claim 1 , wherein the computer system includes a microcomputer, a personal digital assistant, a cellular phone, or a display.  
   
   
       3 . The computer system of  claim 1 , wherein the designation primitive includes a port identifiable by an identifier that includes a uniform resource identifier.  
   
   
       4 . The computer system of  claim 3 , wherein the port is endued with a behavior type as specified by a unilateral contract.  
   
   
       5 . The computer system of  claim 1 , wherein a unilateral contract of the behavioral primitive defines a protocol for exchanging messages in a particular order with a service to whom the unilateral contract belongs.  
   
   
       6 . The computer system of  claim 5 , wherein the communication primitive includes a set of message types usable in the messages exchanged among services so as to call a service to perform a certain task.  
   
   
       7 . The computer system of  claim 6 , wherein the decentralized operating system separates the control information from the data information in the messages when the messages are exchanged.  
   
   
       8 . The computer system of  claim 1 , wherein services include services.  
   
   
       9 . A networked system for networking computer systems, comprising: 
 a first decentralized operating system executing on a computer system, which includes: 
 a first distributing kernel for designating uniform resource identifiers for a first set of services and distributing messages among the first set of services, each service including a unilateral contract, the unilateral contract expressing behaviors of the service.  
   
   
   
       10 . The networked system of  claim 9 , wherein services includes device drivers for devices.  
   
   
       11 . The networked system of  claim 9 , further comprising a process kernel for communicating messages as processes among services.  
   
   
       12 . The networked system of  claim 10 , further comprising an operating system kernel for managing memory, controlling devices, maintaining time and date, and allocating system resources.  
   
   
       13 . The networked system of  claim 9 , further comprising a network coupled to the first computer system, the network is selected from a group consisting of high bandwidth, low latency systems; high bandwidth, high latency systems; low bandwidth, high latency systems; and low bandwidth, low latency systems.  
   
   
       14 . The networked system of  claim 13 , further comprising a second decentralized operating system executing on another computer system coupled to the network, which includes: a second distributing kernel for designating uniform resource identifiers for a second set of services and distributing messages among the second set of services, each service including a unilateral contract, the unilateral contract expressing behaviors of the service.  
   
   
       15 . The networked system of  claim 14 , wherein a resource being represented as a service from the second set of services is orchestrated by the first distributing operating system.  
   
   
       16 . The networked system of  claim 14 , wherein a service from the second set of services registers with the first distributing kernel to obtain a uniform resource identifier.  
   
   
       17 . The networked system of  claim 14 , wherein the first distributing kernel distributes a message to a service from a first set of service, the message being sent by a service from a second set of services.  
   
   
       18 . The networked system of  claim 14 , wherein the first decentralized operating system orchestrates a composition of a service from a first set of services and a service from a second set of services.  
   
   
       19 . A computer system, comprising: 
 a decentralized operating system that includes a distributing kernel, comprising: 
 a URI manager for managing names, each name constituting a unique designation of a service at the computer system so that the service can be discovered; and  
 a message dispatcher for forwarding messages among services, each service being identifiable by a name managed by the URI manager, each service being associated with a unilateral contract.  
   
   
   
       20 . The computer system of  claim 19 , wherein the distributing kernel further comprises a security manager for controlling authentication and authorization of rights and restrictions among services.  
   
   
       21 . The computer system of  claim 19 , wherein the distributing kernel further comprises a service loader for executing a sequence of instructions for loading components and services, the service loader being capable of dynamically loading or unloading services during the operation of the decentralized operating system.  
   
   
       22 . The computer system of  claim 19 , wherein the URI manager receives a register message from a service to obtain a unique designation and assigns the unique designation to the service, the URI manager being capable of receiving an unregister message for removing an assigned unique designation from a registry.  
   
   
       23 . The computer system of  claim 19 , wherein the message dispatcher forwards a message from a first service to a second service if the first service has a first uniform resource identifier assigned by the URI manager and the second service has a second uniform resource identifier assigned by the URI manager.  
   
   
       24 . The computer system of  claim 19 , wherein the message dispatcher includes a message validity verifier for verifying that a message sent to the message dispatcher is a message whose structure complies with the SOAP protocol.  
   
   
       25 . The computer system of  claim 19 , further comprising a network manager for distributing messages forwarded by the message dispatcher to another computer system.  
   
   
       26 . The computer system of  claim 25 , wherein the network manager comprises a serializer/deserializer, a transmission protocol processor, and a control/data plane separator.  
   
   
       27 . A method implemented on a computer system, comprising: 
 assigning a first unique name to a first service upon request, the first service including a first unilateral contract for expressing the behaviors of the first service; and    distributing a message to the first service using the unique name, the message being sent by a second service having a second unique name, the second service including a second unilateral contract for expressing the behaviors of the second service.    
   
   
       28 . The method of  claim 27 , further comprising loading a network manager and other services according to instructions written in a customizable, tag-based language.  
   
   
       29 . The method of  claim 28 , further comprising spawning a service to listen for incoming messages for the first service that has been assigned the first unique name.  
   
   
       30 . The method of  claim 29 , further comprising rejecting the message without distributing the message if a structure of the message fails to comply with a protocol for exchanging structured and type information of messages written in a customizable, tag-based language.  
   
   
       31 . The method of  claim 30 , further comprising forwarding the message to the first service without routing the message through the network manager if the first service and the second service runs on a computer system.  
   
   
       32 . The method of  claim 30 , further comprising forwarding the message to the first service by routing the message through the network manager if the first service runs on a first computer system whereas the second service runs on a second computer system.  
   
   
       33 . The method of  claim 32 , wherein the act of forwarding including transmitting data information separately from transmitting control information.  
   
   
       34 . The method of  claim 33 , wherein the act of transmitting includes transmitting data information in accordance with transmitted control information.  
   
   
       35 . A computer-readable medium having instructions thereon for implementing a method, the method comprising: 
 assigning a first unique name to a first service upon request, the first service including a first unilateral contract for expressing the behaviors of the first service; and    distributing a message to the first service using the unique name, the message being sent by a second service having a second unique name, the second service including a second unilateral contract for expressing the behaviors of the second service.    
   
   
       36 . The computer-readable medium of  claim 35 , further comprising loading a network manager and other services according to instructions written in a customizable, tag-based language.  
   
   
       37 . The computer-readable medium of  claim 36 , further comprising spawning a service to listen for incoming messages for the first service that has been assigned the first unique name.  
   
   
       38 . The computer-readable medium of  claim 37 , further comprising rejecting the message without distributing the message if a structure of the message fails to comply with a protocol for exchanging structured and type information of messages written in a customizable, tag-based language.  
   
   
       39 . The computer-readable medium of  claim 38 , further comprising forwarding the message to the first service without routing the message through the network manager if the first service and the second service runs on a computer system.  
   
   
       40 . The computer-readable medium of  claim 38 , further comprising forwarding the message to the first service by routing the message through the network manager if the first service runs on a first computer system whereas the second service runs on a second computer system.

Join the waitlist — get patent alerts

Track US2005125486A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.