A computer system consists of components such as: processes, main memory, files, I/O devices and networking which will be described in the following subsections.
1.1 Process management
A process is a program in execution. A process needs system resources such as CPU time, memory, files, and I/O devices. The process gets these resource when it is created or during the execution. When the process terminates, the reusable resources are returned to the operating system. The activities that the operating system is responsible during processes management are (Silberschatz et.al., (2008)):
- Creating and deleting both user and system processes.
- Suspending and resuming processes.
- Providing mechanisms for process synchronization.
- Providing mechanisms for process communication.
- Providing mechanisms for deadlock handling.