Mechanism and apparatus for using messages to look up documents stored in spaces in a distributed computing environment
    1.
    发明授权
    Mechanism and apparatus for using messages to look up documents stored in spaces in a distributed computing environment 有权
    使用消息查找分布式计算环境中存储在空格中的文档的机制和设备

    公开(公告)号:US06643650B1

    公开(公告)日:2003-11-04

    申请号:US09660548

    申请日:2000-09-12

    IPC分类号: G06F1730

    摘要: A system and method for searching for documents within spaces in a distributed computing environment are provided. A client sends a lookup message to a space which stores documents. The lookup message may specify desired characteristics, such as a name or partial XML schema, of the stored documents. The documents may include XML service advertisements and XML device advertisements as well as general-purpose XML documents. A set of zero or more documents which match the lookup message are discovered. In one embodiment, the lookup message may include a desired name. If the lookup message includes both a desired name and a desired schema, the set of discovered documents may include both discovered documents having a name that matches the desired name and discovered documents having a schema that matches the desired schema. If the lookup message includes neither a desired name nor a desired schema, the set of discovered documents may include substantially all the documents stored in the space. After the matching documents are found, the space may send a lookup response message to the client. For each discovered document, the lookup response message may include a name and an advertisement. Each advertisement may include information which is usable by the client to obtain the respective discovered document or access the resource (e.g., a service) that the document advertises. The advertisements and messages may be expressed in a data representation language such as XML.

    摘要翻译: 提供了一种在分布式计算环境中搜索空格内的文档的系统和方法。 客户端向存储文档的空间发送查询消息。 查找消息可以指定所存储文档的期望特性,例如名称或部分XML模式。 文档可以包括XML服务广告和XML设备广告以及通用XML文档。 发现一组与查找消息匹配的零个或多个文档。 在一个实施例中,查找消息可以包括期望的名称。 如果查找消息包括期望的名称和期望的模式,则所发现的文档集合可以包括具有与期望名称匹配的名称的发现文档和具有与期望模式匹配的模式的发现文档。 如果查找消息既不包含期望的名称也不包含期望的模式,则所发现的文档的集合可以包括基本上存储在空间中的所有文档。 找到匹配的文档后,空间可能会向客户端发送查询响应消息。 对于每个发现的文档,查找响应消息可以包括名称和广告。 每个广告可以包括客户端可以获得相应的发现文档或访问该文档通告的资源(例如,服务)的信息。 广告和消息可以以诸如XML的数据表示语言来表达。

    Method and apparatus for proximity discovery of services
    3.
    发明授权
    Method and apparatus for proximity discovery of services 有权
    服务接近发现的方法和装置

    公开(公告)号:US07412518B1

    公开(公告)日:2008-08-12

    申请号:US09656588

    申请日:2000-09-07

    IPC分类号: G06F15/16 G06F15/173 G06F7/00

    CPC分类号: H04L67/16 G06F9/547

    摘要: A service discovery protocol may allow clients to discover services on a proximity basis. A service device that provides one or more computing services may support a proximity communication link. A client device may form a proximity communication link with the service device. The client device may directly request from the service device a document that describes an interface to access a service provided by the service device. The service device may provide the document directly to the client device over proximity communication link. The document may include a service advertisement for the service, and the service advertisement may include a schema specifying an interface to at least a portion the service. The client device may use the information from the document to access the service. The client device may support a transport connection in addition to the proximity communication link, and the client device may make the document available to other devices over the transport connection. Thus, the client device may provide a bridge from the transport connection to the proximity communication link so that other devices from a distributed computing environment may access the service.

    摘要翻译: 服务发现协议可以允许客户端在邻近的基础上发现服务。 提供一个或多个计算服务的服务设备可以支持邻近通信链路。 客户端设备可以与服务设备形成邻近通信链路。 客户端设备可以直接从服务设备请求描述访问由服务设备提供的服务的接口的文档。 服务设备可以通过邻近通信链路将文档直接提供给客户端设备。 文档可以包括用于服务的服务广告,并且服务广告可以包括指定至少部分服务的接口的模式。 客户端设备可以使用来自文档的信息来访问服务。 客户端设备除了邻近通信链路之外还可以支持传输连接,并且客户端设备可以通过传输连接使文档可用于其​​他设备。 因此,客户端设备可以提供从传输连接到邻近通信链路的网桥,使得来自分布式计算环境的其他设备可以访问该服务。

    Transformation of objects between a computer programming language and a data representation language
    4.
    发明授权
    Transformation of objects between a computer programming language and a data representation language 有权
    在计算机编程语言和数据表示语言之间转换对象

    公开(公告)号:US07426721B1

    公开(公告)日:2008-09-16

    申请号:US09663563

    申请日:2000-09-15

    IPC分类号: G06F9/45 G06F3/00 G06F9/455

    CPC分类号: H04L67/16 G06F9/547

    摘要: A virtual machine (e.g. the Java Virtual Machine (JVM)) may include extensions for compiling objects (e.g. Java Objects) into data representation language (e.g. XML) representations of the objects, and for decompiling representations of objects into objects. The virtual machine may supply an API to the compilation/decompilation extensions. The compiler/decompiler API may accept an object as input, and output a data representation language representation of the object and all its referenced objects (the object graph) in a data stream. In addition, the compiler/decompiler API may accept a data stream, which includes a representation of the object and all its referenced objects (the object graph), and output the object (and all the objects in its object graph). In one embodiment, an intermediary format may be used to represent a data representation language document and may be dynamically processed to generate a class instance from the data representation language document.

    摘要翻译: 虚拟机(例如,Java虚拟机(JVM))可以包括用于将对象(例如Java对象)编译成对象的数据表示语言(例如XML)表示的扩展,以及用于将对象的表示反编译为对象的扩展。 虚拟机可能会为编译/反编译扩展提供一个API。 编译器/反编译器API可以接受对象作为输入,并且在数据流中输出对象及其所有被引用对象(对象图)的数据表示语言表示。 此外,编译器/反编译器API可以接受数据流,其包括对象及其所有引用对象(对象图)的表示,并输出对象(以及其对象图中的所有对象)。 在一个实施例中,可以使用中间格式来表示数据表示语言文档,并且可以被动态地处理以从数据表示语言文档生成类实例。

    Bridging between a data representation language message-based distributed computing environment and other computing environments using proxy service
    6.
    发明授权
    Bridging between a data representation language message-based distributed computing environment and other computing environments using proxy service 有权
    在基于数据表示语言的消息分布式计算环境与使用代理服务的其他计算环境之间进行桥接

    公开(公告)号:US07458082B1

    公开(公告)日:2008-11-25

    申请号:US09693672

    申请日:2000-10-19

    CPC分类号: H04L67/16 G06F9/547

    摘要: Various embodiments of mechanisms for bridging data representation language messaging based distributed computing environments to foreign environments are described. A device proxy may implement a device protocol and a distributed computing environment protocol to bridge devices into the distributed computing environment. A client proxy is described that implements the distributed computing environment protocol on behalf of a foreign client such as a browser. A service proxy is described that implements the distributed computing environment protocol on behalf of a foreign service. A transport proxy is described that routes data representation language messages between two different message transports. A distributed computing environment client proxy may allow distributed computing environment clients to access Remote Method Invocation (RMI)-based environment services. An RMI-based environment client proxy may allow RMI-based environment clients to access distributed computing environment services.

    摘要翻译: 描述用于将数据表示语言消息传递的分布式计算环境桥接到外部环境的机制的各种实施例。 设备代理可以实现设备协议和分布式计算环境协议,以将设备桥接到分布式计算环境中。 描述了代表诸如浏览器的外部客户端实现分布式计算环境协议的客户端代理。 描述了代表外部服务实现分布式计算环境协议的服务代理。 描述了在两个不同消息传输之间路由数据表示语言消息的传输代理。 分布式计算环境客户端代理可以允许分布式计算环境客户端访问基于远程方法调用(RMI)的环境服务。 基于RMI的环境客户端代理可能允许基于RMI的环境客户端访问分布式计算环境服务。

    Virtual heap for a virtual machine

    公开(公告)号:US06941410B1

    公开(公告)日:2005-09-06

    申请号:US09587180

    申请日:2000-06-02

    IPC分类号: G06F9/44 G06F12/00

    CPC分类号: G06F9/4493

    摘要: A virtual heap for a process executing within a virtual machine is described. In one embodiment, the virtual persistent heap may allow the running of an application on a physical heap that is smaller than may otherwise be required. As an example, the virtual persistent heap may be an order of magnitude larger than the physical, in-memory heap. This feature is important for small consumer and appliance devices, as these devices may have a limited amount of memory. In one embodiment, the virtual heap may be maintained on non-volatile memory storage external to the device running the virtual machine, and portions of the heap for the current execution state of the process may be cached in and out of a “physical” heap resident in local memory on the device. For example, the device may connect to a server on the Internet, and the server may provide non-volatile storage space for the virtual heap. In another embodiment, the external storage for the virtual persistent heap may reside on a non-volatile storage attached to the device, for example, a Flash card or hard disk drive. In one embodiment of the virtual heap, the entire heap for a process may be made persistent. The virtual persistent heap may enable the checkpointing of the state of the computation of a virtual machine, including processes executing within the virtual machine, to a persistent storage such as a disk or flash device for future resumption of the computation from the checkpoint. The Virtual Persistent Heap also may enable the migration of the virtual machine computation states, and thus the migration of executing processes, from one machine to another. The saved state of the virtual machine heap may also provide the ability to restart the virtual machine after a system crash or shutdown to the last saved persistent state, and to restart a process that was running within the virtual machine prior to the system crash or shutdown to a checkpointed state of the process stored in the virtual persistent heap. This persistent feature is important for small consumer and appliance devices, as these appliances may be shutdown and restarted often.

    Method and apparatus for obtaining space advertisements
    8.
    发明授权
    Method and apparatus for obtaining space advertisements 有权
    获取空间广告的方法和装置

    公开(公告)号:US07370091B1

    公开(公告)日:2008-05-06

    申请号:US09698791

    申请日:2000-10-27

    IPC分类号: G06F15/177

    CPC分类号: H04L67/16 H04L69/328

    摘要: A distributed computing environment may employ spaces to provide a rendezvous mechanism that brokers services or content to clients. Services may advertise themselves in a space. Clients may find the advertisements in a space and use the information from an advertisement to access a service using a messaging mechanism. A space discovery protocol may be provided to find a space. A client may instantiate a discovery service to locate spaces. A listener agent may be configured associated with one or more spaces to listen for discovery requests. The listener agent may listen on various network interfaces, and may receive requests from clients looking for a space(s). The listener agent then responds with the service advertisement(s) or URIs for the service advertisements of the requested space(s). In one embodiment, the listener agent may be separate from the space and its functionality orthogonal to the functionality of the space.

    摘要翻译: 分布式计算环境可以使用空格来提供将客户服务或内容经纪人的会合机制。 服务可以在一个空间中做广告。 客户可以在空间中找到广告,并且使用来自广告的信息使用消息传递机制来访问服务。 可以提供空间发现协议以找到空间。 客户端可以实例化发现服务以查找空格。 可以将侦听器代理配置为与一个或多个空间相关联以监听发现请求。 侦听代理可以在各种网络接口上侦听,并且可以接收来自寻找空间的客户端的请求。 收听者代理然后响应所请求的空间的服务广告的服务广告或URI。 在一个实施例中,侦听器代理可以与空间及其与空间的功能正交的功能分开。

    Remote method invocation with secure messaging in a distributed computing environment
    9.
    发明授权
    Remote method invocation with secure messaging in a distributed computing environment 有权
    在分布式计算环境中使用安全消息传递进行远程方法调用

    公开(公告)号:US07243356B1

    公开(公告)日:2007-07-10

    申请号:US09672145

    申请日:2000-09-27

    IPC分类号: G06F9/44 G06F15/173

    摘要: A secure interface between clients and services in a distributed computing environment is described. Method gates may provide an interface to remotely invoke functions of a service. A method gate may be generated from an advertisement that may include definitions for one or more messages for remotely invoking functions of the service. A client may generate messages containing representations of method calls. The service may invoke functions that correspond to the set of messages. A method gate on the service may unmarshal the message and invoke the function. The client may receive the results of the function directly. Alternatively, the results may be stored, an advertisement to the results may be provided, and a gate may be generated to access the results. Message gates may perform the sending and receiving of the messages between the client and service. In one embodiment, functions of the service may be computer programming language (e.g. Java) methods. In one embodiment, a message including a representation of a method call may be generated when no actual method call was made. In one embodiment, a method call may be transformed into messages that may be sent to the service; the service may not know that the messages were generated from a method call. In one embodiment, a service may transform messages requesting functions into method calls; the client may not know that the service is invoking methods to perform the functions. A credential may be embedded in messages and used for message authentication on the service.

    摘要翻译: 描述了在分布式计算环境中的客户端和服务之间的安全接口。 方法门可以提供用于远程调用服务功能的接口。 可以从可以包括用于远程调用服务功能的一个或多个消息的定义的广告生成方法门。 客户端可以生成包含方法调用表示的消息。 该服务可以调用与该组消息相对应的功能。 该服务上的一个方法门可以解组消息并调用该功能。 客户端可以直接接收功能的结果。 或者,可以存储结果,可以提供对结果的广告,并且可以生成门以访问结果。 消息门可以执行客户端和服务之间的消息的发送和接收。 在一个实施例中,服务的功能可以是计算机编程语言(例如Java)方法。 在一个实施例中,当不进行实际的方法调用时,可以生成包括方法调用的表示的消息。 在一个实施例中,方法调用可以被转换成可以被发送到服务的消息; 该服务可能不知道消息是从方法调用生成的。 在一个实施例中,服务可以将请求功能的消息转换为方法调用; 客户端可能不知道该服务正在调用执行功能的方法。 证书可能嵌入到消息中,并用于服务上的消息认证。

    Mechanism and apparatus for URI-addressable repositories of service advertisements and other content in a distributed computing environment
    10.
    发明授权
    Mechanism and apparatus for URI-addressable repositories of service advertisements and other content in a distributed computing environment 有权
    在分布式计算环境中的服务广告和其他内容的URI可寻址存储库的机制和设备

    公开(公告)号:US07080078B1

    公开(公告)日:2006-07-18

    申请号:US09653614

    申请日:2000-08-31

    IPC分类号: G06F17/30

    摘要: A system and method for interaction and access to shared content among clients and services in a distributed computing environment. A client may access a space service. The space service may store one or more XML service advertisements and/or other XML content in a space, and each of the service advertisements may include information which is usable to access and execute a corresponding service. The space service may include an XML schema which specifies one or more messages usable to invoke functions of the space service. For example, the schema may specify methods for reading advertisements from the space and publishing advertisements in the space. In accessing the space service, the client may send information such as an XML message (as specified in the schema) to the space service at an Internet address. In accessing the space service, the client may search the one or more service advertisements stored in the space. The client may select one of the service advertisements from the space. The desired service may be executed on behalf of the client. Upon execution, the service may generate a set of results. In one embodiment, these results may be published in a new space which may be accessed by the client for whose benefit the service was executed.

    摘要翻译: 用于在分布式计算环境中的客户端和服务之间交互和访问共享内容的系统和方法。 客户端可以访问空间服务。 空间服务可以在空间中存储一个或多个XML服务广告和/或其他XML内容,并且每个服务广告可以包括可用于访问和执行相应服务的信息。 空间服务可以包括指定可用于调用空间服务的功能的一个或多个消息的XML模式。 例如,模式可以指定从空间读取广告并在空间中发布广告的方法。 在访问空间服务时,客户端可以将诸如XML消息(如模式中指定的)的信息发送到Internet地址处的空间服务。 在访问空间服务时,客户端可以搜索存储在该空间中的一个或多个服务广告。 客户端可以从该空间中选择一个服务广告。 期望的服务可以代表客户端执行。 一旦执行,该服务可以产生一组结果。 在一个实施例中,这些结果可以被发布在可由客户端访问的新空间中,为其服务被执行的利益。