apparatus and method are provided for transferring state data between computer software programs within the same software process . the apparatus and method does not require a special operating system , but instead only requires the use of a few standard operating system calls , so therefore is highly portable between different operating system machine types . the apparatus and method have complete flexibility to change arguments or return values and change calling order , function names , function code , and the like within the new version of the program .