- lexical analysis: converts characters in the source program into lexical units
- syntax analysis: transforms lexical units into parse trees which represent the syntactic structure of program
- Semantics analysis: generate intermediate code
- code generation: machine code is generated
Load module (executable image): the user and system code together
Linking and loading: the process of collecting system program and linking them to user program