If the user wanted the computer to run a different program , the user had to wipe out the first program from memory and then load another program into memory . This ensures that a program does not interfere with memory already used by another program . Since programs time share , each program must have independent access to memory .