implemented vcreate and vfreemem