A task is a set of program instructions that are loaded in memory, then the address registers is loaded with the initial address to start running the task. It is defined as "an execution path through address space where part of a plan will be accomplished after executing the task'".
Processes are often called tasks in embedded operating systems so "task" gives a meaning of a real-time (also small) application, which differs from a process. A process is an instance of a computer program. The kernel creates a process by allocating some memory (in kernel address space and user address space), loading program code from a disk or another part of memory into the newly allocated space, building the process tables and other operating systems structures, calculating the initial address then executes the process as one or more tasks.
Both "task" and "process" should be distinguished from event, which takes place at a specific time and place, and which can be planned for in a computer program. In a computer graphical user interface (GUI), an event can be as simple as a mouse click or keystroke.
- Today, "tasks" and "processes" refer essentially to the same entity. although they have somewhat different terminological histories, now they are used by most peoples as synonyms.
- Today, the term "process" is generally preferred over "task", except when referring to "multitasking", since the alternative term, "multiprocessing", is too easy to confuse with "multiprocessor" (which is a computer with two or more CPUs), so if "multiprocessing" is used, it is always refers to "multiprocessor".