= An Introduction to Linux ! Apostolos rootApostolos@swarmlab.io // Metadata: :description: Intro and Install :keywords: Linux, apt :data-uri: :toc: right :toc-title: Table of contents :toclevels: 4 :source-highlighter: highlight :no-header-footer: :nofooter: :last-update-label!: :icons: font :sectnums: == process An instance of a running program is called a process. Every time you run a shell command, a program is run and a process is created for it. In any modern operating system there can be more than one instance of a program loaded in memory at the same time. == Linux process management Operating systems need some ways to create processes. * In a very simple system designed for running only a single application (e.g., the controller in a microwave oven), it may be possible to have all the processes that will ever be needed be present when the system comes up. * In general-purpose systems, however, some way is needed to create and terminate processes as needed during operation. [NOTE] ==== *There are four principal events that cause a process to be created:* * System initialization. * Execution of process creation system call by a running process. * A user request to create a new process. * Initiation of a batch job. ==== Process creation in UNIX and Linux are done through *fork()* or *clone()* system calls. There are several steps involved in process creation. * process scheduling, * interrupt handling, * signaling, * process prioritization, * process switching, * process state, * process memory