1. A method for executing a software application on a portable memory device by a computing device, the method comprises the steps of: providing said portable memory device with at least a virtual registry file and execution files associated with said software application; and upon plugging said portable memory device to said computing device, mapping system calls to access said execution files and said registry file stored in said portable memory device.