[muhl-tee-task, -tahsk, muhl-tahy-] /ˈmʌl tiˌtæsk, -ˌtɑsk, ˈmʌl taɪ-/
verb (used without object)
Computers. (of a single CPU) to execute two or more jobs concurrently.
(of one person) to perform two or more tasks simultaneously.
(computing) the execution of various diverse tasks simultaneously
the carrying out of two or more tasks at the same time by one person
to work at several different tasks simultaneously
also multi-tasking, 1966, originally in computing, from multi- + tasking (see task). Of humans, by 1998. Related: Multitask (v.). As an adjective, multi-task is recorded from 1954 in a non-computer mechanical context.
The concurrent operation by one central processing unit of two or more processes.
(Or “multi-tasking”, “multiprogramming”, “concurrent processing”, “concurrency”, “process scheduling”) A technique used in an operating system for sharing a single processor between several independent jobs. The first multitasking operating systems were designed in the early 1960s.
Under “cooperative multitasking” the running task decides when to give up the CPU and under “pre-emptive multitasking” (probably more common) a system process called the “scheduler” suspends the currently running task after it has run for a fixed period known as a “time-slice”. In both cases the scheduler is responsible for selecting the next task to run and (re)starting it.
The running task may relinquish control voluntarily even in a pre-emptive system if it is waiting for some external event. In either system a task may be suspended prematurely if a hardware interrupt occurs, especially if a higher priority task was waiting for this event and has therefore become runnable.
The scheduling algorithm used by the scheduler determines which task will run next. Some common examples are round-robin scheduling, priority scheduling, shortest job first and guaranteed scheduling.
Multitasking introduces overheads because the processor spends some time in choosing the next job to run and in saving and restoring tasks’ state, but it reduces the worst-case time from job submission to completion compared with a simple batch system where each job must finish before the next one starts. Multitasking also means that while one task is waiting for some external event, the CPU to do useful work on other tasks.
A multitasking operating system should provide some degree of protection of one task from another to prevent tasks from interacting in unexpected ways such as accidentally modifying the contents of each other’s memory areas.
The jobs in a multitasking system may belong to one or many users. This is distinct from parallel processing where one user runs several tasks on several processors. Time-sharing is almost synonymous but implies that there is more than one user.
Multithreading is a kind of multitasking with low overheads and no protection of tasks from each other, all threads share the same memory.
[muhl-tee-task, -tahsk, muhl-tahy-] /ˈmʌl tiˌtæsk, -ˌtɑsk, ˈmʌl taɪ-/ verb (used without object) 1. Computers. (of a single CPU) to execute two or more jobs concurrently. 2. (of one person) to perform two or more tasks simultaneously. /ˈmʌltɪˌtɑːsk/ verb (intransitive) 1. to work at several different tasks simultaneously
parallel Sharing a single CPU between multiple tasks (or “threads”) in a way designed to minimise the time required to switch threads. This is accomplished by sharing as much as possible of the program execution environment between the different threads so that very little state needs to be saved and restored when changing thread. Multithreading […]
[thred-id] /ˈθrɛd ɪd/ adjective 1. interwoven or ornamented with : silk threaded with gold. multithreading
[teerd] /tɪərd/ adjective 1. being or arranged in or layers (usually used in combination): a two-tiered box of chocolates.