Multithreading
Multithreading refers to the ability of the operating system to support multiple threads of execution within a single process.
A process is defined as the unit of protection and the unit of resource allocation. It has : a virtual address space, protected access to processors, IPC, files, IO resources.