Multiple parts
● The program code, also called text section
● Current activity including program counter, processor registers
● Stack containing temporary data
Function parameters, return addresses, local variables
● Data section containing global variables
● Heap containing memory dynamically allocated during run time
■ One program can be several processes
● Consider multiple users executing the same program