Efficient splitting and mixing of streaming-data frames for processing through multiple processing modules
    1.
    发明授权
    Efficient splitting and mixing of streaming-data frames for processing through multiple processing modules 有权
    流式数据帧的高效分割和混合,用于通过多个处理模块进行处理

    公开(公告)号:US07869440B2

    公开(公告)日:2011-01-11

    申请号:US11204683

    申请日:2005-08-16

    IPC分类号: H04L12/28

    CPC分类号: G06F15/8053

    摘要: Streaming data is processed through one or more pipes of connected modules including mixers and/or splitters. The data is carried in composite physically allocated frames having virtual subframes associated with different ones of the splitters, mixers, and other transform modules. Nesting trees and pipe control tables represent the structure of the pipes. A frame allocator is assigned to a particular module in a pipe. Rather than issuing a control transaction to all modules when any one of them completes an operation upon its source data, a control manager requests a module to begin its operation only when all of its input subframes have become available. Frame control tables record when any module has completed an operation, and a pipe control table lists which modules provide data to which other modules.

    摘要翻译: 流数据通过一个或多个连接的模块管道进行处理,包括混合器和/或分离器。 该数据在具有与分离器,混合器和其他变换模块中的不同分配器相关联的虚拟子帧的复合物理分配帧中承载。 嵌套树木和管道控制表表示管道的结构。 帧分配器被分配给管道中的特定模块。 控制管理器当其任何一个完成其源数据上的操作时,不会向所有模块发出控制事务,而是只有当所有模块的所有输入子帧都可用时才要求模块开始操作。 任何模块完成操作时,帧控制表记录,管道控制表列出哪些模块向其他模块提供数据。

    User mode proxy of kernel mode operations in a computer operating system
    2.
    发明授权
    User mode proxy of kernel mode operations in a computer operating system 失效
    用户模式代理计算机操作系统中的内核模式操作

    公开(公告)号:US06212574B1

    公开(公告)日:2001-04-03

    申请号:US08825855

    申请日:1997-04-04

    IPC分类号: G06F954

    CPC分类号: G06F9/544 G06F9/468

    摘要: This invention involves user mode proxy of kernel mode operations in a computer operating system. The broad contours of the invention allow drivers operating in the kernel mode of an operating system to be proxied by a corresponding user mode object. A user mode process wishing to communicate with or manipulate the kernel mode driver may perform such communication or manipulation by communicating with or manipulating the corresponding user mode proxy. The present invention has particular applicability to emerging operating systems which allow kernel mode drivers to be interconnected in order to create a processing stream in the kernel where data is passed from kernel mode driver to kernel mode driver without transitioning to user mode. User mode proxy of such kernel mode drivers allows user mode processes to manipulate such kernel mode drivers using familiar user mode protocols without the necessity of learning new kernel mode protocols.

    摘要翻译: 本发明涉及计算机操作系统中的内核模式操作的用户模式代理。 本发明的宽泛轮廓允许以操作系统的内核模式操作的驱动程序由相应的用户模式对象代理。 希望与内核模式驱动程序通信或操纵的用户模式进程可以通过与对应的用户模式代理进行通信或操纵来执行这种通信或操纵。 本发明特别适用于允许内核模式驱动器互连的新兴操作系统,以便在内核中创建数据从内核模式驱动程序传递到内核模式驱动程序而不转换到用户模式的处理流。 这种内核模式驱动程序的用户模式代理允许用户模式进程使用熟悉的用户模式协议来操纵这种内核模式驱动程序,而无需学习新的内核模式协议。

    Flow of streaming data through multiple processing modules
    3.
    发明授权
    Flow of streaming data through multiple processing modules 有权
    流数据流通过多个处理模块

    公开(公告)号:US08117329B2

    公开(公告)日:2012-02-14

    申请号:US11195092

    申请日:2005-08-02

    IPC分类号: G06F15/16

    CPC分类号: G06F9/54 G06F8/45 G06F9/546

    摘要: Frame-based streaming data flows through a graph of multiple interconnected processing modules. The modules have a set of performance parameters whose values specify the sensitivity of each module to the selection of certain resources of a system. A user specifies overall goals for an actual graph for processing a given type of data for a particular purpose. A flow manager constructs the graph as a sequence of module interconnections required for processing the data, in response to the parameter values of the individual modules in the graph in view of the goals for the overall graph as a whole, and divides it into pipes each having one or more modules and each assigned to a memory manager for handling data frames in the pipe.

    摘要翻译: 基于帧的流数据流经过多个互连处理模块的图形。 这些模块具有一组性能参数,其值指定每个模块对系统某些资源的选择的灵敏度。 用户为特定目的指定用于处理给定类型的数据的实际图形的总体目标。 考虑到整个图形的目标,流程管理器响应于图中各个模块的参数值,将图形构建为处理数据所需的模块互连序列,并将其划分为管道 具有一个或多个模块,并且每个模块被分配给用于处理管道中的数据帧的存储器管理器。

    Associating computer resources to modules in a graph based on a selected overall performance goal for the graph
    4.
    发明授权
    Associating computer resources to modules in a graph based on a selected overall performance goal for the graph 有权
    根据图形的所选总体性能目标,将计算机资源与图中的模块相关联

    公开(公告)号:US07496677B2

    公开(公告)日:2009-02-24

    申请号:US10862282

    申请日:2004-06-07

    IPC分类号: G06F15/16 G06F15/173

    CPC分类号: G06F9/54 G06F8/45 G06F9/546

    摘要: Frame-based streaming data flows through a graph of multiple interconnected processing modules. The modules have a set of performance parameters whose values specify the sensitivity of each module to the selection of certain resources of a system. A user specifies overall goals for an actual graph for processing a given type of data for a particular purpose. A flow manager constructs the graph as a sequence of module interconnections required for processing the data, in response to the parameter values of the individual modules in the graph in view of the goals for the overall graph as a whole, and divides it into pipes each having one or more modules and each assigned to a memory manager for handling data frames in the pipe.

    摘要翻译: 基于帧的流数据流经过多个互连处理模块的图形。 这些模块具有一组性能参数,其值指定每个模块对系统某些资源的选择的灵敏度。 用户为特定目的指定用于处理给定类型的数据的实际图形的总体目标。 考虑到整个图形的目标,流程管理器响应于图中各个模块的参数值,将图形构建为处理数据所需的模块互连序列,并将其划分为管道 具有一个或多个模块,并且每个模块被分配给用于处理管道中的数据帧的存储器管理器。

    Improving the control of streaming data through multiple processing modules
    5.
    发明授权
    Improving the control of streaming data through multiple processing modules 有权
    通过多个处理模块改进对流数据的控制

    公开(公告)号:US06658477B1

    公开(公告)日:2003-12-02

    申请号:US09310597

    申请日:1999-05-12

    IPC分类号: G06F1516

    CPC分类号: G06F8/45 G06F9/546

    摘要: Frame-based streaming data is controlled through a reconfigurable graph of processing modules. A control mechanism employs a set of components that are used and combined among themselves to implement control functions at the control pins of processing modules. The components include a source pin and a sink pin for connecting modules together, a queue for making data frames available to module functions, a data-frame requester, and a splitter for handling graph branches. When modules are assembled into a graph, a control manager implements their control operations as combinations of the above components, then examines all of the components in a graph control structure to determine whether any can be removed as unnecessary to the overall operation of the structure. If so, the remaining components are connected directly to each other. When the graph is played, control packets traverse the simplified structure, carrying with them associated frames of data for processing by the modules.

    摘要翻译: 基于帧的流数据通过处理模块的可重构图进行控制。 控制机构采用一组组件,它们之间使用并组合起来,在处理模块的控制引脚上实现控制功能。 组件包括用于将模块连接在一起的源引脚和引脚引脚,用于使模块功能可用的数据帧的队列,数据帧请求器和用于处理图形分支的分离器。 当模块组装成图形时,控制管理器将其控制操作实现为上述组件的组合,然后检查图形控制结构中的所有组件,以确定是否可以删除任何组件对结构的整体操作是不必要的。 如果是这样,剩下的组件就是直接相连。 当图形播放时,控制数据包遍历简化的结构,并携带相关的数据帧以供模块处理。

    Adaptive control of streaming data in a graph
    6.
    发明授权
    Adaptive control of streaming data in a graph 有权
    图形中流数据的自适应控制

    公开(公告)号:US06594773B1

    公开(公告)日:2003-07-15

    申请号:US09511457

    申请日:2000-02-23

    IPC分类号: G06F104

    摘要: Frame based streaming data is controlled through a reconfigurable graph of processing modules. A client specifies overall goals for the graph. A graph manager constructs the graph as a sequence of interconnected modules for processing the data, in response to the capabilities of modules within the graph and the overall goals, and divides the graph into time domains each having one or more modules, pipes each having one or more modules, and a control mechanism is used that eliminates components unnecessary to the overall operation of the graph and that provides synchronization between time domains using time translation tables or timing correlation tables. The graph manager adaptively controls graphs that have a low latency requirement.

    摘要翻译: 基于帧的流数据通过处理模块的可重构图进行控制。 客户指定图表的总体目标。 图形管理器将图形构建为用于处理数据的互连模块的序列,以响应于图中的模块的能力和总体目标,并且将图划分成具有一个或多个模块的时域,每个管具有一个或多个模块 或更多的模块,并且使用控制机制,其消除了图形的整体操作所不需要的组件,并且使用时间转换表或定时相关表在时域之间提供同步。 图形管理器自适应地控制具有低延迟要求的图形。

    Method and computer program product for reducing inter-buffer data transfers between separate processing components
    7.
    发明授权
    Method and computer program product for reducing inter-buffer data transfers between separate processing components 失效
    方法和计算机程序产品,用于减少单独处理组件之间的缓冲区间数据传输

    公开(公告)号:US06209041B1

    公开(公告)日:2001-03-27

    申请号:US08825957

    申请日:1997-04-04

    IPC分类号: G06F954

    CPC分类号: G06F9/544 G06F9/5016

    摘要: A method and computer program product for overcoming the inefficiencies associated with inter-buffer data transfers between separate processing components such as kernel mode drivers that are chained together. Provided is a standard mechanism for allocating and managing data buffers needed for processing data in a system, wherein multiple drivers are chained together using a standardized connection method in the connection pin instances. Drivers having different buffer requirements and capabilities may be queried and matched for easy data transition between the chained drivers requiring the least number of buffers and, hence the least expensive yet most efficient inter-buffer data transfer. Examples of buffer requirements include previous frame storage for adaptive processing, byte alignment, frame size, outstanding frames allowed, etc. The buffer requirements of an input connection pin instance may be queried by an application initializing the chained drivers. When a buffer is needed, a buffer allocator will be associated with the input pin instance, otherwise a driver will process the data in the previous existing buffer.

    摘要翻译: 一种方法和计算机程序产品,用于克服与单独处理组件(例如链接在一起的内核模式驱动程序)之间的缓冲间间数据传输相关的低效率。 提供了一种用于分配和管理在系统中处理数据所需的数据缓冲器的标准机制,其中使用连接引脚实例中的标准化连接方法将多个驱动器链接在一起。 可以查询具有不同缓冲区要求和功能的驱动程序,以便在需要最少数量的缓冲区的链接驱动程序之间轻松进行数据转换,从而实现最便宜且最有效的缓冲间间数据传输。 缓冲区要求的示例包括用于自适应处理的前一帧存储,字节对齐,帧大小,允许的未完成帧等。输入连接引脚实例的缓冲器要求可以由初始化链接驱动器的应用程序来查询。 当需要缓冲区时,缓冲区分配器将与输入引脚实例相关联,否则驱动程序将处理先前存在的缓冲区中的数据。

    Flow of streaming data through multiple processing modules
    8.
    发明授权
    Flow of streaming data through multiple processing modules 有权
    流数据流通过多个处理模块

    公开(公告)号:US07222182B2

    公开(公告)日:2007-05-22

    申请号:US10862709

    申请日:2004-06-07

    IPC分类号: G06F15/16

    CPC分类号: G06F9/54 G06F8/45 G06F9/546

    摘要: Frame-based streaming data flows through a graph of multiple interconnected processing modules. The modules have a set of performance parameters whose values specify the sensitivity of each module to the selection of certain resources of a system. A user specifies overall goals for an actual graph for processing a given type of data for a particular purpose. A flow manager constructs the graph as a sequence of module interconnections required for processing the data, in response to the parameter values of the individual modules in the graph in view of the goals for the overall graph as a whole, and divides it into pipes each having one or more modules and each assigned to a memory manager for handling data frames in the pipe.

    摘要翻译: 基于帧的流数据流经过多个互连处理模块的图形。 这些模块具有一组性能参数,其值指定每个模块对系统某些资源的选择的灵敏度。 用户为特定目的指定用于处理给定类型的数据的实际图形的总体目标。 考虑到整个图形的目标,流程管理器响应于图中各个模块的参数值,将图形构建为处理数据所需的模块互连序列,并将其划分为管道 具有一个或多个模块,并且每个模块被分配给用于处理管道中的数据帧的存储器管理器。

    Flow of streaming data through multiple processing modules
    9.
    发明授权
    Flow of streaming data through multiple processing modules 失效
    流数据流通过多个处理模块

    公开(公告)号:US07000022B2

    公开(公告)日:2006-02-14

    申请号:US10862278

    申请日:2004-06-07

    IPC分类号: G06F15/16

    CPC分类号: G06F9/54 G06F8/45 G06F9/546

    摘要: Frame-based streaming data flows through a graph of multiple interconnected processing modules. The modules have a set of performance parameters whose values specify the sensitivity of each module to the selection of certain resources of a system. A user specifies overall goals for an actual graph for processing a given type of data for a particular purpose. A flow manager constructs the graph as a sequence of module interconnections required for processing the data, in response to the parameter values of the individual modules in the graph in view of the goals for the overall graph as a whole, and divides it into pipes each having one or more modules and each assigned to a memory manager for handling data frames in the pipe.

    摘要翻译: 基于帧的流数据流经过多个互连处理模块的图形。 这些模块具有一组性能参数,其值指定每个模块对系统某些资源的选择的灵敏度。 用户为特定目的指定用于处理给定类型的数据的实际图形的总体目标。 考虑到整个图形的目标,流程管理器响应于图中各个模块的参数值,将图形构建为处理数据所需的模块互连序列,并将其划分为管道 具有一个或多个模块,并且每个模块被分配给用于处理管道中的数据帧的存储器管理器。

    Flexible interface for communicating between operating systems
    10.
    发明授权
    Flexible interface for communicating between operating systems 失效
    灵活的接口,用于在操作系统之间通信

    公开(公告)号:US06757904B1

    公开(公告)日:2004-06-29

    申请号:US09522569

    申请日:2000-03-10

    IPC分类号: G06F900

    CPC分类号: G06F9/45533 G06F9/54

    摘要: A method and system for communicating between operating systems using an interface that provides an abstraction layer of one of the operating systems. At least one channel is created that allows messages and data packets to be transferred between the operating systems without converting the data into an operating system's format before sending the data to another operating system. The interface provides commands for each of the operating systems to use to communicate with each other and provides the flexibility to create platform specific extensions to the provided commands. The interface also allows a first operating system to demand load devices on a second operating system by extending demand load functionality of the second operating system to the first operating system. A second channel is created that is used to only send data and data related control messages on the channel, eliminating the need to distinguish between general control messages and data specific control message.

    摘要翻译: 一种用于使用提供操作系统之一的抽象层的接口在操作系统之间进行通信的方法和系统。 创建至少一个通道,允许在操作系统之间传输消息和数据包,而不会在将数据发送到另一个操作系统之前将数据转换为操作系统的格式。 该接口为每个操作系统提供用于彼此通信的命令,并提供了灵活性来创建所提供命令的特定于平台的扩展。 该接口还允许第一操作系统通过将第二操作系统的需求负载功能扩展到第一操作系统来要求在第二操作系统上的负载设备。 创建了第二个通道,仅用于在通道上发送数据和数据相关的控制消息,无需区分通用控制消息和数据特定控制消息。