Patent ID: 7526534

Claim:
A distributed processing system having a plurality of computing nodes coupled by a network, wherein each of the computing nodes comprises: one or more programmable processors for executing instructions; one or more software processes executing on the one or more programmable processors within an execution environment provided by an operating system kernel for a general-purpose operating system; and a plug-in software module for the general-purpose operating system executing on the one or more programmable processors and within the kernel space of the general-purpose operating system, wherein the plug-in software module of the general-purpose operating system extends the general-purpose operating system to provide a distributed memory operating system having a single process execution space that spans the computing nodes of the distributed processing system, wherein the plug-in software module comprises a process virtualization module for the operating system kernel, wherein the process virtualization module defines a global process identifier (PID) space across the computing nodes, assigns a first unique range of process identifiers within the global PID space to a first computing node, and assigns a second unique range of process identifiers within the global PID surface to a second computing node, wherein the first computing node assigns a PID from the first unique range of process identifiers to a first software process, and the second computing node assigns a PID from the second unique range of process identifiers to a second software process such that any of the one or more software processes can determine which computing node launched the first software process and the second software process, wherein the first computing node launches the first software process on a third computing node, and wherein the second computing node launches the second software process on a fourth computing node.