Abstract:
A method, computer program and system for controlling accesses to memory by threads created by a process executing on a multiprocessor computer. A page table structure is allocated for each new thread and copied from the existing threads. The page access is controlled by a present bit and a writable bit. Upon a page fault the access is provided to one thread. The kernel handles the new page entry creation process and set the page present bits to zero which creates page faults. In a second embodiment, two page table structures are created, one for one thread having access to the address space and the other page table structure shared by all the other threads not having access to the address space.
Abstract:
A method for replicating a program and data storage according to one embodiment comprises sending program replication data from a first program to a second program, the second program having an application program that is a replica of an application program of the first program; sending data storage requests from the first program to a first storage system; and replicating data stored in the first storage system in a second storage system. Additional methods, systems, and computer program products are disclosed.
Abstract:
Provided are a method, system, and article of manufacture for monitoring patterns of processes accessing addresses in a storage device to determine access parameters to apply. Processes accessing addresses of data in a storage device are monitored. The processes are granted access to the addresses according to first access parameters that indicate how to arbitrate access by processes to the addresses. A condition occurring in response to a pattern of processes accessing addresses is detected. A determination is made of one of the processes in the pattern and the address accessed by the determined process. Indication is made that second access parameters apply for the determined address. The second access parameters are used to grant access to the determined address for subsequent accesses of the indicated address.
Abstract:
A method, system and program product for recording a program execution comprising recording processor context for each thread of the program, results of system calls by the program, and memory pages accessed by the program during an execution interval in a checkpoint file. Processor context includes register contents and descriptor entries in a segment descriptor table of the operating system. System calls are recorded for each program thread, tracked by an extension to the operating system kernel and include returned call parameter data. Accessed memory pages are recorded for each program process and include data, libraries and code pages. The program address space, processor context, and program threads are reconstructed from checkpoint data for replaying the program execution in a different operating system environment.
Abstract:
Provided are a method, system, and article of manufacture for varying access parameters for processes to access memory addresses in response to detecting a condition related to a pattern of processes access to memory addresses. A monitored condition is detected during application execution. An instrumentation program is invoked to monitor processes accessing data at addresses in a memory device in response to detecting the monitored condition. Information is logged on processes and the addresses they access in the memory device in response to invoking the instrumentation program. The logged information on the processes and the addresses they access is forwarded to an application analysis system in response to detecting a monitored condition during application execution.
Abstract:
A method of restoring processes within a process domain begins with a step of restoring a tree of processes in which at least two of the processes share at least a resource. The method continues with a step of restoring a checkpoint state of each resource used by the processes after a time when a possible need for a restoration state of the resource exists. According to an embodiment, the restoration state comprises information used by the method during the step of restoring the tree of processes. According to another embodiment, the restoration state comprises information used by the method during the step of restoring the checkpoint state of one or more particular resources. The method concludes with a step of resuming execution of each process after restoration of the checkpoint state of the resources used by the process.
Abstract:
Provided are a method, system, and article of manufacture for gathering state information for an application and kernel components called by the application. An implementation of a component to execute in a kernel space is instantiated in a user space. An application invokes a call to the component in the kernel space. The call to the component in the kernel space is invoked and an implementation of the component in the user space is invoked to execute the call in the user space. State information related to the execution of the call to the component in the user space to include in checkpoint information for the application is gathered.
Abstract:
Provided are a method, system, and article of manufacture for providing a process exclusive access to a page including a memory address to which a lock is granted to the process. A request is received for a memory address in a memory device from a requesting process. A lock is granted to the requested memory address to the requesting process. The requesting process is provided exclusive access to a page including the requested memory address for a page access time period. The exclusive access to the page provided to the requesting process is released in response to an expiration of the page access time period.
Abstract:
Provided are a method, system, and article of manufacture for gathering state information for an application and kernel components called by the application. An implementation of a component to execute in a kernel space is instantiated in a user space. An application invokes a call to the component in the kernel space. The call to the component in the kernel space is invoked and an implementation of the component in the user space is invoked to execute the call in the user space. State information related to the execution of the call to the component in the user space to include in checkpoint information for the application is gathered.
Abstract:
Provided are a method, system, and article of manufacture for checkpointing and restoring user space data structures used by an application accessing a data structure maintained by an operating system for an executing application. Information in the accessed data structure is saved with checkpoint information for the application. An operation to restore the application from the checkpoint information is initialized. A restored data structure is generated to include the saved information in the accessed data structure saved in the checkpoint information in response to restoring the application. An initialization routine of the application is modified to bypass initializing the data structure as part of the application initialization routine to restore the application.