choosing which wants to satisfy and how to satisfy them with the available resources
resources need to be allocated as resources are scarce but wants are infinite
the processing of several instructions simultaneously, not always possible as some instructions must be carried out sequentially.