会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 1. 发明授权
    • Method and apparatus for fully restoring a program context following an
interrupt
    • US5987495A
    • 1999-11-16
    • US966374
    • 1997-11-07
    • Donald F. AultKenneth E. PlambeckCasper A. Scalzi
    • Donald F. AultKenneth E. PlambeckCasper A. Scalzi
    • G06F9/46
    • G06F9/463
    • A method and apparatus for fully restoring the context of a user program, including program status word (PSW) and CPU register contents, following an asynchronous interrupt. Upon the occurrence of an asynchronous interrupt event, control is transferred from the normally executing part of the user program to an interrupt handler of the operating system kernel. The kernel interrupt handler saves the contents of the CPU registers and PSW as they existed at the time of the interrupt in a save area associated with the user program before transferring control to a signal catcher routine of the user program. When it has finished handling the interrupt, the signal catcher routine restores the previous state of program execution as it existed before the interrupt by storing the address of the save area in a selected register (which may be a general register/access register pair), restoring the contents of the registers other than the selected register containing the address of the save area, and then restoring the contents of the PSW and selected register by using a new Resume Program (RP) instruction. The RP instruction contains an operand field specifying through the selected register the base address of the save area together with offset fields specifying the offsets of the saved contents of the PSW and selected register relative to the beginning of the save area. Upon decoding an RP instruction, the CPU executing the instruction adds the displacement to the base address contained in the specified register to form the beginning address of the save area, to which it adds the specified offsets to access the saved PSW and selected register contents. The current PSW and selected register contents are then restored with the saved contents to fully restore the previous program context and return control to the instruction being executed at the point of interrupt. To ensure system integrity, only those fields of the PSW are restored that could have otherwise been restored by a program operating in problem state.
    • 2. 发明授权
    • Method and apparatus for performing a semaphore operation
    • 用于执行信号量操作的方法和装置
    • US06237019B1
    • 2001-05-22
    • US09040722
    • 1998-03-18
    • Donald F. AultJohn M. Forsythe
    • Donald F. AultJohn M. Forsythe
    • G06F900
    • G06F9/52G06F9/30087
    • A semaphore for controlling access to a shared resource in an information handling system is implemented using an atomic operation that compares an operand with a comparison value and, if the operand is equal to the comparison value, replaces the compared operand and up to three additional operands with replacement values. The semaphore has a first semaphore field containing a value and a sequence count and a second semaphore field containing a pointer to a queue for the semaphore. The queue has zero or more entries corresponding to waiters for the semaphore, each entry with a next entry having a pointer to that next entry. To implement the semaphore, a previous value of the first semaphore field is saved as a comparison value. A first replacement value containing an incremented sequence count is generated for the first semaphore field as a first operand in accordance with the specified operation. A second replacement value for the second semaphore field and a third replacement value for one of the queue entries are generated as second and third operands if the queue is being modified. The current value of the first semaphore field is thereafter compared with the comparison value including the sequence count to see if the current value matches the comparison value. If it does, then, atomically with the comparing step, the first operand is replaced with the first replacement value and, if the queue is being modified, one or both of the second and third operands are replaced with their corresponding replacement values. If the current value of the first semaphore field does not match the comparison value, the semaphore operation is retried, using a newly saved value of the semaphore field as a comparison value.
    • 使用将操作数与比较值进行比较的原子操作来实现用于控制对信息处理系统中的共享资源的访问的信号量,并且如果操作数等于比较值,则替换比较操作数和最多三个附加操作数 具有替换值。 信号量具有包含值和序列计数的第一信号量字段和包含指向信号量队列的指针的第二信号量字段。 队列具有对应于信号量的等待者的零个或多个条目,每个条目具有下一条目,该条目具有指向该下一条目的指针。 要实现信号量,第一个信号量字段的先前值将保存为比较值。 根据指定的操作,将第一个信号量字段作为第一个操作数生成包含递增序列计数的第一个替换值。 如果队列被修改,则第二信号量字段的第二替换值和其中一个队列条目的第三替换值被生成为第二和第三操作数。 此后,将第一信号量字段的当前值与包括序列计数的比较值进行比较,以查看当前值是否与比较值匹配。 如果是,则原子地与比较步骤相反,第一个操作数被替换为第一个替换值,如果队列被修改,第二个和第三个操作数中的一个或两个都被替换为相应的替换值。 如果第一个信号量字段的当前值与比较值不匹配,则会使用信息量字段的新保存值作为比较值重试信号量操作。
    • 3. 发明授权
    • Cross address space thread control in a multithreaded environment
    • 在多线程环境中交叉地址空间线程控制
    • US5632032A
    • 1997-05-20
    • US192929
    • 1994-02-07
    • Donald F. AultErnest S. BenderJon K. FranksSteven Walkowiak
    • Donald F. AultErnest S. BenderJon K. FranksSteven Walkowiak
    • G06F9/46G06F9/48G06F11/28G06F11/36G06F9/44G06F11/00
    • G06F11/3664
    • A method of controlling the execution of the threads of a first application such as a user application from a second application such as a debugger application running in a different address space. After initializing trace mode for the user application, the debugger waits for an event to occur on one of the threads of the user application. Upon the occurrence of an event on one of the user application threads, an event handler obtains control of the thread execution. The event handler suspends execution of the remaining threads in the application, posts the debugger and then suspends its own execution. When the debugger application has completed its debugging operations, it posts the event handler, which resumes execution of the suspended threads and returns control to the thread on which the event occurred. If a subsequent event occurs on one thread while a previous event on another thread is being processed, the event handler for the subsequent event places it in a deferred event queue for deferred processing. Events consisting of breakpoints are redriven rather than being placed on the deferred queue. The debugger application may hold selected threads in a suspended state following resumption of the remaining threads by setting hold flags associated with those threads.
    • 一种控制诸如用户应用程序的第一应用程序的线程从诸如在不同地址空间中运行的调试器应用程序的第二应用程序执行的方法。 在为用户应用程序初始化跟踪模式之后,调试器等待在用户应用程序的一个线程上发生事件。 在一个用户应用程序线程上发生事件时,事件处理程序获得线程执行的控制。 事件处理程序暂停执行应用程序中的其余线程,发布调试器,然后挂起自己的执行。 当调试器应用程序完成其调试操作时,它会发布事件处理程序,该处理程序将恢复挂起的线程的执行,并将控件返回给发生事件的线程。 如果在一个线程上发生后续事件,而另一个线程上的先前事件正在处理中,则后续事件的事件处理程序会将其放入延迟事件队列中以进行延迟处理。 由断点组成的事件被重新划分,而不是放在延期队列中。 通过设置与这些线程相关联的保持标志,调试器应用程序可以在恢复剩余线程之后将所选线程保持在暂停状态。
    • 4. 发明授权
    • Method, system and computer program product for testing computer programs
    • 方法,系统和计算机程序产品用于测试计算机程序
    • US07546585B2
    • 2009-06-09
    • US11041630
    • 2005-01-24
    • Donald F. Ault
    • Donald F. Ault
    • G06F9/44G06F11/00
    • G06F11/3688
    • A method for testing computer programs including defining one or more selected force stop points for a target computer program. For each of the selected force stop points the target computer program is executed in a force stop mode and executed again in a non-force stop mode. Input to execution in the force stop mode includes the selected force stop point. The target program is terminated as a result of execution in the force stop mode when the selected force stop point has been reached. Executing in the force stop mode results in a residual environment. The target computer program is executed in a non-force stop mode in the residual environment. Output from executing in a non-force stop mode includes test result data. For each of the selected force stop points it is determined if the test result data is consistent with expected test results.
    • 一种用于测试计算机程序的方法,包括为目标计算机程序定义一个或多个所选的力停止点。 对于每个所选择的停止点,目标计算机程序以强制停止模式执行并且以非强制停止模式再次执行。 在强制停止模式下执行的输入包括所选的力停止点。 当达到所选择的力停止点时,作为执行强制停止模式的结果,终止目标程序。 在强制停止模式下执行会导致残留环境。 目标计算机程序在残留环境中以非强制停止模式执行。 在非强制停止模式下执行的输出包括测试结果数据。 对于每个选定的力停止点,确定测试结果数据是否与预期的测试结果一致。
    • 6. 发明授权
    • Method and apparatus for providing for notification of task termination
    • 提供任务终止通知的方法和装置
    • US06907605B1
    • 2005-06-14
    • US09080504
    • 1998-05-18
    • Donald F. AultErnest S. BenderJohn A. Helmbold
    • Donald F. AultErnest S. BenderJohn A. Helmbold
    • G06F9/48G06F9/46G06F11/34G06F15/16
    • G06F9/542G06F9/485G06F2209/543
    • A method and apparatus for ensuring that a process interacting with a failing process is notified of the failure of that process. Each process has a unique process identifier (PID) associated with it. Each process optionally has an affinity list containing one or more entries, each of which contains the identifier of a process that is to be notified when the process fails. A process updates the affinity list of a target process (either itself or another process) by calling an affinity service of the operating system (OS) kernel, specifying the type of operation (add or delete), the identifier of the target process, the identifier of the process that is to notified, and the type of event that is to be generated for the process that is to be notified. When a process fails, a process termination service of the OS kernel examines the affinity list of the failing process and, for each entry in the list, generates an event of the specified type for the process specified as to be notified.
    • 用于确保与失败过程相互作用的过程被通知该过程失败的方法和装置。 每个进程都有一个与之相关联的唯一进程标识符(PID)。 每个进程可选地具有包含一个或多个条目的关联列表,每个条目包含当进程失败时要被通知的进程的标识符。 进程通过调用操作系统(OS)内核的关联服务,指定操作类型(添加或删除),目标进程的标识符,更新目标进程的标识符,更新目标进程的关联列表 要通知的进程的标识符以及要为要通知的进程生成的事件的类型。 当进程失败时,OS内核的进程终止服务检查失败进程的关联列表,并且对于列表中的每个条目,为指定通知的进程生成指定类型的事件。