Printer Friendly
Dictionary, Encyclopedia and Thesaurus - The Free Dictionary
1,802,037,713 visitors served.
forum mailing list For webmasters
?
New: Language forums
Dictionary/
thesaurus
Medical
dictionary
Legal
dictionary
Financial
dictionary
Acronyms
 
Idioms
Encyclopedia
Wikipedia
encyclopedia
?

multitasking
(redirected from Multi-tasking)

   Also found in: Medical, Acronyms, Wikipedia, Hutchinson 0.02 sec.

multitasking

Mode of computer operation in which the computer works on multiple tasks at the same time. A task is a computer program (or part of a program) that can be run as a separate entity. On a single-processor system, the CPU can perform preemptive (also called time slicing or time sharing) multitasking, where it executes part of one program, then switches to another program, and then returns to the first one. On multiprocessing systems, each processor can handle a separate task.


multitasking

The running of two or more programs in one computer at the same time. The number of programs that can be effectively multitasked depends on the sophistication of the operating system, the speed of the CPU and the speeds and capacities of memory and disk. See preemptive multitasking.

Input/Output Vs. Processing
Programs can be run simultaneously in the computer because of the difference between I/O and processing speed. While one program is waiting for input, instructions in another can be executed. During the milliseconds one program waits for data to be read from a disk, millions of instructions in another program can be executed. In interactive programs, thousands of instructions can be executed between each keystroke on the keyboard.

Channels and Multicore Provide Simultaneity
In mainframes and mainframe-like architectures, multiple I/O channels allow for simultaneous I/O operations to take place. Multiple streams of data, sometimes hundreds, are being read and written at the exact same time.

If a computer has more than one CPU, one program can be running in one CPU and another program in the second CPU, and so on (see multicore).

A Note on Ancient Terminology
In the days of mainframes only, multitasking was called "multiprogramming," and multitasking meant "multithreading." See multithreading.


multitasking [¦məl·tē′task·iŋ]
(computer science)
The simultaneous execution of two or more programs by a single central processing unit.

(computer, parallel)multitasking - (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.


How to thank TFD for its existence? Tell a friend about us, add a link to this page, add the site to iGoogle, or visit webmaster's page for free fun content.
?Page tools
Printer friendly
Cite / link
Email
Feedback
? Mentioned in ? References in periodicals archive
 
A study conducted at the University of California, Los Angeles, has found that multi-tasking while studying affects the brain functions involved in learning, resulting in a diminished understanding of the material learned.
For multi-tasking and multithreaded environments, two cores offer more physical resources, enabling operating systems to prioritize and manage tasks from multiple applications simultaneously and, therefore, maximize performance.
Gamers and creative professionals who require effortless multi-tasking performance will be able to create, edit, and encode graphically intensive files while also running a virus scan in the background without a glitch.
 
Encyclopedia browser? ? Full browser
 
 
Encyclopedia
?

Disclaimer | Privacy policy | Feedback | Copyright © 2009 Farlex, Inc.
All content on this website, including dictionary, thesaurus, literature, geography, and other reference data is for informational purposes only. This information should not be considered complete, up to date, and is not intended to be used in place of a visit, consultation, or advice of a legal, medical, or any other professional. Terms of Use.