Patents by Inventor Dean Joseph Burdick
Dean Joseph Burdick has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 8935665Abstract: A computer implemented method, apparatus, and computer usable program code for managing a software partition in logical partitioned data processing system. A virtual root process is created for the software partition, wherein the virtual root process functions as a root process for the software partition. The set of child processes is re-parented to the virtual root process in response to termination of a process having a set of child processes.Type: GrantFiled: April 19, 2012Date of Patent: January 13, 2015Assignee: International Business Machines CorporationInventors: Dean Joseph Burdick, David Jones Craft, Eric Philip Fried, Vinit Jain, Lance Warren Russell, Marc Joel Stephenson
-
Patent number: 8918552Abstract: A system and method operable to manage misaligned direct memory access (DMA) data transfers is provided. This method involves determining a delta between N bytes of data to be copied from within a local side buffer (source location) to a remote buffer (destination location). After the delta is determined a tail of the same length is copied to temporary storage. Then the N bytes of data on the local side buffer minus the tail will be shifted to align the N bytes of data to be copied from within the local side buffer to the starting address of the destination location in the remote buffer. The pre-shifted N bytes of data within the local side buffer may be DMA transferred to the remote buffer. The tail transferred to temporary storage may then be copied from temporary storage to the remote buffer.Type: GrantFiled: October 24, 2008Date of Patent: December 23, 2014Assignee: International Business Machines CorporationInventors: Gregory Howard Bellows, Jason N. Dale, Dean Joseph Burdick
-
Patent number: 8868844Abstract: A method for implementing a software-managed cache comprises determining an object identifier (ID) for each of a first set of objects of a plurality of objects resident in a local memory, to generate a first cache table, the first cache table comprising a plurality of entries. Each object comprises an object ID and an effective address. The method receives a request for an object, the request comprising an object ID. The method compares the received object ID with the entries in the first cache table. In the event the received object ID matches an entry in the first cache table, the method returns the matching entry in response to the request. In the event the received object ID does not match an entry in the first cache table, the method calculates an effective address in the local memory of the object associated with the object ID.Type: GrantFiled: June 25, 2008Date of Patent: October 21, 2014Assignee: International Business Machines CorporationInventors: Mark Richard Nutter, Dean Joseph Burdick, Barry L. Minor
-
Patent number: 8418152Abstract: An approach to profiling software programs that uses a small pinned buffer and a large unpinned histogram buffer is presented. When a process that is being profiled receives a time slice, the process' program counter is written to the small pinned buffer by a kernel routine. The small pinned buffer is configured to be large enough to store several program counters. When the small pinned buffer is full, or almost full, an internal profiling signal is sent by the kernel routine. When the process is resumed, any outstanding signals are processed before resuming the process. The profiling signal is handled by reading the program counters from the small pinned buffer, calculating a slot in the histogram buffer that corresponds to each of the program counters, incrementing the value in the corresponding histogram slots, and clearing the small pinned buffer so that it can be reused.Type: GrantFiled: March 15, 2008Date of Patent: April 9, 2013Assignee: International Business Machines CorporationInventors: Dean Joseph Burdick, Suresh Eswara Warrier
-
Publication number: 20120204148Abstract: A computer implemented method, apparatus, and computer usable program code for managing a software partition in logical partitioned data processing system. A virtual root process is created for the software partition, wherein the virtual root process functions as a root process for the software partition. The set of child processes is re-parented to the virtual root process in response to termination of a process having a set of child processes.Type: ApplicationFiled: April 19, 2012Publication date: August 9, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Dean Joseph Burdick, David Jones Craft, Eric Philip Fried, Vinit Jain, Lance Warren Russell, Marc Joel Stephenson
-
Patent number: 8185870Abstract: A computer implemented method, apparatus, and computer usable program code for managing a software partition in logical partitioned data processing system. A virtual root process is created for the software partition, wherein the virtual root process functions as a root process for the software partition. The set of child processes is re-parented to the virtual root process in response to termination of a process having a set of child processes.Type: GrantFiled: November 29, 2006Date of Patent: May 22, 2012Assignee: International Business Machines CorporationInventors: Dean Joseph Burdick, David Jones Craft, Eric Philip Fried, Vinit Jain, Lance Warren Russell, Marc Joel Stephenson
-
Patent number: 7996722Abstract: Embodiments of the invention are associated with an application process that comprises multiple threads, wherein threads of the process are disposes to run on a data processing system, and each thread can have a user mode or a kernel mode machine state, or both, selectively, when it is running. An embodiment directed to a method comprises the steps of allocating a specified memory location for each of the threads, and responsive to a given thread entering a sleep state, selectively saving the kernel mode machine state of the given thread in the specified memory location for the given thread. The saved machine state comprises the state of the given thread immediately prior to the given thread entering the sleep state. In response to detecting a hang condition in the operation of the process, a debugger is attached to the process to access at least one of the saved user mode machine states.Type: GrantFiled: January 2, 2009Date of Patent: August 9, 2011Assignee: International Business Machines CorporationInventors: Dean Joseph Burdick, Basu Vaidyanathan
-
Patent number: 7941788Abstract: A computer implemented method, apparatus, and computer usable program code for processing breakpoints. A breakpoint is detected during execution of a process. A thread that is currently executing is identified as an identified thread. A determination is made as to whether the breakpoint is applicable to the identified thread. In response to the determination that the breakpoint is applicable to the identified thread, the execution of the process is halted. Execution of the process continues without halting execution of the process if the breakpoint is inapplicable to the identified thread.Type: GrantFiled: March 21, 2007Date of Patent: May 10, 2011Assignee: International Business Machines CorporationInventors: Luke Matthew Browning, Dean Joseph Burdick, Basu Vaidyanathan
-
Patent number: 7783865Abstract: A method, system and computer program product for managing a conditional data watchpoint in a set of instructions being traced is shown in accordance with illustrative embodiments. In one particular embodiment, the method comprises initializing a conditional data watchpoint and determining the watchpoint has been encountered. Upon that determination, examining a current instruction context associated with the encountered watchpoint prior to completion of the current instruction execution, further determining a first action responsive to a positive context examination; otherwise, determining a second action.Type: GrantFiled: August 1, 2007Date of Patent: August 24, 2010Assignee: International Business Machines CorporationInventors: Dean Joseph Burdick, Basu Vaidyanathan
-
Publication number: 20100174946Abstract: Embodiments of the invention are associated with an application process that comprises multiple threads, wherein threads of the process are disposes to run on a data processing system, and each thread can have a user mode or a kernel mode machine state, or both, selectively, when it is running. An embodiment directed to a method comprises the steps of allocating a specified memory location for each of the threads, and responsive to a given thread entering a sleep state, selectively saving the kernel mode machine state of the given thread in the specified memory location for the given thread. The saved machine state comprises the state of the given thread immediately prior to the given thread entering the sleep state. In response to detecting a hang condition in the operation of the process, a debugger is attached to the process to access at least one of the saved user mode machine states.Type: ApplicationFiled: January 2, 2009Publication date: July 8, 2010Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Dean Joseph Burdick, Basu Vaidyanathan
-
Publication number: 20100106880Abstract: A system and method operable to manage misaligned direct memory access (DMA) data transfers is provided. This method involves determining a delta between N bytes of data to be copied from within a local side buffer (source location) to a remote buffer (destination location). After the delta is determined a tail of the same length is copied to temporary storage. Then the N bytes of data on the local side buffer minus the tail will be shifted to align the N bytes of data to be copied from within the local side buffer to the starting address of the destination location in the remote buffer. The pre-shifted N bytes of data within the local side buffer may be DMA transferred to the remote buffer.Type: ApplicationFiled: October 24, 2008Publication date: April 29, 2010Inventors: Gregory Howard Bellows, Jason N. Dale, Dean Joseph Burdick
-
Publication number: 20090037703Abstract: A method, system and computer program product for managing a conditional data watchpoint in a set of instructions being traced is shown in accordance with illustrative embodiments. In one particular embodiment, the method comprises initializing a conditional data watchpoint and determining the watchpoint has been encountered. Upon that determination, examining a current instruction context associated with the encountered watchpoint prior to completion of the current instruction execution, further determining a first action responsive to a positive context examination; otherwise, determining a second action.Type: ApplicationFiled: August 1, 2007Publication date: February 5, 2009Inventors: Dean Joseph Burdick, Basu Vaidyanathan
-
Publication number: 20080235668Abstract: A computer implemented method, apparatus, and computer usable program code for processing breakpoints. A breakpoint is detected during execution of a process. A thread that is currently executing is identified as an identified thread. A determination is made as to whether the breakpoint is applicable to the identified thread. In response to the determination that the breakpoint is applicable to the identified thread, the execution of the process is halted. Execution of the process continues without halting execution of the process if the breakpoint is inapplicable to the identified thread.Type: ApplicationFiled: March 21, 2007Publication date: September 25, 2008Inventors: Luke Matthew Browning, Dean Joseph Burdick, Basu Vaidyanathan
-
Publication number: 20080168429Abstract: An approach to profiling software programs that uses a small pinned buffer and a large unpinned histogram buffer is presented. When a process that is being profiled receives a time slice, the process' program counter is written to the small pinned buffer by a kernel routine. The small pinned buffer is configured to be large enough to store several program counters. When the small pinned buffer is full, or almost full, an internal profiling signal is sent by the kernel routine. When the process is resumed, any outstanding signals are processed before resuming the process. The profiling signal is handled by reading the program counters from the small pinned buffer, calculating a slot in the histogram buffer that corresponds to each of the program counters, incrementing the value in the corresponding histogram slots, and clearing the small pinned buffer so that it can be reused.Type: ApplicationFiled: March 15, 2008Publication date: July 10, 2008Inventors: Dean Joseph Burdick, Suresh Eswara Warrier
-
Publication number: 20080127077Abstract: A computer implemented method, apparatus, and computer usable program code for managing a software partition in logical partitioned data processing system. A virtual root process is created for the software partition, wherein the virtual root process functions as a root process for the software partition. The set of child processes is re-parented to the virtual root process in response to termination of a process having a set of child processes.Type: ApplicationFiled: November 29, 2006Publication date: May 29, 2008Inventors: Dean Joseph Burdick, David Jones Craft, Eric Philip Fried, Vinit Jain, Lance Warren Russell, Marc Joel Stephenson
-
Patent number: 7380241Abstract: A method for profiling software programs uses a small pinned buffer and a large unpinned histogram buffer. When a process that is being profiled receives a time slice, the process' program counter is written to the small pinned buffer by a kernel routine. The small pinned buffer is configured to be large enough to store several program counters. When the small pinned buffer is full, or almost full, an internal profiling signal is sent by the kernel routine. When the process is resumed, any outstanding signals (including the profiling signal) are processed before resuming the process. The profiling signal is handled by reading the program counters from the small pinned buffer, calculating a slot in the histogram buffer that corresponds to each of the program counters, incrementing the value in the corresponding histogram slots, and clearing the small pinned buffer so that it can be reused.Type: GrantFiled: December 7, 2004Date of Patent: May 27, 2008Assignee: International Business Machines CorporationInventors: Dean Joseph Burdick, Suresh Eswara Warrier
-
Patent number: 7080379Abstract: A method, system and apparatus for integrating a system task scheduler with a workload manager are provided. The scheduler is used to assign default priorities to threads and to place the threads into run queues and the workload manager is used to implement policies set by a system administrator. One of the policies may be to have different classes of threads get different percentages of a system's CPU time. This policy can be reliably achieved if threads from a plurality of classes are spread as uniformly as possible among the run queues. To do so, the threads are organized in classes. Each class is associated with a priority as per a use-policy. This priority is used to modify the scheduling priority assigned to each thread in the class as well as to determine in which band or range of priority the threads fall. Then periodically, it is determined whether the number of threads in a band in a run queue exceeds the number of threads in the band in another run queue by more than a pre-determined number.Type: GrantFiled: June 20, 2002Date of Patent: July 18, 2006Assignee: International Business Machines CorporationInventors: Larry Bert Brenner, Dean Joseph Burdick
-
Publication number: 20060123217Abstract: A client/server model is provided for automatically monitoring and assigning resources in a logically partitioned environment. Each partition includes a client application that monitors that partition's resource utilization. The client application gathers resource utilization metrics and sends resource status notifications to a server application on a periodic basis. The server application runs on either a partition or an outside workstation. The server application waits for resource status notifications from clients and, based on these notifications, categorizes the partitions into utilization zones. The server then reassigns resources from partitions in a low utilization zone to partitions in high utilization zones.Type: ApplicationFiled: December 7, 2004Publication date: June 8, 2006Applicant: International Business Machines CorporationInventors: Dean Joseph Burdick, Marcos Villarreal
-
Publication number: 20030236815Abstract: A method, system and apparatus for integrating a system task scheduler with a workload manager are provided. The scheduler is used to assign default priorities to threads and to place the threads into run queues and the workload manager is used to implement policies set by a system administrator. One of the policies may be to have different classes of threads get different percentages of a system's CPU time. This policy can be reliably achieved if threads from a plurality of classes are spread as uniformly as possible among the run queues. To do so, the threads are organized in classes. Each class is associated with a priority as per a use-policy. This priority is used to modify the scheduling priority assigned to each thread in the class as well as to determine in which band or range of priority the threads fall. Then periodically, it is determined whether the number of threads in a band in a run queue exceeds the number of threads in the band in another run queue by more than a pre-determined number.Type: ApplicationFiled: June 20, 2002Publication date: December 25, 2003Applicant: International Business Machines CorporationInventors: Larry Bert Brenner, Dean Joseph Burdick