System for incrementally computing the maximum cost extension allowable for subsequent execution of each task using fixed percentage of the associated cost
    1.
    发明授权
    System for incrementally computing the maximum cost extension allowable for subsequent execution of each task using fixed percentage of the associated cost 失效
    用于使用固定百分比的相关成本逐步计算每个任务后续执行所允许的最大成本扩展的系统

    公开(公告)号:US06957431B2

    公开(公告)日:2005-10-18

    申请号:US09782780

    申请日:2001-02-13

    IPC分类号: G06F9/48 G06F9/46

    CPC分类号: G06F9/4887

    摘要: The present invention provides a method, system, and computer program product for improving scheduling of tasks in systems that accumulate execution time. An upper bound is computed on the amount of additional time each schedulable task in the system may continue to execute after exceeding its predetermined cost, without adversely affecting overall operation of the system (that is, ensuring that the continued execution will not cause invocations of subsequent tasks to fail to meet their execution deadlines). By allowing tasks to run longer, the potential that the task will successfully end is increased, thereby yielding a more efficient overall system. In the preferred embodiment, the extensions are iteratively computed as a fixed percentage of the cost of each task until reaching an amount of time where the system is no longer feasible. The extension values resulting from the iteration before the cost-extended system becomes infeasible are then used at run-time when a particular task encounters an overrun condition. This technique is advantageous in systems where execution of non-schedulable entities (such as occurrence of hardware interrupts) occurs during execution of one or more of the scheduled tasks.

    摘要翻译: 本发明提供一种用于改善累积执行时间的系统中任务的调度的方法,系统和计算机程序产品。 根据系统中的每个可调度任务在超过其预定成本之后可以继续执行的附加时间的量来计算上限,而不会不利地影响系统的整体操作(即,确保继续执行不会导致后续的调用 任务不符合执行期限)。 通过允许任务运行时间更长,任务将成功结束的潜力增加,从而产生更有效的整体系统。 在优选实施例中,扩展被迭代地计算为每个任务的成本的固定百分比,直到达到系统不再可行的时间量。 然后,在特定任务遇到超限状态时,在运行时使用在成本扩展系统变为不可行之前由迭代引起的扩展值。 这种技术在执行不可调度实体(例如硬件中断的发生)在执行一个或多个调度任务期间发生的系统中是有利的。

    Technique for encoding a sequence of periodic byte values with vertical correlation
    2.
    发明授权
    Technique for encoding a sequence of periodic byte values with vertical correlation 失效
    用于对垂直相关的周期性字节值序列进行编码的技术

    公开(公告)号:US06459392B1

    公开(公告)日:2002-10-01

    申请号:US09766518

    申请日:2001-01-19

    IPC分类号: H03M730

    摘要: The present invention provides a method, system, and computer program product for encoding (and subsequently decoding) a sequence of periodic byte values that have a vertical correlation (e.g. so that they can be more efficiently stored and/or electronically transmitted for use in a real-time system or resource-constrained system). Redundant values are omitted through use of marker bytes and bits masks which indicate when a set of values is unchanged and which of the set have changed, respectively. In this manner, the resources required for transmitting, processing, and/or storing the values is reduced. In some systems, the reduction may enable shortening the periodic interval length, such that values of a finer granularity can be processed. An example scenario in which the present invention may be used advantageously is for transmitting periodic input data to a robot controller, in order to control movement of the robot.

    摘要翻译: 本发明提供了一种用于对具有垂直相关性的周期性字节值序列进行编码(并且随后解码)的方法,系统和计算机程序产品(例如使得它们可以被更有效地存储和/或电子传输用于 实时系统或资源受限系统)。 通过使用标记字节和位掩码来省略冗余值,该掩码指示何时一组值不变并且该组中的哪一个已经改变。 以这种方式,减少了发送,处理和/或存储值所需的资源。 在一些系统中,减少可以使得能够缩短周期性间隔长度,使得可以处理更细粒度的值。 可以有利地使用本发明的示例性场景是用于向机器人控制器发送周期性输入数据,以便控制机器人的移动。

    Methods, systems, and computer program products for memory pool management using variable size sub-pools
    3.
    发明授权
    Methods, systems, and computer program products for memory pool management using variable size sub-pools 失效
    使用可变大小子池进行内存池管理的方法,系统和计算机程序产品

    公开(公告)号:US06820183B2

    公开(公告)日:2004-11-16

    申请号:US09755241

    申请日:2001-01-05

    IPC分类号: G06F1200

    CPC分类号: G06F12/023

    摘要: Memory pool management may be provided by allocating storage blocks and handles in different parts of a larger memory pool. Two variable size sub-pools may be provided within the memory pool: a storage block sub-pool and a handle sub-pool. Each sub-pool has a variable size and may be allowed to grow until their combined size reaches the size of the memory pool. Both sub-pools may be allowed to grow into the same unused memory space. When a memory request is received from a program, the storage block sub-pool and handle sub-pool may be enlarged to accommodate the request. A storage block and a handle may be allocated to the program from the storage block and handle sub-pools, respectively.

    摘要翻译: 可以通过在更大的存储池的不同部分中分配存储块和句柄来提供内存池管理。 可以在内存池中提供两个可变大小的子池:存储块子池和句柄子池。 每个子池具有可变大小,并且可以被允许增长,直到其组合大小达到内存池的大小。 两个子池可能被允许生长到相同的未使用的存储空间。 当从程序接收到存储器请求时,存储块子池和处理子池可以被放大以适应请求。 存储块和句柄可以分别从存储块和处理子池分配给程序。

    Single-instance class objects across multiple JVM processes in a real-time system
    4.
    发明授权
    Single-instance class objects across multiple JVM processes in a real-time system 有权
    在实时系统中跨多个JVM进程的单实例类对象

    公开(公告)号:US06842759B2

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

    申请号:US10050272

    申请日:2002-01-16

    IPC分类号: G06F9/445 G06F9/46 G06F17/30

    摘要: A method, system, and computer program product for sharing memory resources between several JVM processes. According to the present invention, Java software applications are loaded into a JVM in a manner suited for real-time server applications. When a JVM process is run, memory areas are created. For the initial JVM process, a heap memory area is assigned, and two separate class memory areas are created. One class memory area is reserved for the application class information, while a separate class memory area is created to hold the system class designations. The system class memory area can be shared by any subsequent JVM processes.

    摘要翻译: 用于在多个JVM进程之间共享内存资源的方法,系统和计算机程序产品。 根据本发明,以适合于实时服务器应用的方式将Java软件应用程序加载到JVM中。 运行JVM进程时,将创建内存区域。 对于初始JVM进程,分配堆内存区域,并创建两个独立的类内存区域。 一个类别的内存区域被保留给应用程序类信息,而创建一个单独的类内存区域来保存系统类的名称。 任何后续JVM进程都可以共享系统类内存区域。