add shared memory IPC implement