The need for system calls is closely tied to the modern operating system model with user mode and kernel mode, which was implemented as a response to the rising number of processes being carried out simultaneously in computers’ main memory (working memory) In this way, each individual process has its own data with special access permissions, and it is only possible for system and application programs to run properly if resources are divided up fairly.
The more privileged kernel mode is the pivotal control system here because – as mentioned already – not only are all services and processes in the system itself run there, but also system-critical actions by application programs that are blocked in user mode. One requirement is the right system call through the respective program, which in most cases is simply for access to processing power (CPU) or memory structures (working memory and hard drive space). If an application needs more computing power or storage space, for example, or an application-external file (open, read, edit, etc.) is required, system calls are essential.